<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > 視頻復雜度自適應的H.264基本單元層碼率控制方法

視頻復雜度自適應的H.264基本單元層碼率控制方法

作者: 時(shí)間:2012-08-07 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要:為了提高JVT-H017碼率提案中的層比特數分配序列較高時(shí)分配的準確度,提出了一種層碼率。利用DMAD參數來(lái)判斷場(chǎng)景的,對JVT-H017的比特數分配進(jìn)行了改進(jìn);同時(shí)提出了一種層編碼的理想情況,并以此理想情況下的比特數消耗情況來(lái)對基本單元的比特數進(jìn)行修正。仿真結果表明,該方法有效地提高了視頻編碼的峰值信噪比(PSNR),最大可提高0.49 dB,并且輸出碼率更接近預定編碼碼率。
關(guān)鍵詞:H.264;碼率;預測模型;視頻復雜度

碼率控制一直是H.264/AVC視頻編碼標準的研究熱點(diǎn)。由Li和Ma等人提出的JVT-H017提案在碼率、圖像質(zhì)量和緩沖器占用度上達到了良好平衡,已成為最主流的碼率控制方法。JVT-H017使用待編碼基本單元的MAD(平均絕對誤差)預測模型的參數來(lái)預測當前幀剩余所有基本單元的MAD,并根據所得結果為當前基本單元分配比特數。當視頻復雜度較高時(shí),基本單元的時(shí)空相關(guān)性都明顯降低,此時(shí)這種基本單元比特數分配方法會(huì )產(chǎn)生較大誤差。
對此,許多學(xué)者提出了很多改進(jìn)的碼率控制方法。Jianpeng提出使用二維窗口來(lái)選取模型參數的歷史數據點(diǎn),但二維窗口通常數據點(diǎn)較少,準確度受到限制;Yang提出了空域的MAD預測模型來(lái)增加MAD預測的精確度,但計算復雜度比較高;Yin提出使用相鄰已編碼基本單元的MAD加權平均值來(lái)計算當前基本單元的MAD,但沒(méi)有準確利用基本單元空域時(shí)域的相關(guān)性;Jen-Yeu提出利用DMAD(Difference of MAD)改進(jìn)JVT-H017的幀間比特數分配方法并將其應用到基本單元層,改善了高復雜度視頻和場(chǎng)景變換時(shí)的編碼質(zhì)量。
文中在Jen-Yeu提出的基本單元層碼率控制方法的基礎上,對其復雜度參數進(jìn)行了重新定義,提高了復雜度估計的準確性,同時(shí)利用理想狀況下的比特數消耗情況來(lái)對基本單元比特數預測值進(jìn)行修正。文中所有仿真均以官方驗證軟件JMl3.2為實(shí)驗平臺。

1 JVT-H017基本單元層碼率控制誤差分析
JM軟件采用了JVT-H017算法中的基本單元目標比特數計算方法

其中,i表示當前幀的序號,j表示當前基本單元在當前幀中的序號,Ti(j)表示基本單元的目標比特數,PMAD表示基本單元MAD的線(xiàn)性預測值,TRi(j)表示第i幀中第j個(gè)基本單元編碼前該幀剩余比特數,Nunit表示當前幀的基本單元總數。
JVT-H017的比特數分配方法并沒(méi)有充分考慮相鄰幀的基本單元間的時(shí)間和空間相關(guān)性,當視頻內容變化速度比較快或發(fā)生場(chǎng)景變換時(shí),基本單元之間的時(shí)空相關(guān)性變差,此時(shí)使用當前基本單元j的線(xiàn)性預測系數去預測當前幀剩余基本單元的MAD而得到的PMADi(k){k=j+1,j+2…Nunit}會(huì )有較大的誤差,而基于PMADi(k)計算的目標比特數的準確度也會(huì )有較大幅度下降,使得基本單元的比特數分配變得不準確。

