《數(shù)據(jù)壓縮與信源編碼》實驗報告S_第1頁
《數(shù)據(jù)壓縮與信源編碼》實驗報告S_第2頁
《數(shù)據(jù)壓縮與信源編碼》實驗報告S_第3頁
《數(shù)據(jù)壓縮與信源編碼》實驗報告S_第4頁
《數(shù)據(jù)壓縮與信源編碼》實驗報告S_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、 西華大學(xué)實驗報告第 組 西華大學(xué)實驗報告(理工類)開課學(xué)院及實驗室: 電氣信息學(xué)院 6A222 實驗時間 :2017年4月6日學(xué) 生 姓 名學(xué) 號成 績學(xué)生所在學(xué)院電氣與電子信息學(xué)院年級/專業(yè)/班信息工程14(3)-1課 程 名 稱數(shù)據(jù)壓縮與信源編碼課 程 代 碼6088619實驗項目名稱碼書的設(shè)計和使用項 目 代 碼實驗一指 導(dǎo) 教 師李斌項 目 學(xué) 分一、實驗?zāi)康牟捎檬噶苛炕惴ǎ↙BG)獲得圖像壓縮所需要的碼書,通過碼書實現(xiàn)圖像壓縮編碼。二、實驗原理要想得到好的性能編碼,僅采用標量量化是不可能的。當(dāng)把多個信源符號聯(lián)合起來形成多維矢量,再對矢量進行標量量化時自由度將更大,同樣的失真下,量

2、化基數(shù)可進一步減少,碼率可進一步壓縮。這種量化叫矢量量化。一種有效和直觀的矢量量化碼書設(shè)計算法LBG算法(也叫GLA算法)是由Linde、Buzo和Gray于1980年首先提出來的。該算法基于最佳矢量量化器設(shè)計的最佳劃分和最佳碼書這兩個必要條件,且是Lloyd算法在矢量空間的推廣,其特點為物理概念清晰、算法理論嚴密及算法實現(xiàn)容易。設(shè)訓(xùn)練矢量集為,待產(chǎn)生的碼書為,其中,則碼書設(shè)計過程就是需求把訓(xùn)練矢量集分成個子集的一種最佳聚類方案,而子集的質(zhì)心矢量作為碼字。假設(shè)平方誤差測度用來表征訓(xùn)練矢量和碼字之間的失真,即:則碼書設(shè)計的準則可用下列數(shù)學(xué)形式表達: 最小化 約束條件 ,其中為矩陣,其元素滿足:

3、矩陣可看作訓(xùn)練矢量的聚類結(jié)果。根據(jù),可計算碼字: 其中 代表子集中訓(xùn)練矢量的數(shù)目,或者說是矩陣第行中非零元素的數(shù)目。針對訓(xùn)練矢量集為,其LBG算法的具體步驟如下: 步驟1:給定初始碼書,令迭代次數(shù),平均失真,給定相對誤差門限。 步驟2:用碼書中的各碼字作為質(zhì)心,根據(jù)最佳劃分原則把訓(xùn)練矢量集劃分為個胞腔,滿足 步驟3:計算平均失真 判斷相對誤差是否滿足 若滿足,則停止算法,碼書就是所求的碼書。否則,轉(zhuǎn)步驟4。 步驟4:根據(jù)最佳碼書條件,計算各胞腔的質(zhì)心,即 由這個新質(zhì)心形成新碼書,置,轉(zhuǎn)步驟2。三、實驗設(shè)備、儀器及材料操作系統(tǒng):Windowsxp;軟件:MATLAB四、實驗步驟(按照實際操作過程

4、)1. 碼書的設(shè)計12clear all; data=imread('cameraman.tif');%調(diào)入原始圖像 data=double(data)/255;%歸一化m,n=size(data); %求出圖像的行數(shù)和列數(shù) figure(1)subplot(1,2,1);imshow(data); %顯示原始圖像 title('原始圖像')subplot(1,2,2);imhist(data);title('直方圖')siz_word=4; %設(shè)置碼字的大小 siz_book=512; %設(shè)置碼書的大小 data1=zeros(m*n,1);f

