新聞中心

EEPW首頁 > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > H.264/AVC中量化的Verilog實(shí)現(xiàn)

H.264/AVC中量化的Verilog實(shí)現(xiàn)

作者: 時間:2018-09-12 來源:網(wǎng)絡(luò) 收藏
0 引 言

H.作為新一代的視頻壓縮標(biāo)準(zhǔn),是由ITU-T的視頻編碼專家組和ISO/IEC的MPEG(運(yùn)動圖像編碼專家組)成立的聯(lián)合視頻小組共同開發(fā)的。它優(yōu)異的壓縮性能也將在數(shù)字電視廣播、視頻實(shí)時通信、網(wǎng)絡(luò)視頻流媒體傳遞以及多媒體通信等各個方面發(fā)揮重要的作用。

在核心技術(shù)上,H.采用各種有效的技術(shù),如統(tǒng)一的VLC符號編碼、1/4像素精度的運(yùn)動估計(jì)、多模式運(yùn)動估計(jì)、基于4×4塊的整數(shù)變換、分層編碼語法等。由于采用了整數(shù)變換,計(jì)算不會出現(xiàn)浮點(diǎn)數(shù),而且精度高等。這些措施使得H.算法具有很高的編碼效率。在量化方面,量化步長采用52個,下面將主要分析量化。在此,提出量化的實(shí)現(xiàn),將變換后的數(shù)據(jù)作為輸入,以量化后的碼流作為輸出,達(dá)到量化的目的。

1量化的功能介紹

取樣后的脈沖信號在時間上是離散的,但在幅值和空間上仍是連續(xù)的,即其可能取的值有無限多個,這就需要對它采用四舍五入的方法,將其可能的幅值數(shù)由無限多個變?yōu)橛邢迋€值。這種將信號幅值由連續(xù)量變成離散量的過程稱為量化。

在不降低視覺效果的前提下,量化過程可減少圖像編碼長度,減少視覺恢復(fù)中不必要的信息。H.264采用標(biāo)量量化技術(shù),將每個圖像樣點(diǎn)編碼映射成較小的數(shù)值。一般標(biāo)量量化器的原理為:

式中:y為輸入樣本點(diǎn)編碼;QP為量化步長;FQ為y的量化值;round()取整函數(shù)(其輸出與輸入實(shí)數(shù)最近的整數(shù))。

2量化的算法介紹

在H.264中,量化步長Qstep共有52個值。如表1所示。其中,QP是量化參數(shù),是量化步長的序號。當(dāng)QP取最小值0時,代表最精細(xì)的量化;當(dāng)QP取最大值51時,代表最粗糙的量化。QP每增加6,Qstep增加1倍。應(yīng)用時可以在這個較寬的量化步長范圍根據(jù)實(shí)際需要靈活選擇。對于色度編碼,一般使用與亮度編碼同樣的量化步長。為了避免在較高量化步長時出現(xiàn)顏色量化人工效應(yīng),現(xiàn)在的H.264草案把色度的QP最大值大約限制在亮度QP最大值的80%范圍內(nèi)。最后的H.264草案規(guī)定,亮度QP的最大值是51;色度QP的最大值是39。

在H.264中,量化過程是對DCT的結(jié)果進(jìn)行操作:

式中:Yij是矩陣Y中的轉(zhuǎn)換系數(shù);Zij是輸出的量化系數(shù);Qstep是量化步長。

H.264量化過程還要同時完成DCT變換中“Ef”乘法運(yùn)算,它可以表述為:

式中:Wij是矩陣W中的轉(zhuǎn)換系數(shù);PF是矩陣EF中的元素。根據(jù)樣本點(diǎn)在圖像中的位置(i,j)取值如表2所示。

利用量化步長隨量化參數(shù)每增加6而增加1倍的性質(zhì),可以進(jìn)一步簡化計(jì)算,即:

式中:floor()為取整函數(shù)(其輸出不大于輸入實(shí)數(shù)的最大整數(shù))。式(3)可以寫為:

這樣,MF可以取整數(shù)。表3給出對應(yīng)QP值為0~5的MF值。對于QP值大于5的情況,只是qbits值隨QP值每增加6而增加1,而對應(yīng)的MF值不變。這樣,量化過程為整數(shù)運(yùn)算,可以避免使用除法,確保用16位算法來處理數(shù)據(jù),在沒有PSNR性能惡化的情況下,實(shí)現(xiàn)最小的運(yùn)算復(fù)雜度如表3所示。


具體量化過程的運(yùn)算為:



式中:“》”為右移運(yùn)算,右移1次完成整數(shù)除以2;sign()為符號函數(shù);f為偏移量。f的作用是改善恢復(fù)圖像的視覺效果,如對幀內(nèi)預(yù)測圖像塊f取2qbits/3;對幀間預(yù)測圖像塊廠取2qbits/6。

3具體實(shí)現(xiàn)

在該文中,用語言實(shí)現(xiàn)H.264的量化;運(yùn)用Modelsim進(jìn)行仿真;用QuartusⅡ進(jìn)行綜合。

根據(jù)編程,Modelsim仿真如圖1所示。

輸入的矩陣是[140,-1,-6,7,-19,-39,7,-92,22,17,8,31,-27,-32,-59,-21],最后量化的結(jié)果為[17,0,-1,0,-1,-2,0,-5,3,1,1,2,-2,-1,-5,-1]。由此可知,這與Iain E.G.Richardson給出的結(jié)果相符合。所用的開發(fā)板是紅色颶風(fēng)第三代開發(fā)板,F(xiàn)PGA芯片是Altra EP2C35F484C8。從綜合后的報(bào)告可以看出,消耗的資源不到1%,如圖2所示。綜合后的RTL圖如圖3所示。

4結(jié) 語

介紹了H.264的量化算法,并用Modelsim進(jìn)行了仿真,結(jié)果與理論完全一致。分析了在FPGA開發(fā)板上的資源的消耗。由此可知,完全可以用FPGA實(shí)現(xiàn)H.264的量化。


關(guān)鍵詞: Verilog 264 AVC

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