2 基于DMAD的基本單元比特分配方法
在JVT-H017算法中,最終為待編碼P幀分配的比特數f(i)由b1.jpgb2.jpg兩部分組成
b3.jpg
其中,b1.jpg是從當前GOP剩余比特數角度為待編碼P幀分配的比特數,b2.jpg是從編碼碼率和緩沖器占用度角度分配給待編碼P幀的比特數。在JM13.2模型中,β設為常數0.5。
Jen-Yeu通過(guò)實(shí)驗發(fā)現式(2)中的系數β與圖像的時(shí)間相關(guān)性有很大的關(guān)系,進(jìn)而影響了幀間比特數分配和幀圖像的編碼信噪比,并基于此提出用DMAD(Difference of MAD)來(lái)判斷視頻序列的復雜度。第i幀第j個(gè)基本單元的DMAD為
DMAD(i,j)=|MAD(i,j)-MAD(i-1,j)| (3)
當DMAD值較大時(shí),表明連續的兩幀之間某一幀的預測誤差較大,此時(shí)圖像中極有可能有高速的物體運動(dòng)或發(fā)生場(chǎng)景變換。
DMAD(i,j)被進(jìn)一步歸一化為b4.jpg
b5.jpg
b4.jpg用來(lái)代替式(2)中的權重系數β。由于H.264是以基本單元為基本單位進(jìn)行編碼的,所以式(2)被進(jìn)一步改進(jìn)并用來(lái)計算基本單元的目標比特數,如式(5)所示。
b6.jpg
其中,f(i,j)表示第i幀第j個(gè)基本單元的目標比特數,Nunit為一幀中的基本單元總數。
但由于式(4)的分母選自幀內已編碼基本單元的最大值,如果當前基本單元的DMAD只是局部最大,而其本身絕對值并不高,也會(huì )使b4.jpg取得比較大的值,從而被誤判斷為高復雜度,因此b4.jpg并不能很好的反應不同視頻序列間復雜度的區別。
對此,文中將復雜度從低到高排列的akiyo,mother daughter,suzie,foreman,coastguard,mobile 6個(gè)序列(在常見(jiàn)碼率下編碼,6個(gè)序列的PSNR以約2.5~4 dB遞減,表明6個(gè)序列的復雜度有比較明顯的差異,能夠反映不同視頻序列編碼的普遍情況)以24 kbits/s,48kbits/s和64 kbits/s的碼率進(jìn)行150幀編碼,記錄各序列每次編碼時(shí)所有P幀基本單元的DMAD值。對同一序列在3種碼率下編碼的基本單元DMAD記錄值進(jìn)行統一排序并求取排序結果的中位數,該中位數代表了對應序列的基本單元的中等復雜度。求得6個(gè)序列編碼結果的中位數的平均值為0.18,它反映了不同視頻序列編碼時(shí)基本單元的中等復雜度的均值。
選取0.18作為判斷基數,將b4.jpg改進(jìn)為β(i,j)。
c.JPG
β(i,j)與視頻復雜度成正相關(guān),可以有效反映相鄰幀間圖像復雜度的變化情況和不同視頻序列復雜度的區別。若DMAD(i,j)=0.18,則當前基本單元為具有中等復雜度的基本單元,此時(shí)β(i,j)=0.5;當視頻復雜度降低時(shí),DMAD(i,j)減小,β(i,j)也會(huì )相應減??;反之亦然。而當DMAD接近或大于0.36時(shí),即認為視頻復雜度很高,或發(fā)生場(chǎng)景變換,此時(shí)β(i,j)取值為0.9?;?beta;(i,j),將式(5)改進(jìn)為
d1.jpg
在實(shí)際編碼時(shí),由于在編碼前無(wú)法得到當前基本單元的DMAD,所以用當前基本單元的PMAD來(lái)計算其DMAD的近似值
DMAD(i,j)≈|PMD(i,j)-MAD(i-1,j)| (8)

