高 芬,杜 紅,余厚全
(油氣資源與勘探技術(shù)教育部重點(diǎn)實(shí)驗(yàn)室(長江大學(xué)),湖北 荊州 434023)
伍 鵬
(長江大學(xué)電子信息學(xué)院油氣信息處理與識(shí)別研究所,湖北 荊州 434023)
基于整數(shù)提升小波變換的改進(jìn)EZW編碼算法
高 芬,杜 紅,余厚全
(油氣資源與勘探技術(shù)教育部重點(diǎn)實(shí)驗(yàn)室(長江大學(xué)),湖北 荊州 434023)
伍 鵬
(長江大學(xué)電子信息學(xué)院油氣信息處理與識(shí)別研究所,湖北 荊州 434023)
為了提高圖像有損壓縮的性能,在分析EZW算法的基礎(chǔ)上,提出了一種改進(jìn)的零樹小波編碼算法。該算法采用整數(shù)提升小波變換對(duì)圖像進(jìn)行分解,將分解后的圖像作改進(jìn)的EZW編碼,即將低頻子帶和高頻子帶分開進(jìn)行編碼,主表采用不同的掃描方式,同時(shí)取消副表中的極間掃描。試驗(yàn)結(jié)果表明,改進(jìn)算法提高了圖像壓縮質(zhì)量和峰值信噪比,同時(shí)減少了編解碼時(shí)間。
圖像壓縮;EZW算法;整數(shù)提升;小波變換;峰值信噪比
小波變換[1]是一種關(guān)于信號(hào)的時(shí)間尺度分析方法,其突出特點(diǎn)是可以任意調(diào)節(jié)分析的尺度,從而對(duì)信號(hào)作精細(xì)分析和處理。該方法已在各個(gè)領(lǐng)域得到廣泛應(yīng)用,特別是在圖像壓縮技術(shù)的應(yīng)用中取得了顯著的效果[2]。圖像經(jīng)過小波變換后的變換系數(shù)采用不同的量化和編碼,從而得到不同的壓縮方案,其中最典型的方案是EZW算法[3],該算法是一種簡單有效的壓縮算法,其基本思想是對(duì)經(jīng)過小波變換后的小波系數(shù)進(jìn)行量化編碼,并且可以隨時(shí)停止編解碼。但該算法不能充分利用高頻信息,也沒有充分利用小波變換后系數(shù)的特點(diǎn)。為此,筆者提出了一種基于整數(shù)提升小波變換的改進(jìn)EZW編碼算法(IEZW),在一定程度上提高了圖像的壓縮質(zhì)量和峰值信噪比,同時(shí)減少了編解碼時(shí)間。
在傳統(tǒng)小波變換中,由于濾波器具有浮點(diǎn)數(shù)系數(shù),即使輸入的數(shù)據(jù)由整數(shù)組成,經(jīng)小波變換后其產(chǎn)生的系數(shù)也是浮點(diǎn)型。浮點(diǎn)型運(yùn)算對(duì)計(jì)算機(jī)內(nèi)存的需求量較大,運(yùn)算復(fù)雜,受計(jì)算機(jī)有限字長的影響,往往不能精確地重構(gòu)信號(hào)。為解決上述問題,Swelden等[4]提出一種新的小波構(gòu)造方法,即整數(shù)提升算法,其基本思想是將傳統(tǒng)小波變換分解為提升形式來實(shí)現(xiàn),并對(duì)每一個(gè)提升產(chǎn)生的浮點(diǎn)數(shù)進(jìn)行取整,構(gòu)造出可逆的整數(shù)小波變換。
圖1 提升小波變換的實(shí)現(xiàn)過程
小波變換的提升過程主要包括分裂、預(yù)測和更新3個(gè)步驟組(見圖1),具體實(shí)現(xiàn)過程如下。
1)分裂 將原始信號(hào)x[n]根據(jù)其序數(shù)的奇偶性分解成2個(gè)子集,偶數(shù)集合定義為p[n],奇數(shù)集合定義為q[n],即p[n]=x[2n],q[n]=x[2n+1],對(duì)應(yīng)于該種分裂所產(chǎn)生的小波稱為惰性小波。
2)預(yù)測 保持偶數(shù)集合p[n]不變,采用預(yù)測算子Z(·),用p[n]來預(yù)測奇數(shù)集合q[n],即:
c[n]=q[n]-Z(p[n])
(1)
3)更新 采用更新算子W(·),用c[n]來修正x[n]以保持原始信號(hào)的某種特性,即:
d[n]=p[n]+W(c[n])
(2)
從式(1)和式(2)可知,輸出結(jié)果的小數(shù)部分與式(1)中的Z(p[n])和式(2)中的W(c[n])有關(guān),因而
對(duì)其取整即可得到整數(shù)變換的結(jié)果。具體公式如下:
(3)
(4)
2.1取消級(jí)間排序
級(jí)間排序是指副表中的重要系數(shù)被細(xì)化編碼輸出后, 在閾值減半進(jìn)行下一次掃描前對(duì)副表中細(xì)化后的重要系數(shù)進(jìn)行排序,然后對(duì)當(dāng)前掃描得到的重要系數(shù)及以前掃描得到的重要系數(shù)按照先后順序進(jìn)行細(xì)化編碼輸出。級(jí)間排序的目的是為了編解碼的同步, 因?yàn)榻獯a端只能根據(jù)主表的節(jié)點(diǎn)符號(hào)和副表的細(xì)化比特來重構(gòu)系數(shù), 并確定重構(gòu)系數(shù)所在的空間位置。雖然級(jí)間排序可改善性能,但其壓縮效率有限,且大大增加了運(yùn)算量。所以,為了得到更快的執(zhí)行速度,應(yīng)取消級(jí)間排序。
2.2分開處理低、高頻子帶
對(duì)于很多信號(hào),低頻成份主要包含信號(hào)的特征,而高頻成分則包含了信號(hào)的細(xì)節(jié)和差別。圖像經(jīng)過小波變換后,能量主要集中在低頻子帶圖像中,其反映了圖像信號(hào)的整體特征,需精確保留其信息,因而可對(duì)其進(jìn)行細(xì)化編碼以保留圖像信號(hào)的整體特征,從而提高圖像質(zhì)量。EZW算法是把分解后的所有子帶統(tǒng)一處理,這樣如果要使重構(gòu)的圖像失真減小,就必須增加量化的次數(shù),這意味著增加了運(yùn)算量。為改變該狀況,可分開處理低頻子帶和高頻子帶。即采用DPCM+Huffman方法,對(duì)低頻子帶進(jìn)行無損壓縮[5]。由于在高頻子帶內(nèi)主要集中了圖像的邊緣及紋理,小波系數(shù)較大像素所在位置可能表示為圖像的邊緣或紋理信息,因而對(duì)高頻子帶采用EZW+Huffman雙重編碼算法[6]。對(duì)一幅小波分解圖像來說, 分解后的各個(gè)高頻子帶體現(xiàn)為圖像邊緣、紋理等細(xì)節(jié)信息,而且各個(gè)子帶所表示的邊緣、紋理信息的方向是不同的,其中高低頻(HLi) 反映了水平方向的邊緣、紋理信息,低高頻(LHi) 反映了垂直方向的邊緣、紋理信息,高高頻(HHi) 反映了對(duì)角方向的邊緣、紋理信息。因此,可對(duì)高頻子帶采用改進(jìn)的EZW算法掃描次序,即水平分量進(jìn)行水平掃描、垂直分量進(jìn)行垂直掃描、對(duì)角分量進(jìn)行Z字形掃描。分開處理高低頻子帶圖如圖2所示。
圖2 分開處理高低頻子帶圖
改進(jìn)算法具體步驟如下:①選擇適當(dāng)?shù)男〔ɑ瑢?duì)圖像進(jìn)行整數(shù)小波分解,分解子帶為LLm、HLm、LHm、HHm(m的取值為1~3)。②對(duì)子帶LLm采用DPCM+Huffman編碼,使其近似無損編碼。③對(duì)其他高頻子帶采用取消極間掃描,并且對(duì)其中的水平分量采用水平掃描,垂直分量采用垂直掃描、對(duì)角分量采用Z字形掃描。④進(jìn)行逆變換得到重構(gòu)的圖像。
測試圖像為256×256×8bit的房屋圖像和人頭圖像,分別采用9/7、 5/3和Haar3組小波基進(jìn)行小波分解,再進(jìn)行改進(jìn)的EZW編碼。使用常用的峰值信噪比 (PSNR)客觀評(píng)價(jià)圖像壓縮質(zhì)量[7],其公式如下:
(5)
式中,xpq和zpq分別是原始圖像和重構(gòu)圖像的像素值;(m,n)表示圖像的大小。
以5/3小波為例,用改進(jìn)算法和傳統(tǒng)算法分別對(duì)房屋圖像和人頭圖像計(jì)算PSNR值,試驗(yàn)結(jié)果分別如圖3和圖4所示。試驗(yàn)結(jié)果表明,不同編碼次數(shù)下改進(jìn)算法比傳統(tǒng)算法的PSNR值更高。
圖3 房屋圖像在不同編碼次數(shù)下IEZW與EZW的PSNR值比較 圖4 人頭圖像在不同編碼次數(shù)下IEZW 與EZW的PSNR值比較
表1 不同編碼次數(shù)下的比例因子k
表2 不同解碼次數(shù)下的比例因子k
以Haar小波為例,用改進(jìn)算法和原始算法分別對(duì)房屋圖像和人頭圖像進(jìn)行壓縮和重構(gòu)(見圖5和圖6)。試驗(yàn)結(jié)果表明,在相同壓縮比的條件下,改進(jìn)算法比傳統(tǒng)算法具有更好的重構(gòu)圖像質(zhì)量。
圖5 重構(gòu)房屋圖像與原始房屋圖像對(duì)比 圖6 重構(gòu)人頭圖像與原始人頭圖像對(duì)比
[1]Sidney B, Ramesh A. Gopinath H.小波與小波變換導(dǎo)論[M]. 程正興 譯. 北京:機(jī)械工業(yè)出版社,2008.
[2] Kenneth R C.數(shù)字圖像處理[M]. 朱志剛譯.北京:電子工業(yè)出版社,2002.
[3]Ouafi A, Baarir Z, Zitouni A. A modified Embedded zerotree wavelet (MEZW) algorithm for image compression[J]. Math imaging vis,2008,30:298-307.
[4] Fan Jing-chen.SPIHT algorithm Based on Fast Lifting Wavelet Transform in Image Compression[J].Computational intelligence and security,2005,10:838-844.
[5] Francisco A. Antonio J and Sanchez J L.Colour image compression based on the embedded zerotree wavelet [J].Computer science,2009,40:612-615.
[6] 高世偉,郭雷,杜亞琴,等. 提升小波變換及其在圖像處理中的應(yīng)用[J]. 計(jì)算機(jī)工程與設(shè)計(jì),2007, 28(9):2066-2069.
[7] 張素文,王麗麗,苗丹. 一種改進(jìn)的嵌入式零樹小波圖像編碼算法[J]. 紅外技術(shù), 2008,9(9): 541-545.
[編輯] 李啟棟
10.3969/j.issn.1673-1409.2011.03.034
TP751
1673-1409(2011)03-0101-03