5、or i=1:m for j=1:n data1(i-1)*n+j)=data(i,j); endendM1=floor(m*n/siz_word);r=mod(m*n,siz_word);if r>0 M1=M1+1;enddata2=zeros(M1,siz_word);l=1;A=zeros(siz_word,1);r=1;for i=1:m*n A(r)=data1(i); if r=siz_word data2(l,:)=A; l=l+1; r=1; else r=r+1; endendcode_book=zeros(siz_book,siz_word);2編碼%LBG算法開始

6、%初始化碼書l=1;r=1;A=zeros(siz_word,1);for i=1:siz_book*siz_word A(r)=data1(i); if r=siz_word code_book(l,:)=A; l=l+1; r=1; else r=r+1; endendMIU=zeros(M1,siz_book); t=1;while t=1 for i=1:M1 B=zeros(siz_word,1); B=data2(i,:); A=zeros(siz_word,1); A=code_book(1,:); tep=0.0; for l=1:siz_word tep=tep+(A(l)-

7、B(l)2; end r=1; for j=2:siz_book A=code_book(j,:); temp=sum(A-B).2); if temp<tep r=j; tep=temp; end end MIU(i,r)=1.0; end t=0; code_book1=zeros(siz_book,siz_word); for j=1:siz_book for l=1:siz_word tep=0.0; for i=1:M1 code_book1(j,l)=code_book1(j,l)+MIU(i,j)*data2(i,l); tep=tep+MIU(i,j); end if t

