版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 課程設(shè)計(jì)任務(wù)書</b></p><p> 2011—2012學(xué)年第一學(xué)期</p><p> 課程設(shè)計(jì)名稱: 信息論與編碼課程設(shè)計(jì) </p><p> 設(shè)計(jì)題目: 預(yù)測編碼的分析與實(shí)現(xiàn) </p><p> 完成期限:自
2、 2011 年 12 月 19 日至 2011 年 12 月 25 日共 1 周</p><p><b> 一.設(shè)計(jì)目的</b></p><p> 1、深刻理解信源編碼的基本思想與目的;</p><p> 2、理解預(yù)測編碼方法的基本過程與特點(diǎn);</p><p> 3、提高綜合運(yùn)用所學(xué)理論知識(shí)獨(dú)立分
3、析和解決問題的能力;</p><p> 4、使用MATLAB或其他語言進(jìn)行編程。</p><p><b> 二.設(shè)計(jì)內(nèi)容</b></p><p> 讀入一幅圖像,用以下預(yù)測公式,對圖像進(jìn)行預(yù)測編碼和解碼。</p><p><b> 三.設(shè)計(jì)要求</b></p><p>
4、; 比較編解碼后的圖像與原始圖像。</p><p><b> 四.設(shè)計(jì)條件</b></p><p> 計(jì)算機(jī)、MATLAB或其他語言環(huán)境</p><p><b> 五.參考資料</b></p><p> [1]曹雪虹,張宗橙.信息論與編碼.北京:清華大學(xué)出版社,2007.</p>
5、;<p> [2]王慧琴.數(shù)字圖像處理.北京:北京郵電大學(xué)出版社,2007.</p><p> 指導(dǎo)教師(簽字): 教研室主任(簽字): </p><p> 批準(zhǔn)日期: 年 月 日</p><p><b> 摘要</b></p>
6、<p> 通信的數(shù)字化是它能與計(jì)算機(jī)技術(shù)和數(shù)字信號(hào)處理技術(shù)相結(jié)合的基礎(chǔ),而實(shí)現(xiàn)通信數(shù)字化的前提是信源能提供的各種用于傳遞的消息,例如語音、圖像、數(shù)據(jù)、文字等都必須以數(shù)字化形式表示。對圖像數(shù)據(jù)壓縮來說,預(yù)測編碼基本思想是這樣的:模型→利用以往的樣本數(shù)據(jù)→對下一個(gè)新的樣本值進(jìn)行預(yù)測→ 將預(yù)測所得的值與實(shí)際值的差值進(jìn)行編碼→由于差值很小,可以減少編碼的碼位。</p><p> 本課題通過利用MATLAB
7、這一種科學(xué)的計(jì)算軟件,來完成對圖像的編碼和解碼處理,通過比較原始圖像和編碼解碼后的圖像,來深刻理解掌握預(yù)測編碼的方法。</p><p> 關(guān)鍵詞:編碼;MATLAB;預(yù)測編碼</p><p><b> 目錄</b></p><p><b> 1 設(shè)計(jì)原理1</b></p><p> 2 D
8、PCM編碼解碼3</p><p> 2.1 DPCM編碼及解碼原理3</p><p> 3 MATLAB簡介4</p><p> 3.1 軟件介紹4</p><p><b> 3.2 應(yīng)用4</b></p><p><b> 3.3 特點(diǎn)5</b>&
9、lt;/p><p><b> 3.4 優(yōu)勢5</b></p><p> ?。?)友好的工作平臺(tái)和編程環(huán)境5</p><p> ?。?)簡單易用的程序語言5</p><p> (3)強(qiáng)大的科學(xué)計(jì)算機(jī)數(shù)據(jù)處理能力6</p><p><b> 4 設(shè)計(jì)過程6</b>&l
10、t;/p><p><b> 4.1設(shè)計(jì)原理6</b></p><p> 4.2 MATLAB程序6</p><p> 4.3 運(yùn)行結(jié)果及分析8</p><p><b> 總結(jié)9</b></p><p><b> 參考資料10</b>&l
11、t;/p><p><b> 1 設(shè)計(jì)原理</b></p><p> 1.1預(yù)測編碼原理 基本思想是這樣的:模型→利用以往的樣本數(shù)據(jù)→對下一個(gè)新的樣本值進(jìn)行預(yù)測→ 將預(yù)測所得的值與實(shí)際值的差值進(jìn)行編碼→由于差值很小,可以減少編碼的碼位。</p><p> 預(yù)測編碼:就是根據(jù)過去的信號(hào)樣值預(yù)測下一個(gè)樣值,并僅把預(yù)測值與現(xiàn)實(shí)的樣值之差(預(yù)測誤
12、差)加以量化、編碼以后進(jìn)行傳輸?shù)姆绞?,如下圖所示,在接收端,經(jīng)過和發(fā)信端的預(yù)測完全相同的操作,可以得到量化的原信號(hào),然后再通過低通濾波便可恢復(fù)與原信號(hào)近似的波形。</p><p> 進(jìn)一步,若變換是線性的則預(yù)測變換器可按下列原理進(jìn)行分解,得如你圖2.2所示:</p><p> 圖2.2 線性變換預(yù)測編碼原理圖</p><p> 從上述預(yù)測編碼原理可以看出,實(shí)現(xiàn)
13、預(yù)測編碼要進(jìn)一步考慮下列3個(gè)方面的問題:</p><p> (1) 預(yù)測誤差準(zhǔn)則的選取;</p><p> (2) 預(yù)測函數(shù)的選取;</p><p> (3) 預(yù)測器輸入數(shù)據(jù)的選取。</p><p> ?、?預(yù)測誤差準(zhǔn)則的選?。?</p><p> 關(guān)于預(yù)測誤差準(zhǔn)則的選取,它是指預(yù)測誤差所依據(jù)的標(biāo)
14、準(zhǔn),目前大致可采用下列4種類型準(zhǔn)則:</p><p> a. 最小均方誤差(MMSE)準(zhǔn)則——最基本、最常用。</p><p> b. 功率包絡(luò)匹配(PSEM)準(zhǔn)則——僅次于MMSE。</p><p> c. 預(yù)測系數(shù)不變性(PCIV)準(zhǔn)則——預(yù)測系數(shù)與輸入信號(hào)統(tǒng)計(jì)特性無關(guān),因而能對多種混合信號(hào)進(jìn)行有效的預(yù)測。</p><p> d.
15、 最大誤差(ME)準(zhǔn)則——主要用于遙控?cái)?shù)據(jù)壓縮。 </p><p><b> ?、?預(yù)測函數(shù)的選取</b></p><p> 一般采用工程上比較容易實(shí)現(xiàn)的線性預(yù)測,預(yù)測精度與K值大小有直接關(guān)系,K越大,精度越高,但設(shè)備越復(fù)雜。</p><p> 所以要根據(jù)設(shè)計(jì)要求及實(shí)際效果來確。 </p><p> ?、?預(yù)測器輸入
16、數(shù)據(jù)的選取</p><p> 指選取何處的原始數(shù)據(jù)作為預(yù)測器的依據(jù)。一般可分為三類:</p><p> a. 直接從信源輸出選取待測瞬間I的前K位,作為預(yù)測器的依據(jù)(△PCM)。</p><p> b. 誤差函數(shù)的輸出端反饋到預(yù)測器中的待測瞬間i位以前的K位(DPCM)</p><p> c. 將a、b相結(jié)合的噪聲反饋型編碼(NFC)
17、。 </p><p> 2 DPCM編碼解碼</p><p> DPCM預(yù)測壓縮算法 DPCM是差分脈沖編碼調(diào)制算法,主要用于圖象壓縮。 DPCM的基本工作原理如下: 比較相鄰的兩個(gè)像素,如果兩個(gè)像素之間存在差異,將差異之處的差值傳送出去,若比較的像素之間沒有差異,則不傳送差值。 </p><p> 2.1 DPCM編碼及解碼原理</p&g
18、t;<p> 圖2-1 DPCM編碼原理圖</p><p> 系統(tǒng)包括,發(fā)送、接收和信道傳輸三個(gè)部分。發(fā)送端由編碼器、量化器、預(yù)測器和加/減法器組成;接收端包括解碼器和預(yù)測器等;信道傳送以虛線表示。由圖可見DPCM系統(tǒng)具有結(jié)構(gòu)簡單,容易用硬件實(shí)現(xiàn)(接收端的預(yù)測器和發(fā)送端的預(yù)測器完全相同)的優(yōu)點(diǎn)。圖中輸入信號(hào)f(i,j)是坐標(biāo)為像素點(diǎn)的實(shí)際灰度值,是由已出現(xiàn)先前相鄰像素點(diǎn)的灰度值對該像素點(diǎn)的預(yù)測
19、灰度值。是預(yù)測誤差。假如發(fā)送端不帶量化器,直接對預(yù)測誤差進(jìn)行編碼、傳送,接收端可以無誤差地恢復(fù)。這是可逆的無失真的DPCM編碼,是信息保持編碼;但是,如果包含量化器,這時(shí)編碼器對編碼,量化器導(dǎo)致了不可逆的信息損失,這時(shí)接收端,經(jīng)解碼恢復(fù)出的灰度信號(hào),不是真正的,以表示這時(shí)的輸出??梢娨肓炕鲿?huì)引起一定程度的信息損失,使圖像質(zhì)量受損。但是,為了壓縮比特?cái)?shù),利用人眼的視覺特性,對圖像信息丟失不易覺察的特點(diǎn),帶有量化器有失真的DPCM編碼系
20、統(tǒng)還是普遍被采用。</p><p> 3 MATLAB簡介</p><p><b> 3.1 軟件介紹</b></p><p> MATLAB是很實(shí)用的數(shù)學(xué)軟件它在數(shù)學(xué)類科技應(yīng)用軟件中在數(shù)值運(yùn)算方面首屈一指。MATLAB可以進(jìn)行運(yùn)算、繪制函數(shù)和數(shù)據(jù)、實(shí)現(xiàn)算法、創(chuàng)建用戶界面、連接接其他編程語言的程序等,主要應(yīng)用于工程計(jì)算、控制設(shè)計(jì)、信號(hào)處
21、理與通訊、金融建模設(shè)計(jì)與分析等領(lǐng)域。 </p><p> MATLAB的基本數(shù)據(jù)單位是矩陣,它的指令表達(dá)式與數(shù)學(xué)、工程中常用的形式十分相似,故用MATLAB來解算問題要比用C,F(xiàn)ORTRAN等語言完成相同的事情簡捷得多,并且mathwork也吸收了像Maple等軟件的優(yōu)點(diǎn),使MATLAB成為一個(gè)強(qiáng)大的數(shù)學(xué)軟件??梢灾苯诱{(diào)用,用戶也可以將自己編寫的實(shí)用程序?qū)氲組ATLAB函數(shù)庫中方便自己以后調(diào)用,此外許多的MA
22、TLAB愛好者都編寫了一些經(jīng)典的程序,用戶可以直接進(jìn)行下載就可以用。</p><p><b> 3.2 應(yīng)用</b></p><p> MATLAB 產(chǎn)品族可以用來進(jìn)行以下各種工作: </p><p><b> ● 數(shù)值分析 </b></p><p> ● 數(shù)值和符號(hào)計(jì)算 </p>
23、;<p> ● 工程與科學(xué)繪圖 </p><p> ● 控制系統(tǒng)的設(shè)計(jì)與仿真 </p><p><b> ● 圖像處理技術(shù) </b></p><p> ● 數(shù)字信號(hào)處理技術(shù) </p><p> ● 通訊系統(tǒng)設(shè)計(jì)與仿真 </p><p><b> 3.3 特點(diǎn)&l
24、t;/b></p><p> ●此高級語言可用于技術(shù)計(jì)算 </p><p> ●此開發(fā)環(huán)境可對代碼、文件和數(shù)據(jù)進(jìn)行管理 </p><p> ●交互式工具可以按迭代的方式探查、設(shè)計(jì)及求解問題 </p><p> ●二維和三維圖形函數(shù)可用于可視化數(shù)據(jù) </p><p> ●各種工具可用于構(gòu)建自定義的圖形用戶
25、界面 </p><p><b> 3.4 優(yōu)勢</b></p><p> (1)友好的工作平臺(tái)和編程環(huán)境</p><p> MATLAB由一系列工具組成。這些工具方便用戶使用MATLAB的函數(shù)和文件,其中許多工具采用的是圖形用戶界面。包括MATLAB桌面和命令窗口、歷史命令窗口、編輯器和調(diào)試器、路徑搜索和用于用戶瀏覽幫助、工作空間、文件的
26、瀏覽器。隨著MATLAB的商業(yè)化以及軟件本身的不斷升級,MATLAB的用戶界面也越來越精致,更加接近Windows的標(biāo)準(zhǔn)界面,人機(jī)交互性更強(qiáng),操作更簡單。而且新版本的MATLAB提供了完整的聯(lián)機(jī)查詢、幫助系統(tǒng),極大的方便了用戶的使用。簡單的編程環(huán)境提供了比較完備的調(diào)試系統(tǒng),程序不必經(jīng)過編譯就可以直接運(yùn)行,而且能夠及時(shí)地報(bào)告出現(xiàn)的錯(cuò)誤及進(jìn)行出錯(cuò)原因分析。 </p><p> (2)簡單易用的程序語言</p&
27、gt;<p> MATLAB一個(gè)高級的矩陣/陣列語言,它包含控制語句、函數(shù)、數(shù)據(jù)結(jié)構(gòu)、輸入和輸出和面向?qū)ο缶幊烫攸c(diǎn)。用戶可以在命令窗口中將輸入語句與執(zhí)行命令同步,也可以先編寫好一個(gè)較大的復(fù)雜的應(yīng)用程序(M文件)后再一起運(yùn)行。新版本的MATLAB語言是基于最為流行的C++語言基礎(chǔ)上的,因此語法特征與C++語言極為相似,而且更加簡單,更加符合科技人員對數(shù)學(xué)表達(dá)式的書寫格式。使之更利于非計(jì)算機(jī)專業(yè)的科技人員使用。而且這種語言可
28、移植性好、可拓展性極強(qiáng),這也是MATLAB能夠深入到科學(xué)研究及工程計(jì)算各個(gè)領(lǐng)域的重要原因。 </p><p> ?。?)強(qiáng)大的科學(xué)計(jì)算機(jī)數(shù)據(jù)處理能力</p><p> MATLAB是一個(gè)包含大量計(jì)算算法的集合。其擁有600多個(gè)工程中要用到的數(shù)學(xué)運(yùn)算函數(shù),可以方便的實(shí)現(xiàn)用戶所需的各種計(jì)算功能。函數(shù)中所使用的算法都是科研和工程計(jì)算中的最新研究成果,而前經(jīng)過了各種優(yōu)化和容錯(cuò)處理。在通常情況下,
29、可以用它來代替底層編程語言,如C復(fù)數(shù)的各種運(yùn)算、三角函數(shù)和其他初等數(shù)學(xué)運(yùn)算、多維數(shù)組操作以及建模動(dòng)態(tài)仿真等。</p><p><b> 4 設(shè)計(jì)過程</b></p><p><b> 4.1設(shè)計(jì)原理</b></p><p> 預(yù)測的理論基礎(chǔ)主要是估計(jì)理論。估計(jì)就是用實(shí)驗(yàn)數(shù)據(jù)組成一個(gè)統(tǒng)計(jì)量作為一物理量的估值或預(yù)測值。&
30、lt;/p><p> 本課程設(shè)計(jì)要是通過簡化預(yù)測公式對輸入圖像進(jìn)行線性編碼,即</p><p><b> (2.2.1)</b></p><p> 這里以灰度圖像為例,通過使用Matlab的文件讀寫函數(shù) fopen ,fwrite和 fclose,將計(jì)算所得的誤差以最小的位深度寫入文件中。</p><p> 4.2
31、 MATLAB程序</p><p> I2=imread('cell.tif');</p><p> I=double(I2);</p><p> fid=fopen('mydata.dat','w');</p><p> [m,n]=size(I);</p><p&
32、gt; J=ones(m,n);</p><p> J(1:m,1)=I(1:m,1);</p><p> J(1,1:n)=I(1,1:n);</p><p> J(1:m,n)=I(1:m,n);</p><p> J(m,1:n)=I(m,1:n);</p><p> for k=2:m-1</
33、p><p> for 1=2:n-1</p><p> J(k,1)=I(k,1)-(J(k,1-1)/2+J(k-1,1)/4+J(k-1,1-1)/8+J(k-1,1+1)/8);</p><p><b> end</b></p><p><b> end</b></p>&l
34、t;p> J=round(J);</p><p> cont=fwrite(fid,J,'int8');</p><p> cc=fclose(fid);</p><p> 可以看出,上面代碼實(shí)現(xiàn)的壓縮比是4:1。調(diào)用下邊的代碼對以上編碼文件進(jìn)行解碼,并通過顯示原始文件和解壓后的文件比較壓縮效果。</p><p>
35、; fid=fopen('mydata.dat','r'); </p><p> I1=fread(fid,cont,'int8'); </p><p><b> tt=1;</b></p><p><b> for 1=1:n</b></p>&l
36、t;p><b> for k=1:m</b></p><p> I(k,1)=I1(tt);</p><p><b> tt=tt+1;</b></p><p><b> end</b></p><p><b> end</b></p
37、><p> I=double(I);</p><p> J=ones(m,n);</p><p> J(1:m,1)=I(1:m,1);</p><p> J(1,1:n)=I(1,1:n);</p><p> J(1:m,n)=I(1:m,n);</p><p> J(m,1:n)=I
38、(m,1:n);</p><p> for k=2:m-1</p><p> for 1=2:n-1</p><p> J(k,1)=I(k,1)-(J(k,1-1)/2+J(k-1,1)/4+J(k-1,1-1)/8+J(k-1,1+1)/8);</p><p><b> end</b></p>
39、<p><b> end</b></p><p> cc=fclose(fid);</p><p> J=uint8(J);</p><p> subplot(1,2,1),imshow(I2); </p><p> subplot(1,2,2),imshow(J);</p>
40、<p> 4.3 運(yùn)行結(jié)果及分析</p><p> ?。╝)編碼前(b)編碼后</p><p> 通過比較發(fā)現(xiàn)原始圖像和編碼后的解碼圖像稍有差別。雖然編碼后圖像稍微有些變化,但影響不大。</p><p><b> 總結(jié)</b></p><p> 通過這次課程設(shè)計(jì),我學(xué)到了很多東西,加深了我對信息論
41、與編碼這門課的理解,同時(shí)也加深了我對預(yù)測編碼的理解以及對書本知識(shí)的進(jìn)一步了解。提高了自己分析和解決問題的能力。預(yù)測編碼是先進(jìn)行預(yù)測,得出預(yù)測值然后與實(shí)際值進(jìn)行比較。在做本次課程設(shè)計(jì)的過程中,通過翻閱各種資料。認(rèn)識(shí)來源于實(shí)踐,實(shí)踐是認(rèn)識(shí)的動(dòng)力和最終目的,實(shí)踐是檢驗(yàn)真理的唯一標(biāo)準(zhǔn)。所以這個(gè)期末測試之前的課程設(shè)計(jì)對我們的作用是非常大的。但這一周之后,我對編碼技術(shù)有了更深的理解,知道了自己的不足,同時(shí)也明白了所學(xué)知識(shí)的重要性,培養(yǎng)了自己對課程學(xué)
42、習(xí)的興趣。</p><p> 通過上機(jī)實(shí)踐,以加深對編碼理論的理解,加深了對本課程所學(xué)知識(shí)的理解和把握,鞏固了用MATLAB的操作使用。</p><p><b> 參考資料</b></p><p> [1]王慧琴.數(shù)字圖像處理.北京:北京郵電大學(xué)出版社,2007.</p><p> [2]夏娜.信息編碼與加密實(shí)踐
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)字圖像課程設(shè)計(jì)--圖像預(yù)測編碼系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 信息論與編碼課程設(shè)計(jì)(哈夫曼編碼的分析與實(shí)現(xiàn))
- 課程設(shè)計(jì)-哈夫曼編碼的分析和實(shí)現(xiàn)
- 哈夫曼編碼的java實(shí)現(xiàn)課程設(shè)計(jì)
- 5b6b編碼的仿真與實(shí)現(xiàn)課程設(shè)計(jì)
- 哈夫曼編碼譯碼的實(shí)現(xiàn)課程設(shè)計(jì)
- 課程設(shè)計(jì)---哈夫曼編碼編程實(shí)現(xiàn)
- 編碼解碼 課程設(shè)計(jì)
- huffman編碼課程設(shè)計(jì)
- 信息論與編碼課程設(shè)計(jì)
- 信息論與編碼課程設(shè)計(jì)
- 信息論與編碼課程設(shè)計(jì)
- 信息論與編碼課程設(shè)計(jì)
- 統(tǒng)計(jì)預(yù)測與決策課程設(shè)計(jì)
- 編譯原理課程設(shè)計(jì)報(bào)告-預(yù)測分析程序的設(shè)計(jì)
- 編譯原理課程設(shè)計(jì)報(bào)告-預(yù)測分析程序的設(shè)計(jì)
- 課程設(shè)計(jì)--哈夫曼編碼與譯碼
- 課程設(shè)計(jì)-spss統(tǒng)計(jì)分析課程網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)
- 算法設(shè)計(jì)與分析課程設(shè)計(jì)報(bào)告-背包問題的設(shè)計(jì)與實(shí)現(xiàn)
- 5b6b碼的編碼仿真與實(shí)現(xiàn)課程設(shè)計(jì)報(bào)告
評論
0/150
提交評論