H.264中二進(jìn)制化編碼器的FPGA實(shí)現(xiàn)
在H.264標(biāo)準(zhǔn)中。語(yǔ)法元素較多,約有20多種,而二進(jìn)制轉(zhuǎn)換使這些語(yǔ)法元素的二進(jìn)制表示接近最小冗余編碼,以減少碼流。
CABAC中二進(jìn)制轉(zhuǎn)換有4種基本類型:一元(U)編碼、截?cái)嘁辉?TU)編碼、指數(shù)哥倫布(EGK)編碼和定長(zhǎng)(FL)編碼。另外,還可通過(guò)這幾種編碼方式的串聯(lián)進(jìn)行二進(jìn)制化轉(zhuǎn)換。
2.1 一元(U)二進(jìn)制轉(zhuǎn)換方案
對(duì)于一個(gè)無(wú)符號(hào)語(yǔ)法元素x≥0,CABAC中的一元碼字是由x個(gè)“1”串連并在結(jié)尾處加上“0”,因此一元二進(jìn)制化的長(zhǎng)度是x+1,如表1所示,其中Binldx表示字符串的索引。一般來(lái)講,U二進(jìn)制轉(zhuǎn)換主要用于參考幀隊(duì)列預(yù)測(cè)語(yǔ)法元素的編碼。本文引用地址:http://www.ex-cimer.com/article/191909.htm
2.2 截?cái)嘁辉?TU)二進(jìn)制轉(zhuǎn)換方案
截?cái)嘁辉M(jìn)制化對(duì)語(yǔ)法元素的值有要求,只對(duì)不大于某個(gè)界限值(S)的語(yǔ)法元素進(jìn)行二進(jìn)制化。若語(yǔ)法元素值小于S,則其二進(jìn)制化結(jié)果同一元二進(jìn)制化;若語(yǔ)法元素值等于S,則其結(jié)果為S個(gè)“1”。一般,TU二進(jìn)制轉(zhuǎn)換主要用于幀內(nèi)色度預(yù)測(cè)模式的編碼。
2.3 指數(shù)哥倫布(EGK)二進(jìn)制轉(zhuǎn)換方案
EGK編碼最初由Teuhola在上下文控制長(zhǎng)度編碼方案中提出,是由Golomb編碼派生的。EGK編碼由一個(gè)前綴和后綴碼字串聯(lián)構(gòu)成,其前綴部分由一元碼字l(x)=[log2(x/2k+1)]的值組成,其后綴部分由x+2k(1-2l(x))計(jì)算得出。一般,EGK二進(jìn)制轉(zhuǎn)換主要用于殘差以外數(shù)據(jù)的編碼,具體情形視編碼器的設(shè)置而定。EGK二進(jìn)制化隨后取值的不同而不同,k的取值為非負(fù)整數(shù)。
2.4 固定長(zhǎng)度(FL)二進(jìn)制轉(zhuǎn)換方案
固定長(zhǎng)度二進(jìn)制化適用于語(yǔ)法元素值x小于界限值S的情況。方法為直接用x值的二進(jìn)制表示形式作為其二進(jìn)制化結(jié)果,長(zhǎng)度同定為:lFL=[log2S]的向上取值。一般,F(xiàn)L二進(jìn)制轉(zhuǎn)換被用于統(tǒng)一分配的語(yǔ)法元素,編碼塊的圖形符號(hào)部分關(guān)系到亮度殘差。
評(píng)論