李 琳
(國(guó)網(wǎng)遼寧省電力有限公司營(yíng)口供電公司,遼寧 營(yíng)口 115000)
?
基于H.264AVC的碼率控制算法研究
李 琳
(國(guó)網(wǎng)遼寧省電力有限公司營(yíng)口供電公司,遼寧 營(yíng)口 115000)
以H.264/AVC具體的視頻編碼理論為基礎(chǔ),研究了進(jìn)行碼率控制的主要技術(shù)和實(shí)際使用方法,闡述了H.264/AVC率失真優(yōu)化產(chǎn)生的主要問題,同時(shí)做出具體研究。
H.264AVC;碼率控制;分布;算法研究
1.1 H.264編碼主要構(gòu)架
H.264和一般的視頻編碼有很大不同,H.264編碼的壓縮效率比以前的視頻編碼有很大提升,但H.264編碼技術(shù)還是以傳統(tǒng)預(yù)測(cè)混合編碼方案來進(jìn)行,特別是和H.26x視頻編碼標(biāo)準(zhǔn)非常相像。它主要利用幀內(nèi)及時(shí)預(yù)測(cè)方式來進(jìn)行優(yōu)化結(jié)構(gòu)里的冗余,利用運(yùn)動(dòng)補(bǔ)償方式減少時(shí)間上面的冗余,然后經(jīng)過變換編碼降低頻率區(qū)域的冗余,最終完全清理信源統(tǒng)計(jì)方面的冗余。這樣視頻壓縮效率得到大幅度提升,同樣的編碼質(zhì)量條件,H.264要比之前的H.263節(jié)省50%的視頻碼率,但仍有一些代價(jià),即它計(jì)算的復(fù)雜程度要比H.263提高很多,通常情況下會(huì)增加3倍左右難度。
1.2 H.264視頻編碼主要技術(shù)
H.264在很多方面皆有較大進(jìn)步,在編碼效率和壓縮效果這兩方面尤為突出,這和很多新編碼技術(shù)的使用有密切聯(lián)系。H.264視頻編碼主要技術(shù):幀內(nèi)編碼的預(yù)測(cè),幀間編碼的預(yù)測(cè)和整數(shù)量化。同時(shí),這三個(gè)主要技術(shù)也是決定視頻編碼效果和質(zhì)量好壞的標(biāo)準(zhǔn)和參照。
2.1 制約輸出碼率的要素
A.圖像的類型。進(jìn)行視頻編碼的過程中,經(jīng)常會(huì)使用到的編碼圖像幀有三種形式:I幀,P幀與B幀。絕大部分的視頻壓縮標(biāo)準(zhǔn)里面,不一樣的編碼形式幀在比特?cái)?shù)上面會(huì)有很大不同。I幀使用幀內(nèi)的編碼模式,主要是使用圖像內(nèi)空間聯(lián)系性做出壓縮的編碼。因?yàn)闆]有用視頻的順序相關(guān)性特征,I幀的壓縮率相對(duì)于P幀與B幀,非常的小。P幀和B幀依照臨近幀的時(shí)間性使用幀間的預(yù)測(cè)模式,這樣會(huì)節(jié)省一些碼流,可以在壓縮效率上得到大幅提升。所以面對(duì)同樣的視頻圖像,使用不一樣的幀編碼,相應(yīng)輸出的比特流也就不一樣,影響碼率波動(dòng)主要的原因就是這個(gè)。
B.圖像的內(nèi)容。視頻順序里臨近的幀有很強(qiáng)相關(guān)性,這就是幀和幀之間的預(yù)測(cè)可以形成很高壓縮效率原因。但是如果視頻順序發(fā)生場(chǎng)景的改變時(shí),臨近的圖像間在運(yùn)動(dòng)的內(nèi)容復(fù)雜性上就會(huì)出現(xiàn)很大差別,而且這種差別會(huì)明顯增大。要確保視頻的圖像質(zhì)量,當(dāng)前編碼圖像的幀一定要從幀的預(yù)測(cè)編碼開始,進(jìn)行切換到幀內(nèi)預(yù)測(cè)的編碼上才可以。因?yàn)榫幋a的預(yù)測(cè)模式發(fā)生了改變,編碼的比特流相應(yīng)也要迅速增加。在現(xiàn)存的視頻標(biāo)準(zhǔn)里面,運(yùn)動(dòng)搜索主要是以“塊”作為基本單位開始。因?yàn)閿?shù)據(jù)量有一些具體的限制,我們常在一定的搜尋范圍下開始運(yùn)動(dòng)的搜索,若現(xiàn)在的宏塊運(yùn)動(dòng)范圍很大,就會(huì)出現(xiàn)比特流突然增加的現(xiàn)象。
C.變換的模式?,F(xiàn)在各種不同的視頻標(biāo)準(zhǔn)使用整數(shù)DCT進(jìn)行變換。進(jìn)行變換的原因是把視頻信號(hào)分成視覺方面感覺重要性偏大的兩個(gè)部分,一個(gè)是低頻部分,另一個(gè)是高頻部分,它可以有效降低視頻數(shù)據(jù)的空間域相關(guān)性,最終獲得集中能量的效果,這樣就可很好的壓縮視頻編碼。
D.量化具體視頻參數(shù)。進(jìn)行視頻編碼的過程中,量化處理通常和各種變換過程結(jié)合使用,目標(biāo)就是除去圖像一些殘差的數(shù)據(jù)。通常情況是變換操作能夠把圖像能量重新取得集中,之后再利用量化保留對(duì)人眼比較敏感和興奮的內(nèi)容,去掉不是很重要的部分,就可獲得圖像壓縮效果。因?yàn)閳D像失真主要在量化這個(gè)階段發(fā)生,所以選擇量化參數(shù)非常重要。量化參數(shù)和生成碼率是與圖像質(zhì)量最有聯(lián)系的兩個(gè)因素。
2.2 碼率控制視頻編碼的參數(shù)
編碼器輸出的碼率需要進(jìn)行控制,須重視質(zhì)量與壓縮效率保持平衡的關(guān)系,碼率進(jìn)行減少會(huì)影響質(zhì)量,碼率如果增加又可能降低壓縮的效率。我們可以利用調(diào)整一些主要的編碼參數(shù)來對(duì)視頻編碼進(jìn)行控制。首先是預(yù)測(cè)模式。它主要有幀類型與預(yù)測(cè)塊的相關(guān)尺寸。使用不一樣的幀類型和預(yù)測(cè)模式,輸出的碼率和視頻質(zhì)量不一樣。通常情況下,幀內(nèi)預(yù)測(cè)的輸出碼率很高,視頻質(zhì)量很好。其次是編碼幀。利用調(diào)整編碼幀率讓它和需要比特率進(jìn)行匹配。因?yàn)閹蔬M(jìn)行調(diào)整的方法主要是對(duì)視頻信號(hào)時(shí)間上的冗余來說的,因此會(huì)用在單個(gè)圖像的質(zhì)量情況里。在此情景下,幀率需要進(jìn)行保持,避免空間視頻在細(xì)節(jié)上面的粗糙化。
2.3 視頻碼率控制性能的相關(guān)指標(biāo)
視頻圖像經(jīng)歷了系統(tǒng)的編碼以后,和以前的視頻進(jìn)行比較可明顯看出發(fā)生一些失真現(xiàn)象。若圖像失真不大,人眼在視覺主觀上不容易進(jìn)行感知。所以要想客觀的評(píng)價(jià)處理過的圖像質(zhì)量,要計(jì)算峰值信噪比,這被很多學(xué)者認(rèn)為是測(cè)試碼率控制關(guān)鍵性能最好的方式,PSNR值越高說明圖像的失真越小,相應(yīng)的這個(gè)視頻的質(zhì)量就越好。峰值信噪比PSNR公式:
3.1 H.264碼率控制算法的具體研究
H.264碼率控制算法里有很多種類的技術(shù),主要有自適應(yīng)的基本單元層,流體的流量阻塞型,線性MAD模型等等。這幾種技術(shù)的使用成功化解了傳統(tǒng)的碼率控制算法和H.264失真優(yōu)化技術(shù)出現(xiàn)的矛盾,可以準(zhǔn)確的把握輸出的碼率,將輸出視頻畫面的質(zhì)量進(jìn)行大幅度的提高?,F(xiàn)在來看適合于H.264碼率控制算法的方案有JVT-F086,JVT-H017等。
幀層碼率的控制。第一要?jiǎng)?wù)是要確定出P的比特率是多少,決定目標(biāo)的緩沖區(qū)具體水平是怎樣的。編碼第一個(gè)P幀以后,可以獲得目標(biāo)的緩沖區(qū)初始水平值Tbl是:
Tbl(ni,2)=Bc(ni,2)
其中B(ni,2)是編碼第一個(gè)P幀以后緩沖區(qū)具體的水平。這個(gè)P幀目標(biāo)緩沖區(qū)的水平定義是:
3.2 以Cauchy分布碼率的控制計(jì)算方法
對(duì)基本單元層來講,當(dāng)設(shè)置的基本單元只是一個(gè)宏塊的時(shí)候,即是宏塊層碼率的控制了。對(duì)于H.264里面DCT系數(shù)全新的率失真特點(diǎn),依照之前提出的改進(jìn)Cauchy分布碼率模型的分配方法就可以了。
3.2.1 宏塊層碼率的控制算法
需要減小研究復(fù)雜性,這一節(jié)的GOP結(jié)構(gòu)使用了IPP模式。在進(jìn)行宏塊的碼率分配以前,必須要對(duì)現(xiàn)在的宏塊幀做出碼率的平均合理分配。在編碼T幀與GOP的P幀里面,使用固定量化的參數(shù),其他的P幀依照目標(biāo)的碼率與視頻信源實(shí)際的編碼,對(duì)其余的宏塊計(jì)算出最優(yōu)量化的參數(shù)。如圖1所示,具體步驟詳看圖中標(biāo)注:
圖1 宏塊層碼率的控制算法Fig.1 Control algorithm of macro block code rate
3.2.2 實(shí)驗(yàn)的探究分析和結(jié)論
需要評(píng)估及驗(yàn)證新的算法在編碼性能上的可靠性,在JVT模型JM10.1上實(shí)現(xiàn)了以Cauchy分布宏塊層碼率的控制算法,同時(shí)和JM10.1使用的算法做出了對(duì)比實(shí)驗(yàn)。我們要參考JVT-6012模型的實(shí)驗(yàn)方法,I幀與第一個(gè)P幀再量化的參數(shù)方面進(jìn)行的初始化數(shù)據(jù)分別是24,28 ,32,36,對(duì)這些序列做出量化的參數(shù)進(jìn)行編碼固定處理,可得出碼率,將它當(dāng)作后面的實(shí)驗(yàn)?zāi)繕?biāo)。剩下主要編碼的具體參數(shù)在設(shè)置上可見表1。
表1 主要編碼具體參數(shù)Tab.1 Concrete parameter of the main code
碼率進(jìn)行控制的目標(biāo)是在有限帶寬環(huán)境下,取得比較流暢和良好的視頻畫面質(zhì)量,這不但要求編碼這些幀的實(shí)際比特要和目標(biāo)比特進(jìn)行完美的匹配,同時(shí)還要求了每幀的圖像都要有很高的峰值信噪比。所以為了可以正確的對(duì)算法的性能做出客觀的比較,筆者在不一樣的目標(biāo)碼率下做出測(cè)試,利用碼率的預(yù)測(cè)平均誤差Eb與平均的峰值信噪反映視頻輸出的碼流在控制精度上和圖像質(zhì)量上。
對(duì)于帶寬受到限制的使用環(huán)境,一定要利用合理的碼率控制逐漸緩解視頻碼流的波動(dòng),讓編碼輸出的比特率可以較好適應(yīng)網(wǎng)絡(luò)的帶寬,使編碼的質(zhì)量得到具體改善。
[1] 劉峰.視頻圖像編碼技術(shù)及國(guó)際標(biāo)準(zhǔn)[M].北京:北京郵電大學(xué)出版社,2016.
[2] 鐘玉琢,沈洪,呂小星.多媒體技術(shù)及其應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2015.
[3] 虞露.AVS一視頻技術(shù)概述[J].中國(guó)多媒體視訊,2016,(09):25.
[4] 張靜,張春田.視頻傳輸中的碼率控制技術(shù)[J].電路與系統(tǒng)學(xué)報(bào),2016,(04):55-57.
[5] 袁武,林守勛,牛振東.H.264/AVC碼率控制優(yōu)化算法[J].計(jì)算機(jī)學(xué)報(bào),2015,(05):63-65.
Research on rate control algorithm based on H.264AVC
LI Lin
(State Grid Yingkou Power Supply Company, Liaoning Electric Power Company, Yingkou 115000, China)
Based on the video coding theory of H.264/AVC, the main techniques and practical application methods of rate control are studied. The main problems of H.264/AVC rate distortion are discussed, and the concrete research is made in this paper.
H.264AVC; Rate control; Distribution; Algorithm research
2016-08-29
李琳(1984-),女,碩士,工程師。
TN
A