8、ep>0 code_book1(j,l)=code_book1(j,l)/tep; else code_book1(j,l)=0.0; end end end tep=0.0; for j=1:siz_book for l=1:siz_word tep=tep+(code_book1(j,l)-code_book(j,l)2; end end if tep/siz_book<0.000001 t=0; end code_book=code_book1;end3. 解碼%編碼后圖像恢復(fù)過程data3=zeros(M1,siz_word);for i=1:M1 for j=1:siz_

9、book if MIU(i,j)=1 t=j; end end data3(i,:)=code_book(t,:);enddata5=zeros(m,n);for i=1:m for j=1:n tep=(i-1)*n+j; i1=floor(tep/siz_word); if i1=0 i1=1; end j1=mod(tep,siz_word); if j1=0 j1=siz_word; end data5(i,j)=floor(data3(i1,j1)*255); endendfigure(2)imshow(uint8(data5); %顯示恢復(fù)圖像title('矢量量化編碼后恢

10、復(fù)的圖像')五、實驗過程記錄(數(shù)據(jù)、圖表、計算等)六、實驗結(jié)果分析及問題討論 西華大學(xué)實驗報告(理工類)開課學(xué)院及實驗室: 電氣信息學(xué)院 6A222 實驗時間 :2017年4月6日學(xué) 生 姓 名學(xué) 號成 績學(xué)生所在學(xué)院電氣與電子信息學(xué)院年級/專業(yè)/班信息工程14(3)-1課 程 名 稱數(shù)據(jù)壓縮與信源編碼課 程 代 碼6088619實驗項目名稱基于DCT變換的圖像壓縮技術(shù)項 目 代 碼實驗二指 導(dǎo) 教 師李斌項 目 學(xué) 分一、實驗?zāi)康睦秒x散余弦變換進行圖像壓縮。二、實驗原理1.DCT變換 離散余弦變換(DCT)是一種與離散傅立葉變換緊密相關(guān)的正交變換,8×8的二維離散余弦變換

11、可以將圖像的空間表達式轉(zhuǎn)換到頻率域,只用少量的數(shù)據(jù)點來表達圖像,用f(x,y)表示8×8的圖像塊象素值,F(u,v)表示二維離散余弦變換后的值,具體表達式如下:Fu,v=14CuCvx=07y=07fx,ycos2x+1u16cos2y+1v16 (4.1)其反變換如下式:Fx,y=14CuCvx=07y=07CuCvFx,ycos2x+1u16cos2y+1v16 (4.2)其中,C(u)=Cv22(當(dāng)u=v=0)1 (其他情況)(4.3)二維離散余弦變換核具有可分離性,即可以先對每行進行一維離散余弦變換,再對每列進行一維離散余弦變換,因此,二維離散余弦變換可表示為:Fu,v=12

12、Cux=07Gx,vcos2x+1u16 (4.4)Gu,v=12Cuy=07Gx,vcos2x+1u16 (4.5)如果直接按照公式計算,其計算量很大,所以,實際應(yīng)用中普遍采用快速傅立葉變換(FFT)算法來實現(xiàn)離散余弦變換的快速算法。2.量化編碼數(shù)據(jù)壓縮中的量化處理,不是對A/D轉(zhuǎn)換量化,而是對正交變換后的數(shù)據(jù)進行量化處理,量化輸入值的動態(tài)范圍很大,而量化的輸出只能取有限個整數(shù),量化后的數(shù)值用較少的比特數(shù)便可表示。量化處理總是把一批輸入量化到一個輸出級上,這樣降低了數(shù)值的精度,但減少了數(shù)據(jù)量。DCT的輸出系數(shù)中,左上角的數(shù)據(jù)表示低頻分量,人眼比較敏感,應(yīng)該用較高的精度來表示,而右下角的數(shù)據(jù)可

13、以用較低的精度來表示,因此,我們可以定義一個量化表對不同的數(shù)據(jù)采用不同的量化等級,這個量化表可以根據(jù)期望的壓縮比進行調(diào)整,一般來說,量化表元素值越大壓縮比越大,當(dāng)然圖像失真度也越大。3.“Z”字型掃描量化后的數(shù)據(jù)本來已經(jīng)可以直接進行游程編碼,但為了提高游程編碼的效率,我們必須盡量增加零游程的長度?;诹炕笙禂?shù)的排列特征,采用“Z”字型掃描能有效增加零游程的長度?!癦”字型掃描軌跡如圖2.2所示:4.哈夫曼(Huffman)編碼及解碼哈夫曼編碼是1952年由Huffman提出的編碼方法,基本思想是根據(jù)源數(shù)據(jù)符合出現(xiàn)的概率大小進行編碼,出現(xiàn)概率大的符號分配越短的碼字,出現(xiàn)概率越小的符號分配越長的

14、碼字,從而達到用盡量少的比特數(shù)表示數(shù)據(jù)源,標準哈夫曼編碼步驟如下:(1)統(tǒng)計數(shù)據(jù)源符號出現(xiàn)的概率,得到不同概率的信息符號;(2)將數(shù)據(jù)源符號按概率遞減順序排列;(3)把兩個最小概率相加作為新符號的概率,并按(2)重排;(4)重復(fù)(1)、(2),直到概率為1;(5)在每次合并信源時,將合并的信源分別賦“0”和“1”;(6)尋找從每一信源符號到概率為1處的路徑,記錄路徑上的“0”和“1”;(7)從樹根開始寫出每一符號的“0”、“1”。用標準哈夫曼編碼對圖像進行編碼時效率很高,但需要對原始圖像掃描兩遍,第一遍要精確統(tǒng)計出每個像素值出現(xiàn)的概率,第二遍是建立哈夫曼樹并編碼,數(shù)據(jù)壓縮和解壓速度較慢,因此,

15、出現(xiàn)了一種改良的哈夫曼編碼,它的變長碼字不是實時產(chǎn)生而是一個固定的表,在編碼和解碼過程中不用計算符號概率和排序,直接查表得到,但這個表必須經(jīng)過大量的統(tǒng)計工作并精心設(shè)計才能達到較高的編碼效率。在靜態(tài)圖像壓縮國際標準(JPEG標準)中,專家組已經(jīng)對大量自然圖像進行了統(tǒng)計,得到了適合于靜態(tài)自然圖像編碼的哈夫曼表,在實際編碼過程中,我們可直接應(yīng)用此表進行編碼和解碼。三、實驗設(shè)備、儀器及材料操作系統(tǒng):Windowsxp;軟件:MATLAB四、實驗步驟(按照實際操作過程)I=imread('cameraman.tif')I=im2double(I) %轉(zhuǎn)換圖像矩陣為雙精度型。J=dct2(

16、I);T=dctmtx(8) %產(chǎn)生二維DCT變換矩陣a1=16 11 10 16 24 40 51 61; 12 12 14 19 26 58 60 55; 14 13 16 24 40 57 69 56; 14 17 22 29 51 87 80 62; 18 22 37 56 68 109 103 77; 24 35 55 64 81 104 113 92; 49 64 78 87 103 121 120 101; 72 92 95 98 112 100 103 99 ;for i=1:8:200 for j=1:8:200 P=I(i:i+7,j:j+7); K=T*P*T'

17、I2(i:i+7,j:j+7)=K; K=K./a1; 量化 K(abs(K)<0.03)=0; I3(i:i+7,j:j+7)=K; endendfigure;imshow(I2);title('DCT變換后的頻域圖像'); %顯示DCT變換后的頻域圖像for i=1:8:200 for j=1:8:200 P=I3(i:i+7,j:j+7).*a1; %反量化 K=T'*P*T; I4(i:i+7,j:j+7)=K; endendfigure;imshow(I4);title('復(fù)原圖像');B=blkproc(I,8,8,'P1*x*

18、P2',T,T') %計算二維DCT,矩陣T及其轉(zhuǎn)置是DCT函數(shù)P1*X*P2的參數(shù) mask=1 1 1 1 0 0 0 0 1 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 %二值掩模,用來壓縮DCT系數(shù),只留下DCT系數(shù)中左上角的10個B2=blkproc(B,8 8,'P1.*x',mask) %只保留DCT變換的10個系數(shù)I2=blkproc(B2,8 8,'P1*x*P2

19、',T',T) %重構(gòu)圖像figureimshow(I)title('原始圖像');figureimshow(I2);title('壓縮圖像');figureimshow(J);figuremesh(J) %畫出J的立體網(wǎng)狀圖colorbar('horiz') %在水平條方向用不同的顏色表示曲面的高度五、實驗過程記錄(數(shù)據(jù)、圖表、計算等)六、實驗結(jié)果分析及問題討論 西華大學(xué)實驗報告(理工類)開課學(xué)院及實驗室: 電氣信息學(xué)院 6A207 實驗時間 :2017年4月6日學(xué) 生 姓 名學(xué) 號成 績學(xué)生所在學(xué)院電氣與電子信息學(xué)院年級/專業(yè)

20、/班信息工程14(3)-1課 程 名 稱數(shù)據(jù)壓縮與信源編碼課 程 代 碼6088619實驗項目名稱基于小波變換的圖像壓縮技術(shù)項 目 代 碼實驗三指 導(dǎo) 教 師李斌項 目 學(xué) 分一、實驗?zāi)康睦眯〔ㄗ儞Q進行圖像壓縮。二、實驗原理正交基在傳統(tǒng)的信號表示中被廣泛地采用, 如傅氏變換。 基函數(shù)的正交性使相應(yīng)的表示系數(shù)能容易地用內(nèi)積計算, 然而, 這些變換一般揭示的是信號的整體性質(zhì), 難以表示其局部特性, 小波變換發(fā)展了局部化思想, 是一種信號的時間- 尺度 ( 時間 - 頻率) 分析方法, 它具有多分辨率分析的特點, 而且在時頻兩域都具有表征信號局部特征的能力, 是一種窗口大小固定不變但其形狀可改變,

