邱宇 燕善俊
摘要:小波變換不僅有時(shí)頻局部化特性,又具有多分辨率的特點(diǎn),文章基于嵌入式零樹小波變換對圖像進(jìn)行壓縮,分析步驟、算法以及不足之處,并給出相應(yīng)改進(jìn)。
關(guān)鍵詞:嵌入式零樹編碼;小波變換;圖像壓縮小波變換是很多學(xué)科發(fā)展的一個(gè)大跨度新領(lǐng)域,源于傅里葉分析,即伸縮與平移變換方法,屬于正交變換層面。它不僅有時(shí)頻局部化特性,又具有多分辨率的特點(diǎn),小波變換對信號實(shí)現(xiàn)不同尺度的詳細(xì)劃分,自動適應(yīng)視頻信號分析的要求,我們采取高頻處針對于時(shí)間細(xì)分針對于頻率粗分,且低頻處針對于頻率細(xì)分針對于時(shí)間粗分這樣一種措施,可顧每一個(gè)細(xì)節(jié),故得美譽(yù)——“數(shù)學(xué)顯微鏡”。小波變換綜合其他理論的優(yōu)點(diǎn),替換傅里葉變換,逐漸成為信號處理的主要方法。
小波變換用于圖像壓縮的基本原理,將原圖像信號分解成若干個(gè)頻域,各頻域內(nèi)根據(jù)人類視覺特性、小波基特性等利用相似性等去除冗余部分,達(dá)到壓縮的效果。針對于各個(gè)頻域的特性可通過不同的壓縮編碼手段,很大程度上地減少數(shù)據(jù)量。
一、嵌入式零樹小波壓縮編碼(Embedded zerotree wavelet coding,EZW)
(一)掃描順序。為了獲得更多零樹根以達(dá)到壓縮編碼的目的,與此同時(shí)還要保證將重要信息先編碼,掃描過程有最低分辨率開始一直到最高分辨率為止(自上而下地掃描)。掃描順序如圖1所示:
(二)量化符號輸出。按照上述規(guī)定的掃描順序,比較小波系數(shù)與當(dāng)前閥值,那么小波系數(shù)必定為正重要元素、負(fù)重要元素、零樹根和孤立零點(diǎn)這4種之一。該4種元素分別用以下符合簡記為:P、N、T和Z,并且都給分配2。
單個(gè)小波系數(shù)量化符號流程圖(如上圖3):
(三)實(shí)驗(yàn)結(jié)果。實(shí)驗(yàn)使用的圖片為Woman(256*256),使用EZW算法進(jìn)行壓縮,將原圖像進(jìn)行2次壓縮并還原圖像進(jìn)行了對比(如圖4),易知,EZW的壓縮比大,并且保真度很好。
圖4采用EZW算法的壓縮效果
EZW編碼因其算法結(jié)構(gòu)的特殊性,對編碼等性能與編碼效果做了優(yōu)化以及提升,但同時(shí)也存在著不足:
①編碼過程沒有利用小波系數(shù)同一子代相鄰元素相關(guān)性的良好特點(diǎn)。 ②在判斷零樹根以及孤立零點(diǎn)上浪費(fèi)過多時(shí)間。 ③沒有注意到不同子代的小波系數(shù)的不同。
二、嵌入式零樹小波壓縮編碼的改進(jìn)
傳統(tǒng)的EZW編碼是一種很有效的壓縮算法,EZW的壓縮比大,并且保真度很好。
EZW編碼因其算法結(jié)構(gòu)的特殊性,很大程度上對編碼等性能做了優(yōu)化以及提升,但同時(shí)該種算法結(jié)構(gòu)也存在著一些問題。
第一,小波變化有小波系數(shù)同一子代相鄰元素相關(guān)性的良好特點(diǎn),嵌入式零樹小波編碼沒有很好的利用這一優(yōu)點(diǎn)并用于算法編碼中。第二,浪費(fèi)很多時(shí)間字判斷零樹根以及孤立零點(diǎn)上,很大地影響了編碼的效率。第三,嵌入式零數(shù)小波變換對小波系數(shù)同等看待,并沒有關(guān)注到不同子代的小波系數(shù)的不同,這樣會減少壓縮效率。
針對這三點(diǎn)我們進(jìn)行改進(jìn)。
(一) 改進(jìn)措施。(1)小波分解過程增加一個(gè)相似性指標(biāo)。(2)最低頻與其它層子帶分開編碼。(3)改進(jìn)零樹結(jié)構(gòu)的快速判斷,對圖像小波的掃描順序是從最低分辨率的高頻子帶開始掃描。(4)增加正負(fù)次重要系數(shù) 。
觀察分解之后的小波系數(shù),我們?nèi)菀装l(fā)現(xiàn),有些重要的系數(shù)其子孫有時(shí)會形成零樹結(jié)構(gòu)。為此,我們增加兩個(gè)符號,正負(fù)次重要系數(shù)以及次的正負(fù)次重要系數(shù)。記零樹樹根為ZTR,孤立零點(diǎn)為IZ。正重要系數(shù)是指子孫后代不能形成零樹的正的重要系數(shù),簡記為POS;而把次正重要系數(shù)是指子孫后代是零樹的正的重要系數(shù),簡記為ZPOS。同樣有,負(fù)重要系數(shù)是指子孫后代不能形成零樹的負(fù)的重要系數(shù),簡記為NEG;次負(fù)重要系數(shù)是子孫后代是零樹的負(fù)的重要系數(shù),簡記為ZNEG。該系數(shù)類型的定義與EZW的相比,該新算法多了兩種符號類型(正、負(fù)次重要系數(shù)),卻在總體上減少編碼系數(shù)的數(shù)量。
低比特圖編碼通常通過變換、量化及數(shù)據(jù)壓縮得以實(shí)現(xiàn)。通常認(rèn)為變換和數(shù)據(jù)壓縮過程是均無損的過程,整個(gè)編碼過程中信息失真應(yīng)該都發(fā)生在量化這一階段。在某種程度上可以說,量化過程的精確與否決定著恢復(fù)后圖像的質(zhì)量。
在量化階段,量化步長q,量化比特?cái)?shù)n=INT(log2(T/q)),量化編碼值k=INT((ABS(x)-T)/q),重要系數(shù)的重構(gòu)絕對值
yk=T+kq+q/2。
(二)改進(jìn)的算法。(a) 圖像的小波分解,針對于第t子代,選取該子代中絕對值最大的小波系數(shù)Xmax,考察該子代中的每個(gè)小波系數(shù)屬于[■X■,■X■),則利用相似性,取該小波系數(shù)近似為■X■,其中i=0,1,2,3,…。(b)第一層小波系數(shù)的無損編碼。(c)采用EZW變換對其余各層的小波系數(shù)實(shí)現(xiàn)圖像壓縮編碼,且取閾值為T=2■。(d)采用如圖2示的掃描順序(Morton式掃描),并且與此同時(shí)按照POS、ZPOS、NEG、ZNEG、ZTR和IZ這樣的順序編碼相應(yīng)的標(biāo)志位。每當(dāng)遇到次重要系數(shù)(ZPOS和ZNEG)或零樹根ZTR的時(shí)候,就結(jié)束對該樹的編碼。(e)對重要系數(shù)(POS和NEG)進(jìn)行細(xì)節(jié)編碼,精確量化時(shí)采用新的量化步長,并把其系數(shù)放在附屬表中(附屬表的實(shí)質(zhì)就是一維數(shù)組)。(f)對于那些已經(jīng)完成標(biāo)志位的,并且也同時(shí)已經(jīng)完成細(xì)節(jié)編碼了的重要系數(shù),在其對應(yīng)于原圖像的位置填入0(由此可見,這個(gè)步驟是為下一次編碼及掃描做好充分準(zhǔn)備)。(g)取閾值T為之前的一半,重復(fù)步驟c,直到滿足壓縮率的需要為止。
結(jié)語:本文基于嵌入式零樹小波變換并對其進(jìn)行改進(jìn),改進(jìn)的過程充分利用同一子帶小波系數(shù)的相似性,提高了利用率,又說明了EZW編碼的壓縮力度高、保真度好,值得被廣泛應(yīng)用。
參考文獻(xiàn):
[1] 曾令發(fā).基于小波變換的圖像壓縮編碼研究[D].武漢:武漢大學(xué),2010.