/***********************Wavelet Transform出現背景***********************/
html
圖像編碼在保證必定重構質量的前提下,經過取出圖像中的各類冗餘,以儘可能少的比特數來表示圖像。
算法
圖像編碼長期以來主要利用離散餘弦變換(DCT)做爲變換編碼的主要技術,然而存在以下一些問題:(1)利用DCT變換存在明顯的方塊效應,(2)不適用於對非平穩信號,(3)要進一步提升壓縮性能很困難。
api
小波變換是在短時傅里葉變換的基礎上發展起來的一種新型變換方法,他是一種時—頻分析法,具備多分辨率分析 (MultiresolutionAnalysis)的特色,並且在時、頻域都具備表徵信號局部特徵的能力,是一種窗口大小不變、形狀可變、時間窗和頻率 窗均可以改變的時頻局部化分析方法。小波變換因爲具備很好的時—頻特性並且能夠匹配人類視覺系統的特性,於是獲得圖像壓縮編碼領域的極大關注。網絡
LL
|
HL
|
LH
|
HH
|
LL3
|
HL3
|
HL2
|
HL1
|
LH3
|
HH3
|
||
LH2
|
HH2
|
||
LH1
|
HH1
|
小波分析在圖像領域的應用應歸功於Mallat。1987年,Mallat巧妙地將計算機視覺領域內的多尺度分析思想引入到小波分析中小波函數的構造,從 而統一了在此以前的各類小波的構造方法。Mallat研究了小波變換的離散形式,並將相應的算法應用於圖像的分解與重建,爲隨後的小波圖像壓縮奠基了基 礎。進入90年代,利用小波進行圖像壓縮的研究獲得了空前的關注。這一時期正是互聯網蓬勃興起的時候,所以如何適應網絡的特色進行圖像編碼獲得了重視。 1993年,Shapiro首先將零樹的概念引入到小波圖像壓縮中,這種稱爲EZW的方法能夠對圖像進行漸進性編碼,具備很高的壓縮性能,很是適合於網絡 圖像的傳輸與瀏覽。對於圖像來講,若是須要進行快速或實時傳輸以及大量存儲,就須要對圖像數據進行壓縮。在一樣的通訊容量下,若是圖像數據壓縮後再傳輸, 就能夠傳輸更多的圖像信息。例如,用普通的電話線傳輸圖像信息。圖像壓縮研究的就是尋找高壓縮比的方法且壓縮後的圖像要有合適的信噪比,在壓縮傳輸後還要 恢復原信號,而且在壓縮、傳輸、恢復的過程當中,還要求圖像的失真度小,這就是圖像壓縮的研究問題。圖像數據每每存在各類信息的冗餘、如空間冗餘、信息熵冗 餘、視覺冗餘和結構冗餘等等。所謂壓縮就是去掉各類冗餘,保留對咱們有用的信息。圖像壓縮的過程常稱爲編碼。相對的,圖像的恢復就是解碼。圖像壓縮的方法 一般可分爲有失真編碼和無失真編碼兩大類:無失真編碼方法如改進的霍夫曼編碼。有失真編碼方法的還原圖像較之原始圖像存在着一些偏差,但視覺效果是能夠接 受的。常見的方法有預測編碼、變換編碼、量化編碼、信息熵編碼、分頻帶編碼和結構編碼等。在小波分析中也有兩個重要的數學實體:"積分小波變換"和"小波 級數"。積分小波變換是基小波的某個函數的反射膨脹卷積,而小波級數是稱爲小波基的一個函數,用兩種很簡單的運算"二進制膨脹"與"整數平移"表示。經過 這種膨脹和平移運算能夠對信號進行多尺度的細緻表示。經過這種膨脹和平移運算能夠對信號進行多尺度的細緻的動態分析,從而可以解決Fourier變換不能 解決的許多困難問題。利用小波變換能夠一次變換整幅圖像,不只能夠達到很高的壓縮比,並且會出現JPEG重建圖像中的"方塊"效應,但編碼器複雜,有潛像 問題。app
因爲小波及小波包技術能夠將信號或圖像分層次按小波基展開,因此能夠根據圖像信號的性質以及事先給定的圖像處理要求肯定到底要展開到哪一級爲止,從而不只 能有效地控制計算量,知足實時處理的須要,並且能夠方便地實現一般由子頻帶、層次編碼技術實現的累進傳輸編碼(即採起逐步浮現的方式傳送多媒體圖像)。這 樣一種工做方式在多媒體數據瀏覽、醫學圖片遠程診斷時是很是必要的。另外,利用小波變換具備放大、縮小和平移的數學顯微鏡的功能,能夠方便地產生各類分辨 率的圖像,從而適應於不一樣分辨率的圖像I/O設備和不一樣傳輸速率的通訊系統。相比之下,利用KL變換進行壓縮編碼,只能對整幅圖像進行;而利用小波變換則 可以比較精確地進行圖像拼接,所以對較大的圖像能夠進行分塊處理,而後再進行拼接。顯然,這種處理方式爲圖像的並行處理提供了理論依據。
實 際上,因爲小波變換分析具備以上許多優勢,因此在最近頒佈的運動圖像壓縮標準MPEG4中的視覺紋理模式就支持視覺紋理和靜態圖像編碼。這種模式基於零高 度樹小波算法,在很是寬的比特率範圍內具備很高的編碼效率。除了具備很高的壓縮效率以外,它還提供了空間和質量的可縮放性,以及對任意形狀目標的編碼。其 空間可縮放性高達11級,質量的可縮放性具備連續性。小波公式以累進傳輸和時間上擴充靜態圖像分辨率金字塔的形式提供比特率可縮放的編碼。編碼的位流也可 以用於圖像分辨率層次抽樣。這種技術提供了分辨率的可縮放性,以便處理在交互應用場合普遍的觀察條件,以及把2D圖像映射到3D虛擬空間。函數
小波變換以小波函數做爲函數展開的基底,在時域和頻域同時具備良好的局部特性,能夠在多尺度上對信號進行多分辨率的分析。在過去的不少年裏,小波變換在一 般的信號處理和圖像壓縮研究中被普遍地接受。在許多應用中,基於小波的方法(也叫子頻帶編碼)要賽過其餘編碼方法(好比基於DCT的)。由於不必對圖像 分塊而且基函數可變長度,小波編碼方法在高壓縮率時沒有方塊效應。基於小波的編碼對傳輸和解碼錯誤更具備魯棒性,有利圖像的逐步傳輸 (prograssivetransmission)。此外,它們更符合HVS的特色。由於它們自己固有的多尺度性質,小波編碼方法很適合那些重視可伸縮 性(scalability)和可容忍退化(tolerabledegradation)的應用。基於小波變換的圖像壓縮有着很是優越的特色。即壓縮比 高、壓縮速度快,壓縮後能保持信號與圖像的特徵基本不變,且在傳遞過程當中能夠抗干擾等等。基於小波變換的圖像壓縮是在二維離散小波變換的基礎上發展起來的 一種塔式快速算法。他的分解以及合成過程都是迭代運算,基本原理以下:對原始圖像在水平方向和垂直方向與2個濾波器(低通、高通)相卷積,能夠獲得4塊面 積爲原圖像1/4的子圖,分別爲水平方向低頻和垂直方向低頻(HH)、水平方向低頻和垂直方向高頻(HG)、水平方向高頻和垂直方向低頻(GH)、水平方 向高頻和垂直方向高頻(GG)。HG,GH,GG稱爲細節子圖,HH稱爲原圖像的低分辨率子圖,以上只是圖像的一級小波分解,對HH再作一樣的運算就能夠 獲得圖像的二級小波分解,以此類推,還能夠獲得三級小波分解,四級小波分解……以WOMAN圖像爲例,對其進行小波分解,過程如圖1所示。合成的過程與上 述分解過程相反下面咱們舉個例子來深刻的認識一下這種優越的壓縮算法。性能
function wt() a=imread('C:\MATLAB7\work\2.jpg'); A=rgb2gray(a); %顯示圖像 subplot(2,4,1); imshow(uint8(A)); title('原始圖像'); axis square disp('壓縮前圖像X的大小'); whos('A') %對圖像用小波進行層小波分解 [c,s]=wavedec2(A,2,'bior3.7'); %提取小波分解結構中的一層的低頻係數和高頻係數 cal=appcoef2(c,s,'bior3.7',1); %水平方向 ch1=detcoef2('h',c,s,1); %垂直方向 cv1=detcoef2('v',c,s,1); %斜線方向 cd1=detcoef2('d',c,s,1); %各頻率成份重構 a1=wrcoef2('a',c,s,'bior1.3',1); h1=wrcoef2('h',c,s,'bior1.3',1); v1=wrcoef2('v',c,s,'bior1.3',1); d1=wrcoef2('d',c,s,'bior1.3',1); c1=[a1,h1;v1,d1]; %顯示分頻信息 subplot(2,4,2); imshow(uint8(c1)); axis square; title ('分解後低頻和高頻信息'); %進行圖像壓縮 %保留小波分解第一層低頻信息 %首先對第一層信息進行量化編碼 ca1=appcoef2(c,s,'bior3.7',1); ca1=wcodemat(ca1,460,'mat',1); %改變圖像高度並顯示 ca1=0.5*ca1; subplot(2,4,3); imshow(uint8(ca1)); axis square; title('第一次壓縮圖像'); disp('第一次壓縮圖像的大小爲:'); whos('ca1') %保留小波分解第二層低頻信息進行壓縮 ca2=appcoef2(c,s,'bior3.7',2); %首先對第二層信息進行量化編碼 ca2=wcodemat(ca2,440,'mat',2); %改變圖像高度並顯示 ca2=0.25*ca2; subplot(2,4,4); imshow(uint8(ca2)); axis square; itle('第二次壓縮圖像'); disp('第二次壓縮圖像的大小爲:'); whos('ca2')
壓縮前圖像X的大小優化
Name Size Bytes Classui
A 512x512 3145728 uint8 array編碼
第一次壓縮圖像的大小爲:
Name Size Bytes Class
ca1 263x263 6392200 double array
第二次壓縮圖像的大小爲:
Name Size Bytes Class
ca2 139x139 1652680 double array
由上述程序運行結果能夠發現小波變換在圖像壓縮領域的應用是頗有優點的。並且在當今圖像壓縮紛繁複雜的算法當中基於小波變換的圖像壓縮算法還有待於更好的優化。可以調試一個更優化的圖像壓縮算法對於圖像傳輸和圖像優化等方面是十分有價值的。
因爲小波變換繼承了Fourier(餘弦變換和正弦變換均可以視爲Fourier變換的特例)分析的優勢,同時又克服它的許多缺點因此它在靜態和動態圖像 壓縮領域獲得普遍的應用,而且已經成爲某些圖像壓縮國際標準(如MPEG-4)的重要環節。固然,像其餘變換編碼同樣,在壓縮比特別高的時候,小波變換壓 縮量化後的重建圖像也會產生幾何畸變。但伴隨着人們對小波基和小波分析的認識的日益成熟相信對於小波變換在圖像壓縮方面的應用將會更加普遍。