21、 時間窗和頻率窗都可以改變的時頻局部化分析方法。 即在低頻部分具有較高的頻率分辨力和較低的時間分辨力, 在高頻部分具有較高的時間分辨力和較低的頻率分辨力, 很適合于探測正常信號中夾帶的瞬態(tài)反?,F(xiàn)象并展示其成分, 所以被譽為分析信號的顯微鏡, 利用連續(xù)小波變換進行動態(tài)系統(tǒng)故障檢測與診斷具有良好的效果。若記母小波為 ( t) , 伸縮和頻移因子分別為 a和 b, 則由母小波( t) 生成的小波為:(a,b)t=1at-ba a,bR;a0 其中, 母小波 ( t) 必須滿足下列條件:C=R2d< 為t的傅氏變換。對應(yīng)于傅氏分析中的傅氏級數(shù)、傅氏變換、快速傅氏變換, 在小波分析中也有相應(yīng)的小波

22、級數(shù)、小波變換和 Mallat 算法。小波分析廣泛應(yīng)用于信號處理、圖像處理、量子場論、地震勘探、語音識別與合成、音樂、雷達、CT 成像、彩色復(fù)印、流體湍流、天體識別、機器視覺、機械故障診斷與監(jiān)控、分形以及數(shù)字電視等科技領(lǐng)域, 原則上講, 傳統(tǒng)上使用傅里葉分析的地方, 都可以用小波分析取代。 小波分析優(yōu)于傅里葉變換的地方是,它在時域和頻域同時具有良好的局部化性質(zhì)。小波分析應(yīng)用于圖像壓縮具有壓縮比高、壓縮速度快、壓縮后能保證圖像的特征基本不變的特點,且在傳遞過程中可以抗干擾。 小波分析進行圖像壓縮的基本原理是: 根據(jù)二維小波分解算法, 一幅圖像作小波分解后, 可得到一系列不同分辨率的圖像, 而表現(xiàn)

