版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 本科畢業(yè)設(shè)計(jì)</b></p><p><b> (20 屆)</b></p><p> 基于3D小波的可伸縮性立體圖像編碼研究</p><p> 所在學(xué)院 </p><p> 專(zhuān)業(yè)班級(jí) 電子
2、信息工程 </p><p> 學(xué)生姓名 學(xué)號(hào) </p><p> 指導(dǎo)教師 職稱(chēng) </p><p> 完成日期 年 月 </p><p><b> 摘 要</b>
3、</p><p> 隨著Internet網(wǎng)絡(luò)、無(wú)線通信技術(shù)以及交互式多媒體技術(shù)的飛速發(fā)展,數(shù)據(jù)、語(yǔ)音、多媒體業(yè)務(wù)的需求在不斷增加,人們對(duì)于這些業(yè)務(wù)的服務(wù)質(zhì)量的期望也越來(lái)越高。因?yàn)榱Ⅲw圖像具有相當(dāng)大的數(shù)據(jù)量,給信息的存儲(chǔ)和傳輸造成了極大的阻礙,因此,必須采取有效的編碼技術(shù)來(lái)降低數(shù)據(jù)量。近年來(lái),小波理論方面的研究的不斷深入,基于小波變換的圖像編碼技術(shù)已經(jīng)得到普遍地采用。其中,基于3D小波的視頻圖像編碼技術(shù)已經(jīng)引起廣
4、泛關(guān)注,并且表現(xiàn)出其優(yōu)異的性能和良好的發(fā)展前景。</p><p> 本文主要研究一種嵌入式最優(yōu)切斷塊編碼技術(shù)(3D-EBCOT)。先對(duì)輸入圖像進(jìn)行三維小波變換(3D-DWT),變換后形成不同頻率子帶,再把不同的子帶分割成不同的碼塊。然后提出一種3D-EBCOT小波編碼器,該編碼器對(duì)不同碼塊運(yùn)用相同的編碼算法。此編碼器產(chǎn)生的碼流具有分辨率可伸縮性,信噪比可伸縮性等優(yōu)點(diǎn),同時(shí)可以實(shí)現(xiàn)比特精確控制,滿足定速率傳輸應(yīng)用
5、的需要。這種編碼技術(shù)無(wú)需運(yùn)動(dòng)補(bǔ)償估計(jì),降低計(jì)算負(fù)荷和時(shí)間延遲。因?yàn)樘峁┓直媛?、時(shí)域和質(zhì)量上的可伸縮性,易于在互聯(lián)網(wǎng)上傳輸。實(shí)驗(yàn)結(jié)果表明,此圖像編碼可以很好的保證圖像恢復(fù)的質(zhì)量并能夠把圖像中不重要的信息進(jìn)行剔除,使圖像傳輸過(guò)程中的數(shù)據(jù)量得到有效壓縮。</p><p> 關(guān)鍵詞:EBCOT算法;小波變換;立體圖像編碼;碼塊</p><p><b> Abstract</b&
6、gt;</p><p> With the development of Internet network, wireless communication, and interactive multimedia, the demand of data, voice and multimedia business is increasing, and people’s expectation on the bus
7、iness’s quality of service is becoming higher. But the data quantity of stereo images is so large that it is necessary to be reduced due to the difficulty for storage and transmission. Nowadays, Image coding based on wa
8、velet transform has been used in all areas of image coding. Video coding based on thre</p><p> In this thesis, we research the technology of image coding based on Embedded Block Coding with Optimized Trunca
9、tion algorithm (3D-EBCOT). First, we need to make a 3d-wavelet transform (3D-DWT) for the putting image. It becomes some sub-bands which have different frequency. Different sub-bands divided into different code-block .Th
10、en an improved 3D-EBCOT coder is developed based on the EBCOT coding algorithm and the encoder can be full use of the same coding algorithm to encoding for different cod</p><p> Key Words: EBCOT algorithm;
11、wavelet transform; stereo image coding; code-block</p><p><b> 目 錄</b></p><p> 1 引 言- 1 -</p><p> 2 基于小波變換的立體圖像編碼原理分析- 3 -</p><p> 2.1小波變換原理- 3 -<
12、/p><p> 2.1.1連續(xù)小波變換- 3 -</p><p> 2.1.2 離散小波變換- 5 -</p><p> 2.2 小波的分解與重構(gòu)- 5 -</p><p> 2.3 圖像的小波變換編碼- 8 -</p><p> 2.3.1 DCT+矢量量化的壓縮- 8 -</p>
13、<p> 2.3.2 嵌入式零樹(shù)編碼EZW- 9 -</p><p> 2.3.3 基于等級(jí)樹(shù)集合分割編碼SPIHT- 10 -</p><p> 2.3.4 嵌入式最優(yōu)切斷塊編碼EBCOT- 10 -</p><p> 3 基于三維小波的圖像分解- 12 -</p><p> 3.1 二維小波變換- 12 -
14、</p><p> 3.2 三維小波變換- 13 -</p><p> 4 基于3D-EBCOT的立體圖像編碼- 16 -</p><p> 4.1 基于3D小波可伸縮性立體圖像編碼系統(tǒng)- 16 -</p><p> 4.2 質(zhì)量層- 16 -</p><p> 4.3 位平面編碼- 17 -&l
15、t;/p><p> 4.4 MQ熵編碼- 18 -</p><p> 5 實(shí) 驗(yàn) 結(jié) 果- 20 -</p><p> 6 結(jié)論與展望- 22 -</p><p> 6.1全文總結(jié)- 22 -</p><p> 6.2工作展望- 22 -</p><p> 致謝錯(cuò)誤!未定
16、義書(shū)簽。</p><p> 附錄 1 算法源程序- 26 -</p><p> 附錄 2 科研論文- 36 -</p><p><b> 1 引 言</b></p><p> 計(jì)算機(jī)、網(wǎng)絡(luò)技術(shù)和通信為核心的信息技術(shù)已成為現(xiàn)代社會(huì)的主流,推動(dòng)著社會(huì)從工業(yè)經(jīng)濟(jì)時(shí)代向信息潮流時(shí)代發(fā)展,人們?cè)絹?lái)越多的借助數(shù)字技術(shù)與計(jì)
17、算機(jī)技術(shù)來(lái)獲取和利用圖像信息。因數(shù)字化后的立體圖像[1]具有龐大的數(shù)據(jù)量,這與計(jì)算機(jī)硬件的存儲(chǔ)設(shè)備和網(wǎng)絡(luò)寬帶之間存在著很大的不對(duì)等。因此,這使得圖像信息的存儲(chǔ)和傳輸成為人們有效、正確的獲取這些信息的一個(gè)瓶頸。如何對(duì)立體圖像進(jìn)行有效、高質(zhì)量的編碼已經(jīng)成為今天一個(gè)重要技術(shù)。</p><p> 在多媒體、高清晰度電視、可視電話、視頻會(huì)議等視頻通信服務(wù)中,視頻編碼技術(shù)起著不可估量的作用,具有廣闊的應(yīng)用前景和巨大的市場(chǎng)價(jià)
18、值。在對(duì)圖像編碼的過(guò)程中,一方面要保證有較高的圖像恢復(fù)質(zhì)量,另一方面又要求在傳輸過(guò)程中能夠盡可能的降低碼率。因此,對(duì)于能夠兼具兩者特性的編碼方案一直是研究者追求的最終目標(biāo)。通過(guò)不斷的改進(jìn)理論和大量的實(shí)踐運(yùn)用,基于小波變換方法開(kāi)始被采用。由于小波變換具有DCT變換所不具有的時(shí)頻局部性等特性,將小波變換應(yīng)用于圖像處理等領(lǐng)域可取得比傳統(tǒng)的DCT變換更好的效果,尤其是在數(shù)字圖像編碼領(lǐng)域,基于小波變換的壓縮技術(shù)可取得比基于DCT變換更高壓縮比。隨
19、著對(duì)于小波變換研究的不斷深入,在近年來(lái)的編碼研究中,基本于三維小波變換的編碼算法[3]得到廣泛的關(guān)注。這不僅是因?yàn)樗哂芯植繒r(shí)頻特性,更能捕捉圖像的非平穩(wěn)信息,可以獲得更高的壓縮比,更重要的它支持可伸縮性編碼,且它的可分級(jí)編碼能力有效的避免了動(dòng)運(yùn)估計(jì),降低了復(fù)雜度,有效地防止了誤碼傳遞問(wèn)題。在眾多基于三維小波變換的圖像編碼技術(shù)中,嵌入式最優(yōu)切斷塊編碼(EBCOT)技術(shù)以其簡(jiǎn)單、高效的性能、良好的嵌入式碼流特性被學(xué)術(shù)界公認(rèn)為是一種非常&l
20、t;/p><p> 2 基于小波變換的立體圖像編碼原理分析</p><p> 在很長(zhǎng)的一段時(shí)間里,研究者對(duì)于信號(hào)分析的主要運(yùn)用工具是Fourier變換。但隨著不斷的深入研究,F(xiàn)ourier變換逐漸暴露了它在某些方面的局限性。Fourier變換作為一種純頻域的分析方法,它只能從信號(hào)的時(shí)域和頻域分別觀察,無(wú)法把兩者有機(jī)的結(jié)合在一起,這造成了時(shí)域和頻域的局部化矛盾,這對(duì)于分析非平穩(wěn)信號(hào)是非常不利
21、的。在今天的理論研究和應(yīng)用技術(shù)研究中,研究者已經(jīng)把重心投入到小波分析這個(gè)最新的領(lǐng)域。小波分析具有優(yōu)良的時(shí)頻局部化能力,它可以把每個(gè)信號(hào)表示成一個(gè)或有限個(gè)性質(zhì)良好的信號(hào)經(jīng)過(guò)平移和伸縮所得到信號(hào)的疊加,且伸縮特性可以決定信號(hào)的不同分辨率。還可以根據(jù)平移和伸縮得到的改變決定了這種表示可以聚焦于不同時(shí)刻,且這種方式對(duì)高頻分量采用取漸近式精細(xì)化的時(shí)域采樣步長(zhǎng),從而可以聚焦到信號(hào)的任意細(xì)節(jié)。小波變換[6][7]的這些突出優(yōu)點(diǎn),必將使其廣泛的應(yīng)用于社
22、會(huì)的各個(gè)科技領(lǐng)域。原由上講,傳統(tǒng)上使用Fourier變換,都可以用小波變換來(lái)代替。</p><p><b> 2.1小波變換原理</b></p><p> 2.1.1連續(xù)小波變換</p><p> 所謂上波(Wavelet),即存在于一個(gè)較小區(qū)域的波。小波函數(shù)就是對(duì)這些小波的數(shù)學(xué)定義。小波函數(shù)的數(shù)學(xué)定義是:設(shè) 錯(cuò)誤!未找到引用源。為一平方
23、可積函數(shù),即 錯(cuò)誤!未找到引用源。,若其傅立葉變換 錯(cuò)誤!未找到引用源。滿足條件,公式(2-1):</p><p> 錯(cuò)誤!未找到引用源。 (2-1)</p><p> 則稱(chēng) 錯(cuò)誤!未找到引用源。為一個(gè)基本小波或小波母函數(shù),并稱(chēng)上式是小波函數(shù)的可容許條件。根據(jù)可容許條件可知 錯(cuò)誤!未找到引用源。,小波具有正負(fù)交替的波動(dòng)性。</p><p
24、> 將小波線函數(shù) 錯(cuò)誤!未找到引用源。進(jìn)行伸縮和平移,設(shè)其伸縮因子為a,因?yàn)樯炜s性體現(xiàn)了一種尺度的變化,所以我們也把伸縮因子稱(chēng)為尺度因子,平移因子為 錯(cuò)誤!未找到引用源。,并記平移伸縮后的函數(shù)為 錯(cuò)誤!未找到引用源。,公式(2-2):</p><p><b> ?。?-2)</b></p><p> 并稱(chēng) 錯(cuò)誤!未找到引用源。為參數(shù)為a和 錯(cuò)誤!未找到引用源
25、。的小波基函數(shù)。由于a和 錯(cuò)誤!未找到引用源。均取連續(xù)變化的值,因此又稱(chēng)之為連續(xù)小波基函數(shù),它們是由同一個(gè)母函數(shù) 錯(cuò)誤!未找到引用源。經(jīng)伸縮和平移后得到的一組函數(shù)系列。</p><p> 將 錯(cuò)誤!未找到引用源??臻g的任意函數(shù) 錯(cuò)誤!未找到引用源。在小波基下進(jìn)行展開(kāi),稱(chēng)其為函數(shù) 錯(cuò)誤!未找到引用源。的連續(xù)小波變換CWT,變換式為,公式(2-3):</p><p><b> ?。?/p>
26、2-3)</b></p><p> 當(dāng)所有小波的容許性條件成立時(shí),其逆變換存在,公式(2-4):</p><p><b> (2-4)</b></p><p> 根據(jù)CWT的定義可知,小波變換同傅立葉變換一樣,也是一種積分變換,稱(chēng) 錯(cuò)誤!未找到引用源。為小波變換系數(shù)。由于小波基具有尺度和位移兩個(gè)參數(shù),因此將小波基展開(kāi)意味著將一
27、個(gè)時(shí)間函數(shù)投影到二維的時(shí)間-尺度相平面上,函數(shù)投影到小波變換域后,有利于提取某些特征。圖2-1直觀地體現(xiàn)了,連續(xù)小波變換伸縮性和平移性:</p><p> 圖2-1連續(xù)小波變換過(guò)程</p><p> 2.1.2 離散小波變換</p><p> 連續(xù)上波變換中的伸縮因子和平移因子都是連續(xù)變化的實(shí)數(shù),在應(yīng)用中需計(jì)算連續(xù)積分,在處理數(shù)字信號(hào)時(shí)很不方便。在實(shí)際問(wèn)題中,
28、我們常采用離散小波變換(DWT),即對(duì)連續(xù)小波基函數(shù)進(jìn)行離散化,這可以減少小波變換系數(shù)的冗余度。通常取 錯(cuò)誤!未找到引用源。,相應(yīng)位移間隔取 錯(cuò)誤!未找到引用源。,得到離散小波函數(shù),公式(2-5):</p><p><b> ?。?-5)</b></p><p> 把t軸用 錯(cuò)誤!未找到引用源。歸一化,就可以得到,公式(2-6):</p><p&
29、gt;<b> (2-6)</b></p><p> 對(duì)于任意函數(shù) 錯(cuò)誤!未找到引用源。的離散小波變換DWT為,公式(2-7):</p><p><b> (2-7)</b></p><p> 從對(duì)離散小波的理論研究中,可以證明從連續(xù)小波變換到離散小波變換,信號(hào)的基本信息并不會(huì)有所丟失,反而通過(guò)離散變換消除了因冗余
30、度造成的關(guān)聯(lián)性。同時(shí),還減少了計(jì)算的誤差。</p><p> 2.2 小波的分解與重構(gòu)</p><p> 小波變換所得的小波系數(shù)仍含有大量的冗余性,從數(shù)值計(jì)算和數(shù)據(jù)壓縮的角度來(lái)看,希望得到一組正交小波基。如何構(gòu)成一個(gè)正交基,可以通過(guò)多分辨率分析方法來(lái)實(shí)現(xiàn)。</p><p> 多分辨率分析(Multi-resolution Analysis MRA)又稱(chēng)多尺度
31、分析,這是建立在函數(shù)空間概念的理論。MRA不僅為正交小波基的構(gòu)造提供了簡(jiǎn)單的方法,而且為正交小波變換的快速算法提供了理論依據(jù)。</p><p> 定義函數(shù) 錯(cuò)誤!未找到引用源。為尺度函數(shù),若整數(shù)位移系列 錯(cuò)誤!未找到引用源。滿足正交關(guān)系,公式(2-8):</p><p><b> ?。?-8)</b></p><p> 定義由 錯(cuò)誤!未找到
32、引用源。在 錯(cuò)誤!未找到引用源??臻g張成的空間為 錯(cuò)誤!未找到引用源。,稱(chēng)為零尺度空間。對(duì)于 錯(cuò)誤!未找到引用源。空間的任意 錯(cuò)誤!未找到引用源。,公式(2-9):</p><p><b> (2-9)</b></p><p> 若將尺度函數(shù) 錯(cuò)誤!未找到引用源。同時(shí)進(jìn)行位移和尺度伸縮,得到一個(gè)函數(shù)集合,公式(2-10):</p><p>
33、<b> ?。?-10)</b></p><p> 把 錯(cuò)誤!未找到引用源。 在 錯(cuò)誤!未找到引用源??臻g張成的空間為j的尺度空間,對(duì)于 錯(cuò)誤!未找到引用源??臻g的任意 錯(cuò)誤!未找到引用源。,公式(2-11):</p><p><b> ?。?-11)</b></p><p> 因?yàn)槊恳粋€(gè)子空間之間是互補(bǔ),能夠形成嵌套
34、序列,給予了多分辨率分析非常豐富的特性:</p><p><b> 單調(diào)性:</b></p><p> …… 錯(cuò)誤!未找到引用源。… (2-12)</p><p><b> 逼近性:</b></p><p><b> ?。?-13)</b></
35、p><p><b> 位移不變性:</b></p><p><b> (2-14)</b></p><p><b> 伸縮性</b></p><p><b> ?。?-15)</b></p><p><b> 正交基存
36、在性:</b></p><p> 存在 錯(cuò)誤!未找到引用源。,使得 錯(cuò)誤!未找到引用源。 (2-16)</p><p> 我們把公式(2-16)中的 錯(cuò)誤!未找到引用源。,稱(chēng)為多分辨率的尺度函數(shù)。</p><p> 多分辨率分析理論讓我們?cè)谟懻撔盘?hào)的局部信息的時(shí)候 ,提供了一個(gè)相當(dāng)直觀的框架,這對(duì)非平穩(wěn)信號(hào)的處理十分重要。因非平穩(wěn)信號(hào)的頻
37、率隨時(shí)間而變化,我們把這種變化分成兩個(gè)部分:變化緩慢和變化快速。變化緩慢的部分針對(duì)信號(hào)的低頻部分,用于表示信號(hào)的主要信息;而變化快速的部分針對(duì)信號(hào)的高頻部分,用于表示信號(hào)的細(xì)節(jié)。研究者M(jìn)allat經(jīng)過(guò)深入的分析,提出了著名的塔式算法,即</p><p><b> ?。?-17)</b></p><p><b> (2-18)</b></p
38、><p> 公式中的 錯(cuò)誤!未找到引用源。、 錯(cuò)誤!未找到引用源。是由尺度函數(shù)和小波函數(shù)決定的,稱(chēng)為濾波器系數(shù)。其中, 錯(cuò)誤!未找到引用源。相當(dāng)于低通濾波器, 錯(cuò)誤!未找到引用源。相當(dāng)于高通濾波器。</p><p><b> 重構(gòu)公式:</b></p><p><b> ?。?-19)</b></p><
39、;p> 由塔式算法可以得出離散序列的多分辨率電路結(jié)構(gòu)圖,如圖2-2所示:</p><p> 圖2-2 三次分解電路結(jié)構(gòu)</p><p> 由分解電路結(jié)構(gòu)分析,這里把 錯(cuò)誤!未找到引用源??醋鞒跏茧x散序列,在分解過(guò)程中相當(dāng)于對(duì)這個(gè)序列進(jìn)行雙通道濾波。因 錯(cuò)誤!未找到引用源。具有低通性質(zhì),從中可知輸出為離散信號(hào)的概貌,而 錯(cuò)誤!未找到引用源。具在高通性質(zhì),從中可知輸出為離散信號(hào)的
40、高頻細(xì)節(jié)。</p><p> 同樣,我們可從重建公式中得出重建電路結(jié)構(gòu),如圖2-3所示:</p><p> 圖2-3 三次重建電路結(jié)構(gòu)圖</p><p> 2.3 圖像的小波變換編碼</p><p> 圖像信號(hào)經(jīng)過(guò)小波多分辨率分解之后被分解成了不同頻率的信號(hào)帶,根據(jù)這一特性,研究者提出了多種基于小波變換的編碼算法。其中,嵌入式零樹(shù)
41、編碼EZW算法、基于分層集分割編碼SPIHT算法[3][4]、DCT+矢量量化的壓縮算法和嵌入式最優(yōu)切斷塊EBCOT算法被普遍采用。而本文我們要研究是嵌入式最優(yōu)切斷塊編碼EBCOT算法,將在第三章節(jié)中詳細(xì)分析。</p><p> 2.3.1 DCT+矢量量化的壓縮</p><p> 經(jīng)過(guò)小波多分辨率分解之后,得到的低頻部分仍保持原圖像的概貌,因此可以使用JPEG的ADCT進(jìn)行編碼。對(duì)
42、于高頻部分,可以得到3個(gè)方向的子帶各自包含了原圖像中在水平、垂直和對(duì)角線方向的高頻分量。但大部分區(qū)域變化幅度較低,且能量較低,而能量高,變化大的區(qū)域集中在圖像內(nèi)物體的邊緣部分,并保持著物體的結(jié)構(gòu)特征,針對(duì)高頻帶內(nèi)的分布特點(diǎn)這里采用高效的矢量量化方法進(jìn)行編碼。</p><p> 2.3.2 嵌入式零樹(shù)編碼EZW</p><p> 根據(jù)小波系數(shù)的統(tǒng)計(jì)分布規(guī)律,提出了嵌入式零樹(shù)小波EZW算法
43、。什么是嵌入式編碼?指編碼器將待編碼的比特流按重要性的不同進(jìn)行排序,根據(jù)目標(biāo)碼率或失真度大小要求隨時(shí)結(jié)束編碼。此編碼包括三部分:小波多分辨率分解、零樹(shù)編碼、比特面逐步近似量化。</p><p><b> 小波多分辨率分解</b></p><p> 利用小波多分辨率分解,將原始圖像變換為一個(gè)低頻帶 錯(cuò)誤!未找到引用源。和 錯(cuò)誤!未找到引用源。個(gè)高頻帶部分。</
44、p><p><b> 零樹(shù)編碼</b></p><p> 首先用四杈樹(shù)建立不同分辨率下子帶系數(shù)的父子關(guān)系。對(duì)變換系數(shù)量化后,出現(xiàn)零樹(shù)的可能性很大,可以產(chǎn)生四類(lèi)不同的系數(shù):零樹(shù)根、正值、復(fù)值和孤立零值,如圖2-4所示:</p><p> 圖2-4 三級(jí)二維小波變換后的小波變換系數(shù)及樹(shù)型關(guān)系</p><p><b&
45、gt; 比特面逐步近似量化</b></p><p> 為了得到嵌入式碼流,用類(lèi)似于比特面的編碼傳輸,按2的冪次遞減的次序?qū)Ω髯訋У淖儞Q系數(shù)進(jìn)行掃描量化。根據(jù)作用的不同,分別進(jìn)行主掃描和從掃描。同時(shí),為提高編碼效率,采用自適應(yīng)算術(shù)編碼對(duì)掃描輸出符號(hào)進(jìn)行編碼。</p><p> 2.3.3 基于等級(jí)樹(shù)集合分割編碼SPIHT</p><p> 根據(jù)比特
46、面編碼等逐漸傳輸圖像編碼的原理和EZW的基礎(chǔ)上,提出了一種改進(jìn)的逐漸傳輸方法來(lái)傳送多分辨率分解后的變換圖像,即SPIHT算法[5]。主要分成兩個(gè)基本步驟:</p><p> 根據(jù)系數(shù)的大小進(jìn)行排序</p><p> 首先傳送每個(gè)系數(shù)的二進(jìn)制表示中的高有效位(MSB)</p><p> 設(shè)圖像像素為 錯(cuò)誤!未找到引用源。,根據(jù)每個(gè)像素系數(shù)所需的最少有效比特?cái)?shù),對(duì)
47、其進(jìn)行排序后得到一個(gè)結(jié)果 錯(cuò)誤!未找到引用源。,k代表 錯(cuò)誤!未找到引用源。的各個(gè)比特,并知道接收端落在區(qū)間 錯(cuò)誤!未找到引用源。內(nèi)系數(shù)的個(gè)數(shù) 錯(cuò)誤!未找到引用源。。</p><p><b> 具體的算法:</b></p><p><b> ?、?初始化:</b></p><p> 輸出 錯(cuò)誤!未找到引用源。,發(fā)送給解
48、碼端</p><p><b> ?、诜诸?lèi)與細(xì)化:</b></p><p> 分類(lèi):輸出 錯(cuò)誤!未找到引用源。,接著輸出相應(yīng) 錯(cuò)誤!未找到引用源。個(gè)像素的坐標(biāo)和值的符號(hào),必須要滿足:</p><p> 細(xì)化:輸出所有絕對(duì)值大于 錯(cuò)誤!未找到引用源。的系數(shù)的第n位比特,比特輸出的順序與分類(lèi)時(shí)各像素標(biāo)的順序相同。</p><p
49、><b> ③n減1,轉(zhuǎn)至②</b></p><p> 2.3.4 嵌入式最優(yōu)切斷塊編碼EBCOT</p><p> 該算法是一種對(duì)小波變換產(chǎn)生的子帶系數(shù)進(jìn)行量化和編碼的方法。對(duì)每一個(gè)子帶所具有的小波變換系數(shù)分成不同的碼塊,每一個(gè)碼塊都采用相同的編碼算法。對(duì)碼塊進(jìn)行編碼的過(guò)程中,不涉及其它碼塊信息。每一個(gè)碼塊可被截?cái)喑刹煌奈涣鳎行У淖龅搅藢?duì)位速率的控制
50、。圖像的最終碼塊位流以質(zhì)量層的形式組織,每一層都包含每一個(gè)碼塊對(duì)圖像質(zhì)量的貢獻(xiàn)。在編碼的過(guò)程中,要充分的考慮到位速率失真的問(wèn)題,選取最佳的位速率失真值。在圖像恢復(fù)的時(shí)候,盡最大可能保證圖像恢復(fù)的質(zhì)量。</p><p> 3 基于三維小波的圖像分解</p><p> 3.1 二維小波變換</p><p> 一維小波變換我們可以通過(guò)數(shù)字濾波器實(shí)現(xiàn),來(lái)完成對(duì)圖像信
51、號(hào)的分解。對(duì)于二維圖像信號(hào),可以用分別在水平和垂直方向進(jìn)行濾波的方法實(shí)現(xiàn)二維小波多分辨率的分解,如圖3-1所示:</p><p> 圖3-1 一級(jí)二維小波分解電路結(jié)構(gòu)</p><p> 圖3-2 一級(jí)二維小波分解子帶劃分結(jié)構(gòu)</p><p> 二維小波變換,每經(jīng)過(guò)一級(jí)分解,當(dāng)前頻帶的 錯(cuò)誤!未找到引用源。被分解為4個(gè)子帶 錯(cuò)誤!未找到引用源。、 錯(cuò)
52、誤!未找到引用源。、 錯(cuò)誤!未找到引用源。和 錯(cuò)誤!未找到引用源。。其中低頻帶 錯(cuò)誤!未找到引用源。反映了圖像的概貌,其余3個(gè)子帶分別反映圖像在水平、垂直和對(duì)角線方向的高頻細(xì)節(jié)信息,如上圖3-2所示。</p><p> 二維小波變換之后,要讓分解后的圖像信號(hào)進(jìn)行重組,如何有效的對(duì)信號(hào)進(jìn)行重組,關(guān)系到信號(hào)恢復(fù)之后的質(zhì)量問(wèn)題,如圖3-3、圖3-4所示:</p><p> 圖3-3 一
53、級(jí)二維小波重建電路結(jié)構(gòu)</p><p> 圖3-4 一級(jí)二維小波子帶重構(gòu)</p><p> 3.2 三維小波變換</p><p> 將二維小波變換[8][9]在時(shí)間軸上進(jìn)行擴(kuò)展就可以得三維小波變換。對(duì)于立體圖像而言,時(shí)間軸上的擴(kuò)展即為在視點(diǎn)方向上的擴(kuò)展。本文先對(duì)三維小波變換做深入地分析,先續(xù)文章會(huì)具體介紹三維小波變換在立體圖像編碼中的具體運(yùn)用。我
54、們可以說(shuō)三維小波變換,是圖像組幀間的一維小波變換和幀內(nèi)的二維小波變換。根據(jù)這種情況可以把三維小波變換分成二種類(lèi)型:一種先對(duì)幀圖像作幀內(nèi)二維小波變換,然后對(duì)變換后的圖像信號(hào)沒(méi)時(shí)間軸方向作一維小波變換。另一種是先進(jìn)行時(shí)間軸方向的一維小波變換,然后再作幀內(nèi)的二維小波變換。這兩種方式通過(guò)實(shí)驗(yàn)數(shù)據(jù)證明沒(méi)有明顯的區(qū)別,本方的三維小波變換主要針對(duì)第二種方法。</p><p> 三維小波變換可以清除圖像信號(hào)在空間和時(shí)間方向上的
55、相關(guān)性[10][11]。三維小波變換把圖像序列以 錯(cuò)誤!未找到引用源。幀為一組進(jìn)行劃分,即對(duì)圖像組先進(jìn)行時(shí)間軸方向小波分解,再針對(duì)低頻圖像組進(jìn)行空間方向小波分解,依次循環(huán)進(jìn)行。經(jīng)過(guò)三維小波分解后得到變換域中不同子帶的小波系數(shù)[12]。低頻子帶的系數(shù)幅值較大,能量較高,而高頻各子帶系數(shù)幅值小,能量也較小。根據(jù)這一特殊性質(zhì),在編碼時(shí),通過(guò)舍棄高頻子帶中那些幅值小的不重要系數(shù),從而消除冗余。</p><p> 一組序
56、列幀數(shù)為L(zhǎng)(假設(shè)L=8),每幀的像素點(diǎn)數(shù)M*N,經(jīng)過(guò)三級(jí)三維小波變換分解結(jié)構(gòu)圖,如圖3-5所示:</p><p> 圖3-5 三級(jí)三維小波分解子帶結(jié)構(gòu)</p><p> 對(duì)于一個(gè)L*M*N幀的圖像組,經(jīng)過(guò)三級(jí)三維小波變換之后可以形成22個(gè)子帶,結(jié)果如圖3-6所示:</p><p> 圖3-6 三級(jí)三維小波變換之后形成的子帶種類(lèi)</p>&l
57、t;p> 上面給出了三維小波變換對(duì)圖像序列幀的變換原理,那么對(duì)于立體圖像而言,三維小波變換又是如何實(shí)現(xiàn)的呢?在立體圖像的三維小波變換中,其原理是大致相同的。只是針對(duì)時(shí)間軸方向的小波變換,轉(zhuǎn)換成為在左、右圖像中視點(diǎn)方向的一維小波變換,然后在對(duì)其形成的低頻圖像進(jìn)行二維的小波變換,從而實(shí)現(xiàn)三維的小波變換。圖3-7所示為立體圖像經(jīng)過(guò)一級(jí)三維小波變換之后的分解結(jié)構(gòu)。</p><p> 圖3-7 立體圖像一級(jí)三維小
58、波變換分解結(jié)構(gòu)</p><p> 4 基于3D-EBCOT的立體圖像編碼</p><p> 3D-EBCOT是EBCOT算法[1][2]的三維擴(kuò)展,對(duì)每組圖像在時(shí)間和空間上的相關(guān)性有著更好的處理效果,產(chǎn)生的碼流具有著可伸縮性等特征。3D-EBCOT還可以對(duì)速率進(jìn)行控制,并且擁有較高的壓縮特性。</p><p> 4.1 基于3D小波可伸縮性立體圖像編碼系統(tǒng)&
59、lt;/p><p> 該編碼系統(tǒng)總體有兩部分組成:三維小波變換和3D-EBCOT編碼器。針對(duì)兩幅左右視圖地輸入,先進(jìn)行一維小變變換,然后再進(jìn)行空間二維小波變換,最后利用3D-EBCOT編碼算法進(jìn)行編碼。其解碼器的解碼則是執(zhí)行對(duì)稱(chēng)逆過(guò)程,整個(gè)系統(tǒng)結(jié)構(gòu)如圖4-1所示:</p><p> 圖4-1 三維小波編碼總體系統(tǒng)圖</p><p><b> 4.2 質(zhì)
60、量層</b></p><p> 為了使碼塊編碼之后形成的碼流具有“失真率可伸縮性”,有EBCOT算法中引入了“質(zhì)量層”的概念。圖像的最終碼塊位流以質(zhì)量層的形式存在,每一層都包含每一個(gè)碼塊對(duì)圖像質(zhì)量的貢獻(xiàn)度。特別需要強(qiáng)調(diào)的是一些編碼塊在某一層中可以為“空”。由質(zhì)量層構(gòu)成的碼流,使編碼后的壓縮數(shù)據(jù)具有漸進(jìn)傳輸?shù)男再|(zhì)。</p><p> 3D-EBCOT算法包含兩種不同的編碼器:
61、T1和T2編碼器[2]。該算法用T1編碼器處理經(jīng)過(guò)三維小波變換之后圖像的小波變換系統(tǒng),并在碼塊中嵌入截?cái)帱c(diǎn)。而T2編碼器則把來(lái)自T1編碼器的零碎碼塊放入到不同的質(zhì)量層中,與不同的位速率對(duì)應(yīng),同時(shí)生成實(shí)際的壓縮位流和文件。對(duì)3D-EBCOT的核心算法思想,我們可以做以下簡(jiǎn)潔的概括:EBCOT算法的核心組成是T1獨(dú)立塊編碼和T2碼流組裝,對(duì)三維小波變換后的各子帶,分割成大小固定的碼塊,把碼塊作為基本處理單元。對(duì)碼塊所具有的系數(shù)進(jìn)行量化處理,
62、并按照二進(jìn)制位分層。從最高有效位平面開(kāi)始,依次對(duì)每個(gè)位平面上的所有小波變換系數(shù)進(jìn)行位平面編碼。通過(guò)位平面編碼,可以生成上下文和0,1符號(hào)對(duì),然后針對(duì)上下文和符號(hào)對(duì),進(jìn)行MQ算術(shù)編碼,形成碼塊碼流,此時(shí)即可完成T1編碼過(guò)程。最后根據(jù)某些參數(shù)指標(biāo)如失真度等,按率失真最優(yōu)原則對(duì)碼塊碼流重新組裝,形成最終的壓縮碼流,完成T2碼流組裝過(guò)程。</p><p><b> 4.3 位平面編碼</b><
63、;/p><p> 位平面編碼是3D-EBCOT中的T1編碼器中的兩大組成部分之一。輸入是以符號(hào)-幅度格式表示小波變換子帶系數(shù),并提供給MQ二進(jìn)制算術(shù)編碼器進(jìn)行熵壓縮的數(shù)據(jù)位和對(duì)應(yīng)的內(nèi)容,結(jié)構(gòu)如圖4-2所示:</p><p> 圖4-2 位平面編碼器在T1編碼器中的位置</p><p> 每個(gè)編碼塊獨(dú)立使用熵編碼,這個(gè)編碼是基于上下文、二進(jìn)制、位平面算術(shù)編碼來(lái)實(shí)現(xiàn)
64、的。將量化后的編碼塊當(dāng)作有符號(hào)的整數(shù)矩陣,則來(lái)自每個(gè)小波變換系數(shù)的一位組成的一系列二進(jìn)制矩陣。第一個(gè)矩陣包含了所有數(shù)的MSB(最高位)。第二個(gè)矩陣包含所有數(shù)的下一個(gè)MSB,依此類(lèi)推最后的矩陣包含了所有數(shù)的最低位。每一個(gè)位平面編碼須要構(gòu)成3個(gè)通道,有的資料中把這3個(gè)通道稱(chēng)為子位平面。這三個(gè)通道分別為:重要性傳播通道、幅度精練通道和清理通道。編碼塊中每一個(gè)位平面都以一種特殊方式進(jìn)行掃描。對(duì)與有些部分的位平面編碼我們會(huì)采用3通道編碼方式來(lái)實(shí)現(xiàn)
65、。圖4-3是位平面編碼流程圖:</p><p> 圖4-3 位平面編碼流程圖</p><p><b> 4.4 MQ熵編碼</b></p><p> MQ(Multiple Quantization多路量化)編碼是一種用于二進(jìn)制數(shù)據(jù)的自適應(yīng)算術(shù)編碼。MQ編碼器是在Q編碼器的基礎(chǔ)上,改進(jìn)了符號(hào)概率估計(jì)系統(tǒng)。MQ二進(jìn)制算術(shù)編碼基于Elias編
66、碼的概率區(qū)間遞歸劃分。當(dāng)MQ編碼器收到一個(gè)二進(jìn)制符號(hào)時(shí),先將當(dāng)前的概率區(qū)間分割為兩個(gè)子區(qū)間,同時(shí)選擇兩個(gè)子區(qū)間中的某一個(gè)子區(qū)間,作為新的概率區(qū)間。然后,利用MPS(大概率符號(hào))或LPS(小概率符號(hào))來(lái)對(duì)子區(qū)間進(jìn)行分辨。若符號(hào)是MPS,則給予代碼串附加LPS子區(qū)間,并設(shè)概率區(qū)間寬度為MPS子區(qū)間;若符號(hào)是LPS,則不改變代碼串,設(shè)概率區(qū)間寬度為L(zhǎng)PS子區(qū)間。按判決輸入將此處理遞歸地重復(fù)下去。</p><p> 圖
67、4-4 MQ編碼器在T1編碼器中的位置</p><p> 圖4-5是MQ編碼流程圖:</p><p> 圖4-5 MQ編碼流程圖</p><p> 5 實(shí) 驗(yàn) 結(jié) 果</p><p> 為了驗(yàn)證3D-EBCOT算法可以做到對(duì)立體圖像的有效壓縮以及在圖像恢復(fù)過(guò)程中,可以保證圖像恢復(fù)的質(zhì)量。本文基于VC6.0軟件平臺(tái),對(duì)多幅灰度圖
68、像進(jìn)行了仿真,以下給出部分實(shí)驗(yàn)過(guò)程中得到的結(jié)果。對(duì)輸入house圖像的左圖像和右圖像進(jìn)行編碼和解碼實(shí)驗(yàn)。圖5-1(a)、圖5-1(b)、圖5-1(c)反映了,在去除小波變換后的高頻成分下,圖像的恢復(fù)質(zhì)量情況。實(shí)驗(yàn)結(jié)果中,我們可以得出一個(gè)結(jié)論:在對(duì)圖像進(jìn)行解碼恢復(fù)的時(shí)候,須要根據(jù)圖像恢復(fù)的需求,來(lái)對(duì)圖像中高頻成分進(jìn)行選擇性的剔除。如果選擇的不合適就會(huì)造成圖像恢復(fù)之后某些細(xì)節(jié)方面的模糊或者出現(xiàn)“馬賽克”效應(yīng)。</p><
69、p> 圖5-1原左圖像 圖5-2 原右圖像</p><p> 圖5-1(a)去除HH重構(gòu)圖 圖5-2(a)去除HH重構(gòu)圖 </p><p> 圖5-1(b)去除HH、HL、LH重構(gòu)圖 圖5-2(b)去除HH、HL、LH重構(gòu)圖</p><p> 圖5-
70、1(c) 重構(gòu)圖 圖5-2(c) 重構(gòu)圖</p><p><b> 6 結(jié)論與展望</b></p><p><b> 6.1全文總結(jié)</b></p><p> 本文主要圍繞基于三維小波變換的EBCOT編碼算法的研究。本全文重點(diǎn)講述了三維小波變換的原理和實(shí)現(xiàn)過(guò)程。文中我們
71、采用了視頻圖像組幀間的一維小波變換來(lái)消除幀間在時(shí)間上的相關(guān)性。同時(shí),對(duì)視頻圖像組幀內(nèi)運(yùn)用二維小波變換來(lái)消除幀內(nèi)在空間上的相關(guān)性。三維小波變換很好的做到了對(duì)冗余信息的消除作用。三維小波變換之后,圖像被分割成了不同頻率的子帶,文中我們運(yùn)用了EBCOT算法對(duì)子帶進(jìn)行編碼壓縮。首先,把不同的小波變換系數(shù)分割成不同的碼塊,對(duì)每一個(gè)碼塊進(jìn)行量化處理之后,運(yùn)用相同的編碼算法對(duì)其進(jìn)行編碼。在EBCOT編碼器中T1編碼器有效的實(shí)現(xiàn)了對(duì)圖像信息的壓縮,并能
72、夠控制位速率的選擇。從實(shí)驗(yàn)的結(jié)果中,我們可以很明顯的看出,EBCOT算法具有分辨率可伸縮性和信噪比可伸縮性等特性,但任何一種編碼算法都不會(huì)達(dá)到完美的程度,在實(shí)驗(yàn)過(guò)程中我還是發(fā)現(xiàn)了該編碼算法的一些不足之處,有待以后我們的改進(jìn)。</p><p><b> 6.2工作展望</b></p><p> 隨著人們對(duì)視覺(jué)享受要求的不斷提高,從過(guò)去的黑白圖像發(fā)展到現(xiàn)在的彩色圖像,
73、又從原有的平面視覺(jué)發(fā)展到現(xiàn)有的立體視覺(jué)。目前,針對(duì)于立體視覺(jué)方面的立體顯示技術(shù)已日益成熟,由于立體圖像能提供深度信息,在機(jī)器視覺(jué)、遠(yuǎn)程控制、遠(yuǎn)程教學(xué)等方面有著巨大的實(shí)際應(yīng)用價(jià)值。在不遠(yuǎn)的將來(lái)立體成像系統(tǒng)有望取代在工業(yè)、商業(yè)、教育和娛樂(lè)領(lǐng)域的二維成像系統(tǒng)??梢?jiàn),基于三維小波變換的編碼算法將會(huì)在更多的視頻壓縮中運(yùn)用。</p><p> 在以后的工作中,我們要做的就是不斷的對(duì)算法的改進(jìn)。就本文中所涉及到的算法,我們可
74、以做以下的改進(jìn):本文中的EBCOT算法沒(méi)有考慮人的視覺(jué)感知特性,對(duì)整張圖像采用相同的編碼策略,從而使各個(gè)對(duì)象的壓縮精度基本相同,在有些場(chǎng)合就難以發(fā)揮最高的編碼效率,因此,今后的我們的研究重點(diǎn)可以轉(zhuǎn)向?qū)χ矫娴膬?yōu)化。</p><p><b> 參考文獻(xiàn)</b></p><p> [1] 趙偉強(qiáng). JPEG2000的核心算法研究[J]. 電子學(xué)報(bào),2006,2,23
75、(1):51~52.</p><p> [2] 楊方洲, 劉銳. JPEG2000中的EBCOT算法簡(jiǎn)介[J]. 信息技術(shù),2004,5:38~42.</p><p> [3] 張勇東, 李桂苓. 基于3D-SPIHT的立體視頻圖像壓縮編碼[J]. 電子與信息學(xué)報(bào), 2002, 24(10):1310~1315.</p><p> [4] 史文婷. 基于
76、三維小波變換的3D-SPIHT視頻編碼技術(shù)研究[D]. 南京郵電大學(xué),2009.</p><p> [5] 侯穎. 基于3D-SPIHT視頻編碼算法概述[C]. 陜西省科學(xué)技術(shù)協(xié)會(huì). 中國(guó)科協(xié)第五屆青年學(xué)術(shù)年會(huì)陜西衛(wèi)星會(huì)議文集, 西安: 西安地圖出版社,2005,1:351~353.</p><p> [6] 粘永健,吳樂(lè)華,何世彪. 基于三維小波變換的視頻圖像編碼研究[J]. 影
77、像技術(shù),2006, 2,12(2):26~28. [7] 伍鵬,張妙蘭,李像霖. 基于分塊三維小波變換的視頻圖像序列編碼方法的研究[J]. 電子與信息學(xué)報(bào),2001.2,23(2):125~133.</p><p> [8] 榮憲偉,張偉光,于曉艷,安麗娜. 基于小波變換的立體圖像編碼[J].哈爾濱師范大學(xué)自然科學(xué)學(xué)報(bào),2009,25(4):48~51.</p><p> [9]
78、 張宗平,劉貴忠,侯興松. 一種改進(jìn)的三維小波視頻編碼[J]. 西安交通大學(xué)學(xué)報(bào),2001.6,35(6):595~599.</p><p> [10] 羅一平. 真正三維小波變換技術(shù)及在視頻圖像編碼中的應(yīng)用[J]. 光電工程,2002, 2,29(2):55~58.</p><p> [11] 朱仲杰,陳偕雄,吳訓(xùn)威等. 立體視頻編碼中的關(guān)鍵技術(shù)研究[D]. 浙江大學(xué),2003.&l
79、t;/p><p> [12] 郭大波,盧朝陽(yáng),何華君,焦衛(wèi)東. 一種新的立體視差估計(jì)算法[J]. 西安電子科技大學(xué)學(xué)報(bào),2007,6,34(3):337~341.</p><p> [13] Ashraf A.Kassim,Eng Hong Tan,Wei Siong Lee.3D Color Set Partitioning in Hierarchical Tree[J].Circuit
80、s Syst Signal Process,2009,2,28 (2):41~53.</p><p> [14] Yann Gaudeau,Jean-Marie Moureaux. Lossy compression of volumetric medical images with 3D dead-zone lattice vector quantization[J].Ann.Telecommun,2009,
81、6,64(3):359~367.</p><p> 附錄 1 算法源程序</p><p><b> 主函數(shù):</b></p><p> void main()</p><p><b> {</b></p><p> unsigned char *Image0, *I
82、mage1;</p><p> unsigned char Fheadg[54],unsigdata;</p><p> char Pallette[1024];</p><p> int Row,Col,K,N,i,j;</p><p> long Index;</p><p> FILE *input,*
83、output,*inter;</p><p> Image0=(unsigned char *)calloc (720*720,sizeof(unsigned char));</p><p> Image1=(unsigned char *)calloc (720*720,sizeof(unsigned char)); </p><p> if ((input
84、 = fopen("c2.raw","rb")) == NULL)</p><p> {printf("cannot open file\n");</p><p><b> return;</b></p><p><b> }</b></p>
85、<p> if((output = fopen("97wave.raw","wb+")) == NULL)</p><p> {printf("cannot open file\n");</p><p><b> return;</b></p><p><b&
86、gt; }</b></p><p> if(!ReadGrayImage("house.bmp",&Row,&Col,Image,Fheadg,Pallette))</p><p> { printf("cannot open file\n");</p><p><b>
87、 return;</b></p><p><b> }</b></p><p> Scanf(“%d”,&N)</p><p> for(i = 0;i<Row;i++)</p><p> for(j = 0;j<Col;j++)</p><p> {
88、 Index=i*Col+j;</p><p> fread(&unsigdata, 1,1,input);</p><p> if(Image1[Index]==N)</p><p> Buffer[i+8][j+8] = (float) unsigdata;</p><p> else Buffer[i+8][j+
89、8] =0;</p><p><b> }</b></p><p><b> //DC變換</b></p><p> for(i = 0;i<Row;i++)//行</p><p><b> {</b></p><p> for(j =
90、 0;j<Col;j++)//列</p><p> {Index=i*Col+j;</p><p> if(Image1[Index]==N)</p><p> Buffer[i+8][j+8] = (Buffer[i+8][j+8]-128);</p><p><b> }</b></p>
91、<p><b> }</b></p><p> decode_allsubband(Region_bufferout,Row,Col,N,Image1);</p><p> for(i=0;i<(Row>>3);i++)</p><p> for(j=0;j<(Col>>3);j++)&
92、lt;/p><p> Interleave[i+8][j+8]=(float)(Region_bufferout[i][j]-0.5);</p><p><b> EBCOT編碼:</b></p><p> #include <stdio.h></p><p> #include "mq_cod
93、e.h"</p><p> #define inline</p><p> typedef struct</p><p> //上下文狀態(tài)的相關(guān)信息</p><p><b> {</b></p><p> unsigned char I; //values in the r
94、ange 0..46</p><p> unsigned char MPS; //MPS(either 0 or 1)</p><p> } ArithEncContext;</p><p> //算術(shù)編碼器所需要的狀態(tài)信息 </p><p> static unsigned long int C; //下
95、限寄存器</p><p> static unsigned long int A; //間隔長(zhǎng)度寄存器</p><p> static long int CT; //向下計(jì)數(shù)器</p><p> static unsigned char B; </p><p> static int fir
96、stByte; </p><p><b> //本文件模塊。</b></p><p> // The array of allowable context states </p><p> #define MAXCONTEXT 18</p><p> static ArithEncContex
97、t contexts[MAXCONTEXT+1];//19個(gè)(I,MPS)</p><p> #define RUNLENGTH_CX 17</p><p> #define UNIFORM_CX 18</p><p> static unsigned long int Qe[47] =</p><p> {//Qe值的十六進(jìn)制表示&
98、lt;/p><p> 0x5601UL, 0x3401UL, 0x1801UL, 0x0ac1UL, 0x0521UL, 0x0221UL, 0x5601UL,</p><p> 0x5401UL, 0x4801UL, 0x3801UL, 0x3001UL, 0x2401UL, 0x1c01UL, 0x1601UL,</p><p> 0x5601UL, 0x54
99、01UL, 0x5101UL, 0x4801UL, 0x3801UL, 0x3401UL, 0x3001UL,</p><p> 0x2801UL, 0x2401UL, 0x2201UL, 0x1c01UL, 0x1801UL, 0x1601UL, 0x1401UL,</p><p> 0x1201UL, 0x1101UL, 0x0ac1UL, 0x09c1UL, 0x08a1UL,
100、0x0521UL, 0x0441UL,</p><p> 0x02a1UL, 0x0221UL, 0x0141UL, 0x0111UL, 0x0085UL, 0x0049UL, 0x0025UL,</p><p> 0x0015UL, 0x0009UL, 0x0005UL, 0x0001UL, 0x5601UL</p><p><b> };<
101、/b></p><p> static unsigned char SWITCH[47] =</p><p><b> {</b></p><p> 1, 0, 0, 0, 0, 0,</p><p> 1, 0, 0, 0, 0, 0, 0, 0,</p><p> 1, 0,
102、0, 0, 0, 0, 0, 0,</p><p> 0, 0, 0, 0, 0, 0, 0, 0,</p><p> 0, 0, 0, 0, 0, 0, 0, 0,</p><p> 0, 0, 0, 0, 0, 0, 0, 0,</p><p><b> 0</b></p><p>&
103、lt;b> };</b></p><p> static unsigned char NMPS[47] =</p><p><b> {</b></p><p> 1 , 2 , 3 , 4 , 5 , 38 ,</p><p> 7 , 8 , 9 , 10 , 11 , 12 , 13 ,
104、 29 ,</p><p> 15 , 16 , 17 , 18 , 19 , 20 , 21 , 22 ,</p><p> 23 , 24 , 25 , 26 , 27 , 28 , 29 , 30 ,</p><p> 31 , 32 , 33 , 34 , 35 , 36 , 37 , 38 ,</p><p> 39 , 4
105、0 , 41 , 42 , 43 , 44 , 45 , 45 ,</p><p><b> 46</b></p><p><b> };</b></p><p> static unsigned char NLPS[47] =</p><p><b> {</b>&l
106、t;/p><p> 1 , 6 , 9 , 12 , 29 , 33 ,</p><p> 6 , 14 , 14 , 14 , 17 , 18 , 20 , 21 ,</p><p> 14 , 14 , 15 , 16 , 17 , 18 , 19 , 19 ,</p><p> 20 , 21 , 22 , 23 , 24 , 25
107、 , 26 , 27 ,</p><p> 28 , 29 , 30 , 31 , 32 , 33 , 34 , 35 ,</p><p> 36 , 37 , 38 , 39 , 40 , 41 , 42 , 43 ,</p><p><b> 46</b></p><p><b> };</b
108、></p><p> void ArithEncInit()</p><p><b> {</b></p><p><b> int i;</b></p><p> A = 0x8000u;</p><p><b> C = 0;</b>
109、</p><p> B = 0; // Assume that the byte prior to starting is 0</p><p> CT = 12;//表示在寄存器中有三個(gè)隔離比特,他們需要在達(dá)到字節(jié)被移開(kāi)的區(qū)域之前被填入</p><p> if(B==0XFF) CT=13;</p><p> firstByte =
110、1;//1 if the current byte is the first output byte</p><p> //初始化所有的上下文狀態(tài)</p><p> for (i = 0; i <= MAXCONTEXT; i++)//18</p><p><b> {</b></p><p> conte
111、xts[i].I = 0;</p><p> contexts[i].MPS = 0;</p><p><b> }</b></p><p><b> } </b></p><p> static inline void ByteOutRight(int J)</p><
112、p><b> {</b></p><p> if (!firstByte)//不是第一個(gè)輸出的字節(jié)標(biāo)志</p><p> TransmitByte(B,J);</p><p> else//the current byte is the first output byte</p><p> firstBy
113、te = 0;</p><p> B = (unsigned char)((C >> 20) & 0xFF);//B是C寄存器中的7個(gè)b 和進(jìn)位位c </p><p> C = C & 0xFFFFF;</p><p><b> CT = 7;</b></p><p&
114、gt;<b> } </b></p><p> static inline void ByteOutLeft(int J)</p><p><b> {</b></p><p> if (!firstByte)</p><p> TransmitByte(B,J);</p>
115、<p> else//the current byte is the first output byte</p><p> firstByte = 0;</p><p> B = (unsigned char)((C >> 19) & 0xFF);</p><p> C = C & 0x7FFFF;</p>
116、<p><b> CT = 8;</b></p><p><b> }</b></p><p> static inline void ByteOut(int J)</p><p><b> {</b></p><p> /* This test sequ
117、ence might speed up process */</p><p> if (B != 0xFF)</p><p><b> {</b></p><p> if (C < 0x8000000)</p><p> ByteOutLeft(J);</p><p><b&g
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于3d小波的可伸縮性立體圖像編碼研究【開(kāi)題報(bào)告】
- 基于3d小波的可伸縮性立體圖像編碼研究【任務(wù)書(shū)】
- 基于小波的質(zhì)量可伸縮性視頻編碼技術(shù)研究.pdf
- 基于小波變換的可伸縮性視頻編碼系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 彩色圖像可伸縮性壓縮編碼研究.pdf
- 可伸縮性圖像編碼方法的綜述【文獻(xiàn)綜述】
- 基于光度立體圖像的3D模型重建算法研究.pdf
- 基于小波變換的高效可伸縮視頻和圖像編碼研究.pdf
- 基于小波的可伸縮視頻編碼.pdf
- 可伸縮性視頻編碼的轉(zhuǎn)碼及其應(yīng)用.pdf
- 基于MPEG-4的視頻可伸縮性編碼的研究.pdf
- 基于3D小波的可分級(jí)視頻編碼算法研究.pdf
- 3D立體圖像視覺(jué)舒適預(yù)測(cè)和改善的研究.pdf
- 基于db2小波的可伸縮性視頻編解碼系統(tǒng)研究.pdf
- 嵌入式立體圖像編碼中的碼率控制算法研究【畢業(yè)論文】
- 可伸縮性視頻編碼中的碼率控制算法研究.pdf
- 基于MPEG-4的可伸縮性視頻壓縮編碼研究.pdf
- 基于3D小波的多描述可分級(jí)視頻編碼.pdf
- 基于3帶小波提升與運(yùn)動(dòng)補(bǔ)償?shù)目缮炜s視頻編碼研究.pdf
- 基于.net平臺(tái)的可伸縮性研究與實(shí)現(xiàn)
評(píng)論
0/150
提交評(píng)論