基于JPEG2000的一種新型率控制方法
摘要:JPEG2000靜止圖像壓縮標(biāo)準(zhǔn)的壓縮后率失真優(yōu)化算法雖然能保持較好的圖像質(zhì)量,但其計(jì)算量大、內(nèi)存占用多。文中提出了一種圖像質(zhì)量基本相同于率失真優(yōu)化的、基于先驗(yàn)信息掃描的、新的率控制方法。該方法可以有效地減少熵編碼時(shí)的計(jì)算復(fù)雜度并降低內(nèi)存占用率。
關(guān)鍵詞:JPEG2000;圖像壓縮;率失真優(yōu)化;掃描
0 引言
隨著多媒體和網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,在傳輸圖像或視頻信息時(shí),如何有效地運(yùn)用信道帶寬已經(jīng)成為現(xiàn)今討論的主要話題之一。率控制是圖像或視頻編碼中控制比特率必須采用的方法,其最終目標(biāo)就是將目標(biāo)比特率合理的分配到圖像或視頻中去,以求得到最小的失真。
JPEG2000是一種新的靜止圖像壓縮編碼國際標(biāo)準(zhǔn)。由于其采用了與其他圖像壓縮標(biāo)準(zhǔn)不同的全新結(jié)構(gòu),因此,JPEG2000擁有壓縮比高,同時(shí)支持有損和無損壓縮,碼流可隨機(jī)存取和處理等優(yōu)點(diǎn)。JPEG2000的編碼算法包括離散小波變換(DWT)和位平面熵編碼。在JPEG2000中可通過嘗試不同的量化步長來進(jìn)行率控制:而通過位平面MQ編碼器,JPEG2000則可以精確簡單的控制比特率,以達(dá)到需要的比特率。JPEG2000的核心編碼方式是嵌入式碼塊編碼(EBCOT)。其最優(yōu)截?cái)嗍鞘箞D像失真最小化的一種率控制方法。這一過程是在小波系數(shù)經(jīng)過熵編碼(壓縮)后,所以也稱為壓縮后的率失真優(yōu)化(PCRD)。
根據(jù)所有壓縮后數(shù)據(jù)的實(shí)際率失真信息,PCRD技術(shù)就能計(jì)算出目標(biāo)碼流的圖像最小化失真。但是這還需要圖像所有的碼流數(shù)據(jù),事實(shí)
上,很多數(shù)據(jù)是不會(huì)被輸出的,這一過程還會(huì)占用很多內(nèi)存和計(jì)算量。為此,本文提出了一種新的率控制方法,可以有效減少計(jì)算量和內(nèi)存使用量,同時(shí)可以獲得相似的效果。
1 JPEG2000簡介
作為一種新的國際壓縮標(biāo)準(zhǔn),通常可以把JPEG2000看作小波變換(DWT)、標(biāo)量量化、比特系數(shù)建模、算術(shù)編碼、壓縮后率失真優(yōu)化和碼流組織等六個(gè)部分。
小波變換可將圖像分解為LL、HL、LH和HH四種子帶,并可以進(jìn)行多級分解。LL是圖像低頻信息所在,其他的三種子帶包含的是圖像高頻信息。這些小波系數(shù)經(jīng)過量化后,即可進(jìn)入EBCOT編碼過程。
1.1 熵編碼
熵編碼過程一般包括系數(shù)建模和算術(shù)編碼。它本質(zhì)上是一個(gè)位平面編碼的過程。在這個(gè)過程中,每個(gè)編碼塊都被獨(dú)立編碼,并且都經(jīng)過三個(gè)編碼通道,這三個(gè)編碼通道分別是重要性通道、幅值精煉通道和清零通道。這些編碼通道將會(huì)根據(jù)比特系數(shù)模型尋找每個(gè)比特系數(shù)的上下文,然后對這個(gè)比特系數(shù)進(jìn)行基于上下文的算術(shù)編碼(MQ)。
1.2 碼率控制
碼率控制涉及量化、熵編碼和碼流組織三個(gè)部分。量化就是量化步長根據(jù)要求的壓縮率反復(fù)調(diào)整以達(dá)到目標(biāo)碼率,這是一種交互式控制方式。另外一種采用壓縮后處理的方法是在碼流數(shù)據(jù)中對每個(gè)編碼塊設(shè)置一個(gè)截?cái)帱c(diǎn),這個(gè)截?cái)帱c(diǎn)可決定每個(gè)碼塊的編碼通道編碼的數(shù)據(jù)量。這就是JPEG2000的壓縮后率失真優(yōu)化。其具體算法如下:
首先設(shè)編碼塊Bi的碼率為、失真為,最終壓縮數(shù)據(jù)的目標(biāo)碼率為Rmax,則每個(gè)編碼塊的截?cái)帱c(diǎn)可以自由選擇,它只需要最后的碼率滿足下式即可:
如果用每個(gè)編碼塊的失真之和來表示重建圖像的失真,則重建圖像的失真為:
這樣,在截點(diǎn)ni,其率失真斜率為:
然后,利用拉格朗日乘子法,就可以求出最優(yōu)截?cái)帱c(diǎn)λ,從而實(shí)現(xiàn)最優(yōu)截?cái)嗑幋a。
評論