23、一幅圖像最主要的部分是低頻部分, 如果去掉圖像的高頻部分只保留低頻部分, 則可以達到圖像壓縮的目的。 基于小波分析的圖像壓縮方法有很多, 較成功的有小波包最優(yōu)基、小波域紋理模型方法、小波變換零樹壓縮、小波變換向量量化壓縮等。利用小波分解去掉圖像的高頻部分而僅保留圖像的低頻部分是一種最簡單的圖像壓縮處理方法。 三、實驗設(shè)備、儀器及材料操作系統(tǒng):Windowsxp;軟件:MATLAB 四、實驗步驟(按照實際操作過程)% 裝載原始圖像并將其轉(zhuǎn)化為索引圖像load wbarb;subplot(221);image(X);colormap(map)title('原始圖像');axis s

24、quaredisp('壓縮前圖像X的大?。?#39;);whos('X')%對圖像用bior3.7小波進行2層小波分解c,s=wavedec2(X,2,'bior3.7');%提取小波分解結(jié)構(gòu)中第一層低頻系數(shù)和高頻系數(shù)ca1=appcoef2(c,s,'bior3.7',1);ch1=detcoef2('h',c,s,1);cv1=detcoef2('v',c,s,1);cd1=detcoef2('d',c,s,1);%分別對各頻率成分進行重構(gòu)a1=wrcoef2('a',c

25、,s,'bior3.7',1);h1=wrcoef2('h',c,s,'bior3.7',1);v1=wrcoef2('v',c,s,'bior3.7',1);d1=wrcoef2('d',c,s,'bior3.7',1);c1=a1,h1;v1,d1;%顯示分解后各頻率成分的信息subplot(222);image(c1);axis squaretitle('分解后低頻和高頻信息');%下面進行圖像壓縮處理%保留小波分解第一層低頻信息,進行圖像的壓縮%第一層的低頻信息即為ca1,顯示第一層的低頻信息%首先對第一層信息進行量化編碼ca1=appcoef2(c,s,'bior3.7',1)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論