<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 一種基于JPEG2000的新型率控制方法

一種基于JPEG2000的新型率控制方法

作者: 時(shí)間:2010-10-20 來(lái)源:網(wǎng)絡(luò ) 收藏

0 引言

隨著(zhù)多媒體和網(wǎng)絡(luò )技術(shù)的不斷發(fā)展,在傳輸圖像或視頻信息時(shí),如何有效地運用信道帶寬已經(jīng)成為現今討論的主要話(huà)題之一。率控制是圖像或視頻編碼中控制比特率必須采用的方法,其最終目標就是將目標比特率合理的分配到圖像或視頻中去,以求得到最小的失真。

是一種新的靜止編碼國際標準。由于其采用了與其他標準不同的全新結構,因此,擁有壓縮比高,同時(shí)支持有損和無(wú)損壓縮,碼流可隨機存取和處理等優(yōu)點(diǎn)。的編碼算法包括離散小波變換(DWT)和位平面熵編碼。在JPEG2000中可通過(guò)嘗試不同的量化步長(cháng)來(lái)進(jìn)行率控制:而通過(guò)位平面MQ編碼器,JPEG2000則可以精確簡(jiǎn)單的控制比特率,以達到需要的比特率。JPEG2000的核心編碼方式是嵌入式碼塊編碼(EBCOT)。其最優(yōu)截斷是使圖像失真最小化的一種率控制方法。這一過(guò)程是在小波系數經(jīng)過(guò)熵編碼(壓縮)后,所以也稱(chēng)為壓縮后的(PCRD)。

根據所有壓縮后數據的實(shí)際率失真信息,PCRD技術(shù)就能計算出目標碼流的圖像最小化失真。但是這還需要圖像所有的碼流數據,事實(shí)上,很多數據是不會(huì )被輸出的,這一過(guò)程還會(huì )占用很多內存和計算量。為此,本文提出了一種新的率控制方法,可以有效減少計算量和內存使用量,同時(shí)可以獲得相似的效果。

1 JPEG2000簡(jiǎn)介

作為一種新的國際壓縮標準,通??梢园袹PEG2000看作小波變換(DWT)、標量量化、比特系數建模、算術(shù)編碼、壓縮后和碼流組織等六個(gè)部分。

小波變換可將圖像分解為L(cháng)L、HL、LH和HH四種子帶,并可以進(jìn)行多級分解。LL是圖像低頻信息所在,其他的三種子帶包含的是圖像高頻信息。這些小波系數經(jīng)過(guò)量化后,即可進(jìn)入EBCOT編碼過(guò)程。

1.1 熵編碼

熵編碼過(guò)程一般包括系數建模和算術(shù)編碼。它本質(zhì)上是一個(gè)位平面編碼的過(guò)程。在這個(gè)過(guò)程中,每個(gè)編碼塊都被獨立編碼,并且都經(jīng)過(guò)三個(gè)編碼通道,這三個(gè)編碼通道分別是重要性通道、幅值精煉通道和清零通道。這些編碼通道將會(huì )根據比特系數模型尋找每個(gè)比特系數的上下文,然后對這個(gè)比特系數進(jìn)行基于上下文的算術(shù)編碼(MQ)。

1.2 碼率控制

碼率控制涉及量化、熵編碼和碼流組織三個(gè)部分。量化就是量化步長(cháng)根據要求的壓縮率反復調整以達到目標碼率,這是一種交互式控制方式。另外一種采用壓縮后處理的方法是在碼流數據中對每個(gè)編碼塊設置一個(gè)截斷點(diǎn),這個(gè)截斷點(diǎn)可決定每個(gè)碼塊的編碼通道編碼的數據量。這就是JPEG2000的壓縮后。其具體算法如下:
首先設編碼塊Bi的碼率為16a.JPG、失真為16b.JPG,最終壓縮數據的目標碼率為Rmax,則每個(gè)編碼塊的截斷點(diǎn)可以自由選擇,它只需要最后的碼率滿(mǎn)足下式即可:

16d.JPG

如果用每個(gè)編碼塊的失真之和來(lái)表示重建圖像的失真,則重建圖像的失真為:

16e.JPG
這樣,在截點(diǎn)ni,其率失真斜率為:

16f.JPG

然后,利用拉格朗日乘子法,就可以求出最優(yōu)截斷點(diǎn)λ,從而實(shí)現最優(yōu)截斷編碼。

2 新的率控制方法

最優(yōu)截斷點(diǎn)λ只能通過(guò)所有截斷點(diǎn)實(shí)際的率失真斜率來(lái)求得,這就需要熵編碼過(guò)程編碼所有的位平面數據和所有編碼過(guò)的碼流都存儲在存儲器中,而且,即使是那些在碼流控制后不需要傳輸的碼流,也要編碼和存儲。然而,通過(guò)研究發(fā)現:如果將每個(gè)截斷點(diǎn)的率失真斜率按遞減的方式進(jìn)行整理,這個(gè)排列順序便與位平面層數有關(guān)。一般情況下,位平面高的率失真斜率大于位平面低的;其次,先編碼的通道的率失真斜率大于后編碼的通道。

基于以上兩點(diǎn),可先圖像的位平面信息,在編碼那些率失真斜率大的。而后面不重要的比特就可以不進(jìn)行編碼。這個(gè)方法的過(guò)程首先是根據下式計算出每個(gè)碼塊Bi的最高位平面數Pi;

16g.JPG

其中是碼塊Bi中的最大系數。之后,在求出最大的平面數:

16h.JPG

每一個(gè)碼塊的順序圖如圖l所示。對于每一個(gè)的碼塊,一般有如下三個(gè)條件:

16i.JPG

(1)首先要判斷Pi=Pmax是否成立,如果成立,編碼這個(gè)編碼塊未編碼的位平面通道,然后Pi減1,之后檢查條件(2)。否則檢查條件(3);

(2)如果累計的碼率大于目標碼率,則立即退出編碼。否則,檢查條件(3);

(3)如果這是最后一個(gè)編碼塊,那么Pmax減1,然后進(jìn)入下一個(gè)層的編碼。否則繼續掃描下個(gè)編碼塊。
由于上述條件(2)滿(mǎn)足的條件16j.JPG,故不會(huì )使碼率超過(guò)壓縮率的限制。而條件(1)、(3)則充分考慮了位平面和編碼通道的重要性,因而可確保得到最佳的圖像質(zhì)量。

3 實(shí)驗結果

這里,我們用512x512的lena圖像進(jìn)行測試,表1記錄了PCRD與新方法在計算量和內存使用量上的對比。表2所列是兩種方法在PSNR上的對比。兩種方法的解壓圖像效果如圖2所示。

16k.JPG

4 結束語(yǔ)

通過(guò)對JPEG2000的分析,本文提出了一種通過(guò)估計率失真信息來(lái)控制碼率的方法。該方法由于不需要對所有的數據進(jìn)行編碼,因此,可在保持圖像質(zhì)量的同時(shí),還可以有效減少冗余計算量和內存占用量。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>