基于JPEG2000標準的感興趣區(qū)域編碼 作者: 時間:2007-03-09 來源:網(wǎng)絡 加入技術交流群 掃碼加入和技術大咖面對面交流海量資料庫查詢 收藏 摘要:概述了JPEG2000標準PART1的基本系統(tǒng),介紹了其重要特點:感興趣區(qū)域編碼;介紹了一種新的ROI編碼算法——PSBShift算法,它結合了JPEG2000中定義的兩種標準RIO編碼算法的優(yōu)點。 關鍵詞:圖像編碼 JPEG2000 感興趣區(qū)域編碼 JPEG2000是由ISO(國際標準化組織)和IEC(國際電工協(xié)會)聯(lián)合開發(fā)的新興圖像壓縮標準。JPEG2000因為采用了離散小波變換和最新的嵌入式編碼技術,所以具備了傳統(tǒng)的JPEG所無法比擬的優(yōu)勢。它具有以下主要特點: (1)良好的低比特率壓縮性能,其壓縮率比JPEG高約30%左右; (2)支持無損和有損壓縮; (3)按圖像質(zhì)量或分辨率漸進傳輸; (4)對碼流的隨機存取和感興趣區(qū)域(ROI)的編碼; (5)較強的抗誤碼性能。 JPEG2000圖像壓縮標準共有12部分,其中PART1是JPEG2000的核心系統(tǒng),已在2000年12月成為國際標準,其目標是提供一個最小化的無知識產(chǎn)權問題的JPEG2000可用系統(tǒng);PART2是擴展系統(tǒng),與PART1比較,它采用的技術更復雜,性能也更優(yōu)良。圖1、21 JPEG2000 PART1的基本系統(tǒng) 圖1和圖2所示分別是JPEG2000的編碼系統(tǒng)和解碼系統(tǒng)。 由于解碼只是編碼的逆過程,這里只介紹編碼系統(tǒng)。 如果壓縮圖像,首先進行預處理:對圖像的無符號分量進行DC電平位移,多分量圖像還要進行分量變換,再把每個分量都分割成不重疊的矩形區(qū)域,稱為貼片(tiles)。分別對每個貼片進行壓縮,主要分為四步。第一步,計算小波變換,得到小波系數(shù)子帶;標準規(guī)定了整數(shù)和浮點兩種小波變換;有L+1個子帶分辨率層,其中L由編碼器決定。第二步,如果用戶指定了目標碼率,則量化小波系數(shù),碼率越低,小波系數(shù)的量化就越粗糙。第三步,用MQ編碼器對小波系數(shù)進行算術編碼,采用EBCOT算法。該算法的原理將每個子帶分成塊,稱為碼塊(code-blocks),分別編碼。將幾個碼塊的編碼結果打成一個包(packet)是位流的分量。第四步,比特流組織,將包連同許多標記(markers)一起寫進位流。 2 感興趣區(qū)域的編碼 感興趣區(qū)域(ROI)編碼是JPEG2000標準中的一個新特點,即允許感興趣區(qū)域(ROI)比圖像的其他區(qū)域(BG)有更高的質(zhì)量編碼。ROI編碼在某些應用中很重要,其圖像中的某一部分比其他部分顯得重要,例如: (1)客房機/服務器模式:服務器一開始只傳輸一幅圖像的低質(zhì)量或低分辨率的版本,客房機選擇圖像的一塊區(qū)域作為ROI區(qū)域,這樣服務器就只需要傳輸能夠細化(也就是提高空間分辨率或質(zhì)量)ROI區(qū)域的數(shù)據(jù)了。在瀏覽圖像數(shù)據(jù)庫時這是一個很有用的功能,特別是當存儲的圖像的分辨率很高和圖像很大(大于2兆像素)時,客戶機不需要以最高的分辨率下載整幅圖像。圖3(2)人臉圖像:在瀏覽數(shù)碼相冊時,人們通常最感興趣的只是照片中的人臉部分。采用一種自動人臉檢測算法,一幅圖像中人臉部分就能被編碼成ROI區(qū)域,并且能比背景區(qū)域更精確地存儲。這種方法也能用于客房機/服務器模式瀏覽圖像,或者用于數(shù)碼照相機中減少存儲人臉圖像的比特數(shù)。 JPEG2000標準中定義了兩種ROI算法:Maxshift算法和一般位移法。其中,Maxshift算法被JPEG2000的PART1所采納,一般位移法被JPEG2000的PART2所采納。 一般位移法(Generic scaling based method)是選擇一個適當?shù)奈灰埔蜃觭,使位于ROI區(qū)域之外的背景(BG)系數(shù)都右移s位。這樣ROI區(qū)域的最有效的位平面就高于背景系數(shù)的所有位平面,如圖3(b)。在嵌入式編碼/解碼過程中,這些ROI區(qū)域的位平面會先于BG區(qū)域的位平面被編碼、傳輸和解碼(仍有一些ROI區(qū)域的位平面會與BG區(qū)域的位平面一起編碼、傳輸和解碼,這取決于位移因子s)。如果碼流被截斷或者編碼/解碼過程沒有全部完成,ROI區(qū)域的重建圖像質(zhì)量會優(yōu)于BG區(qū)域。在ROI區(qū)域的重建質(zhì)量得到保證的前提下,ROI技術可以節(jié)約帶寬,減少計算開銷。 由于可以自由地選擇位移因子,一般位移法能夠很好地控制ROI區(qū)域與BG區(qū)域之間的質(zhì)量的相對重要性。但是,一般位移法必須對ROI的形狀信息進行編碼,現(xiàn)有標準限制了ROI的形狀只能是矩形或橢圓形。另一方面,在一般位移法中,不同的小波子帶必須使用同一個ROI區(qū)域的定位,這在某些應用中是不希望出現(xiàn)的。 在Maxshift算法(Maxshift method)中,位移因子s不是預先選定的。在編碼端,所有經(jīng)量化的小波系數(shù)被逐一掃描。位移因子s的選擇必須使ROI區(qū)域的最小系數(shù)大于BG區(qū)域的最大系數(shù),如圖3(c)。在解碼端,接收到的比s小的系數(shù)都是BG區(qū)域的系數(shù),反之則是ROI區(qū)域的系數(shù)。 當一般位移法中的位移因子增大到BG位平面與ROI平面沒有重疊的時候,axshift算法可以看作是一般位移法的特例,也就是位移因子必須滿足: s≥max(Mb) Mb通常是子帶b中的幅度位平面的最大值,max(Mb)就是所有系數(shù)的最大幅度。在Maxshift算法中ROI的形狀信息隱含在解碼器中,這樣任意形狀的ROI它都能支持。而且,它能靈活地處理不同的小波子帶。Maxshift算法最主要的局限在于,它不能通過調(diào)整位移因子而靈活地控制ROI區(qū)域與BG區(qū)域之間的質(zhì)量的相對重要性。圖43 一種新的ROI編碼算法——PSBShitf算法 考慮到這兩種標準ROI編碼方法的各自局限性,本文介紹了一種新的、靈活地位移方法,可以稱為PSBShift算法(Partial Significant Bitplanes Shift),它結合了兩種標準算法的優(yōu)點,能夠有效地壓縮多個優(yōu)先級別不同的感興趣區(qū)域。 此方法主要基于這樣一個事實,即在高比特率下,ROI區(qū)域和BG區(qū)域都能以高質(zhì)量進行編碼,并且兩者的區(qū)別并不太值得注意;而在低比特率下,圖像中的ROI區(qū)域希望有比BG區(qū)域更高的編碼質(zhì)量。因此只要在ROI區(qū)域的最高有效位平面中分離出部分位平面,就能調(diào)整ROI區(qū)域與BG區(qū)域之間的質(zhì)量的相對重要性了。也就是說只需要位移ROI系數(shù)最高有效位平面中的一部分,而不用像標準中的方法那樣位移所有的位平面。圖3(d)中說明了PSBShift算法(這里s=6)。ROI系數(shù)的所有位平面被分成了兩部分:最高有效位平面(themost significant bitplanes)和剩余有效位平面(the residual significant bitplanes)。最高有效位平面的數(shù)量與位移因子的大小相等,剩余有效位平面的數(shù)量Nlsbs表示為: 在編碼端,ROI系數(shù)的最高有效位平面不位移,而ROI系數(shù)的剩余有效平面與BG系數(shù)一起右移(即向LSB方向移)。在解碼端,可以像Maxshift算法一樣識別ROI系數(shù)。低于第s個位平面的所有位平面提升s個位平面,再結合高于第s個位平面的所有位平面。這就是與Maxshift算法不同的地方,在Maxshift算法中沒有“結合”這一步操作。既然BG系數(shù)的高于第s個位平面的所有位都是0,那么這種修改過的解碼器也可以用于處理由Maxshift算法生成的標準代碼流。 (1)PSBShift ROI編碼 PSBShift 算法能夠編碼使一幅圖像中的ROI區(qū)域比BG區(qū)域的質(zhì)量高,或者使ROI區(qū)域與BG區(qū)域的質(zhì)量一樣。如圖3(d)所示,如果在編碼/解碼第2s個最高有效位平面之前,編碼位流被截斷或者編碼/解碼過程被終止,ROI區(qū)域?qū)斜菳G區(qū)域更高的質(zhì)量。在第2s個最高有效位平面被編碼/解碼后(ROI區(qū)域的位平面和BG區(qū)域的位平面重疊時),ROI區(qū)域和BG區(qū)域?qū)⒁韵嗤馁|(zhì)量編碼。位移因子s控制著ROI區(qū)域和BG區(qū)域的相對質(zhì)量。 例如,對一幅“Barbara”圖像(720%26;#215;576,8bpp)應用不同的位移因子(s=0、5、9、13),采用可逆的編碼模式編碼,在臉部定義一個矩形的ROI區(qū)域。如圖4所示,隨著比特率的增加,ROI區(qū)域和BG區(qū)域的失真減少(distortion reduction)。當s很小時,例如s=5,ROI區(qū)域和BG區(qū)域的質(zhì)量沒有太大的不同(圖4(b))。隨著位移因子的增加,例如s=9(圖4(c)),在比特率的較大變換范圍內(nèi),ROI區(qū)域都有比BG區(qū)域更高的編碼質(zhì)量。當所有位平面都被解碼,就達到了無損解碼。當s≥馬max(Mb)(這里max(Mb)=12),結果與Maxshift算法一樣,如圖4(d)中s=13。因此PSBShitf算法在某種程度上能概括Maxshift算法,而不同于一般位移位。與一般移法相比,一般位移法只支持矩形和橢圓的ROI形狀,PSBShift算法可以編碼任意形狀的ROI而不需要對形狀信息進行編碼。PSBShift算法能夠像Maxshift算法一樣,在不同的小波子帶定義不同的ROI。與Maxshift算法不同的是,Maxshift 算法也能通過使用不同的位移因子靈活地調(diào)整ROI區(qū)域與BG區(qū)域之間的質(zhì)量的相對重要性,這種靈活性夠針對不同的應用改善ROI區(qū)域的編碼質(zhì)量。例如,圖5中所示的“Barbara”圖像,它是可逆編碼(在所有子帶中都有ROI/BG的區(qū)域)的,并且以0.5bpp的比特率分別用Maxshift算法(s=12)和Maxshift 算法(s=10)解碼??梢钥吹皆赗OI區(qū)域兩種方法沒有視覺上的區(qū)別,而在BG區(qū)域Maxshift算法比Maxshift算法提供了更好的質(zhì)量。如果ROI區(qū)域需要比BG區(qū)域更高的質(zhì)量,可以使用更大的位移因子,結構將會更接近Maxshift算法,因此,Maxshift算法可以針對不同的應用,設計出有效和靈活的ROI編碼。 (2)多個ROI區(qū)域的編碼 多個ROI區(qū)域的編碼需要根據(jù)多個ROI區(qū)域在一幅圖像中不同的優(yōu)先級采用不同的質(zhì)量對它們進行編碼。一般位移法也支持多個ROI區(qū)域的編碼,但是需要對ROI形狀的信息編碼并且對形狀有限制。Maxshift算法也可以支持多個ROI區(qū)域的編碼,不過它要通過大幅度提高小波系數(shù)的動態(tài)范圍來實現(xiàn),這樣將會明顯地降低壓縮效率。Maxshift算法能夠有效地支持多個ROI區(qū)域的編碼,它通過對不同的ROI區(qū)域采用位移不同數(shù)量的最高有效位平面來實現(xiàn)。例如,“Bike”圖像(2048%26;#215;2560,8bpp)中定義了三個ROI區(qū)域,如圖6所示的ROI-1、ROI-2和ROI-3。選擇最高有效位平面的提升數(shù)量s1>s2>s3,例如s1=10,s2=8,s3=6,存貯在碼流里的位移因子是s=max(s1,s2,s3)。 JPEG2000是一個非常有用的新一代靜止圖像的壓縮標準。本文主要介紹了JPEG2000標準的基本系統(tǒng)和它的一個重要特點:感興趣區(qū)域編碼。在分析了兩種標準算法(Maxshift算法和一般位移法)的優(yōu)缺點后,介紹了一種新的ROI編碼算法——Maxshift算法。這種算法有四個基本優(yōu)點:(1)它支持任意形狀的ROI編碼,而不需要編碼形狀的信息;(2)它允許不同的小波子帶有不同的ROI定義;(3)采用合適的位移因子可以控制ROI區(qū)域與BG區(qū)域的之間的相對重要性;(4)在低比特率下,能夠?qū)σ环鶊D像中的具有不同優(yōu)先級的多個ROI區(qū)域進行有效的編碼。
評論