3 理想的比特數消耗情況
JVT-H017在幀內比特數消耗量超過(guò)幀預測值后,采用簡(jiǎn)單增加量化參數的方法來(lái)減少后續基本單元的比特數消耗,但在此之前并無(wú)其它的比特數限制措施。因此提出一種視頻編碼的理想條件,并用這種理想條件下的比持數消耗情況來(lái)修正超過(guò)幀預測值前基本單元的比特數分配。假設待編碼幀的比特數預測完全準確,剛好等于該幀實(shí)際比特數消耗量,幀內各基本單元的MAD均相等,且消耗比特數相同,則該幀比特數消耗情況如圖1所示。

本文引用地址:http://dyxdggzs.com/article/160155.htm

e.JPG


圖1中,Nunit是幀內基本單元總數,TRi(j)表示第i幀中第j個(gè)基本單元編碼前該幀剩余比特數,設首基本單元的序號為1,那么易知TRi(1)即為當前幀比特數預測值,TRi(1)/Nunit為上述理想狀況下一個(gè)基本單元所消耗的比特數(各基本單元消耗比特數相同)。
根據圖1易知,第i幀中第j個(gè)基本單元編碼完成后該幀消耗的總比特數的理想值與實(shí)際值的差Di(j)可由式(9)表示。
g.JPG
其中,TAi(k)表示編碼第i幀中第k個(gè)基本單元實(shí)際消耗的比特數。
當Di(j)0時(shí),即認為該幀比特數消耗過(guò)多,此時(shí)適當增加量化參數(仿真中為增加1)以更強的控制后續基本單元的比特數消耗。

4 仿真結果與分析
文中以H.264官方驗證軟件JM13.2作為實(shí)驗平臺,對提出的基本單元層碼率控制方法進(jìn)行仿真。測試序列為QCIF格式,共編碼150幀,首幀為I幀,其余為P幀,不考慮跳幀,幀率為15幀每秒,I幀和首P幀的初始量化步長(cháng)的計算采用默認方法。分別對復雜度相差較大的akiyo,earphone,foreman和mobile序列進(jìn)行編碼測試。

h.JPG


表1所示為在24 kbits/s,48 kbits/s和64 kbits/s 3種編碼碼率下對上述序列進(jìn)仃編碼的結果。從表1可見(jiàn),除了在24kbits/s碼率下編碼mobile 序列外,采用本文算法編碼的平均峰值信噪比均要高于JM軟件和[6]中提出的算法,最大可比JM提高0.49dB,比[6]中的算法提高0,18dB。碼率控制的結果也更為精確,JM13.2的實(shí)際碼率與預定碼率的平均誤差是0.37%,[6]中算法的碼率平均誤差是0.32%,而本文算法的碼率平均誤差是0.28%,可見(jiàn)本文算法更符合預定的碼率要求。
為了驗證算法在場(chǎng)景變換時(shí)的編碼性能,在48 kbits/s碼率下,用3種方法分別對carphone序列和akiyo序列的混合序列C55A55進(jìn)行編碼測試,混合序列在第55幀發(fā)生場(chǎng)景變換。編碼結果如圖2和圖3所示。由圖2可見(jiàn),本文提出的方法在場(chǎng)景變換幀及后續幀均取得了更高的編碼信噪比,提高了新場(chǎng)景的編碼質(zhì)量。

i.JPG


圖3對3種碼率控制方法在編碼過(guò)程中的緩沖區狀態(tài)進(jìn)行了對比。從圖3可見(jiàn),文中方法比JM更接近目標緩沖區占用度,并且在場(chǎng)景變換時(shí)有效降低了緩沖區占用度,在編碼器緩沖區尺寸有限的情況下,為新場(chǎng)景提供丁更多可用編碼資源。

5 結論
文中提出了一種復雜度自的基本單元層碼率控制算法。該算法利用DMAD參數來(lái)判斷視頻復雜度,對JVT-H017的比特數分配方法進(jìn)行了改進(jìn),并利用理想的基本單元層編碼情況來(lái)對基本單元比特數分配進(jìn)行修正。仿真表明,該方法在一般情況和場(chǎng)景變換時(shí)的編碼質(zhì)量均高于JM模型,平均峰值信噪比最大可提高0.49 dB,實(shí)際編碼碼率更接近預定要求。

絕對值編碼器相關(guān)文章:絕對值編碼器原理


評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>