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