一種低碼率下的新型宏塊級碼率控制算法_第1頁
一種低碼率下的新型宏塊級碼率控制算法_第2頁
一種低碼率下的新型宏塊級碼率控制算法_第3頁
一種低碼率下的新型宏塊級碼率控制算法_第4頁
一種低碼率下的新型宏塊級碼率控制算法_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、一種低碼率下的新型宏塊級碼率控制算法*周全 劉文予崔春暉(華中科技大學電子與信息工程系武漢430074)(Email: HYPERLINK mailto:quan_ quan )摘要:針對H. 264編碼方案提出了一種實時的無需二次編碼的低碼率宏塊級碼率 控制策略。為克服H.264碼率控制模型的缺陷,首先提出了平均象素信息比特 (APIB)的概念及其碼率控制模型;然后在宏塊層根據(jù)各個宏塊不同的編碼復雜度 進行準確的碼字分配;接著通過APIB的變化自適應更新碼率控制模型的系數(shù); 最后提出完整的基于宏塊的碼率控制算法,并將其在JVT的JM85平臺上實現(xiàn)。試 驗結(jié)果表明,與JVT提案中的碼率控制算法

2、JVT-G012相比,本算法在控制精度上 平均提高0.171kbps,平均PSNR值提高0.227dB,同時較好地的控制了輸出碼率和 PSNR的波動。關鍵字:碼率控制,H.264視頻編碼標準,平均象素信息比特 中圖分類號:TN911.81文獻標識碼:A4A Novel Macro-block Layer Rate ControlAlgorithm in low bit-rateZhou Quan, Liu Wenyu, Cui Chunhui(Electronics & Information Engineering Department, Huazhong University of Sci

3、. & Tech.Wuhan, Hubei, 430074)(E-mail: HYPERLINK mailto:quan_ quan_)ABSTRACT: A real-time single-pass bit rate control algorithm in low bit-rate of macro-block layer for H.264 is presented. In order to solve the drawback of rate control model in H.264, a new concept of average pixel information bit

4、(APIB) and the rate control model based on it are represented at first; then the more precise bit allocation scheme is implemented according to the coding complexity of each macro-block, and the parameters of rate control model are updated through the change of APIB adaptively; finally, the complete

5、 rate control algorithm is proposed. This algorithm is implemented in JM85 (H.264/AVC), the test results show that, compared to JVT-G012 in JVT, the proposed method gains 0.171kbps in control precision and 0.227 in PSNR averagely, and controls the bit and PSNR fluctuation precisely at the same time.

6、Key words: bit rate control, H.264 video coding standard, average pixel information bit1、刖曰為了在給定碼率下高效地傳輸編碼數(shù)據(jù),并保證良好和穩(wěn)定的接收端質(zhì)量, 碼率控制成為視頻編碼的重要內(nèi)容之一,現(xiàn)有的視頻壓縮標準都對其進行了廣泛 的研究。H.264編碼標準將量化參數(shù)同時用于碼率控制和率失真優(yōu)化,這導致了 “蛋雞”悖論:為了進行宏塊的編碼,必須先給出該宏塊的量化等級,而量化等徽育部博士點基金資助課題(No: 20040487009)。作者簡介:周全,碩士研究生,主要研究方向為多媒體 通信及信息處理、視頻編

7、碼技術(shù);劉文予,教授、博士生導師,主要研究方向為計算機視覺、計算機圖形 學、多媒體信息處理、信息安全;崔春暉,碩士研究生,主要研究方向為多媒體通信及信息處理、視頻編 碼技術(shù)。級要根據(jù)編碼之后的幀內(nèi)預測或幀間運動估計殘差(MAD)來決定。因此,以往 各種經(jīng)典的碼率控制方法在H.264中并不適用1-3。由于MAD不能在量化前得到,Li Zhengguo提出了JVT-G012碼率控制算法, 通過對當前宏塊的MAD進行線性預測來解決這個問題,然后使用MPEG-4中的二次碼率預測模型(R-D預測模型)來計算量化等級囹。但是,該算法并沒有突破“蛋 雞”悖論的瓶頸,而且預測出的MAD并不能完全準確的反映當前

8、宏塊的編碼復雜 度,以此得到的量化等級也不一定準確,這可能導致實際編碼碼字與目標碼字不 匹配。為了得到更好的目標碼率和量化步長的關系式,Lei Shawmin等人從DCT變換的角度來考慮碼率控制。He Zhihai等人做了進一步的研究,通過DCT變換 量化后零值在變換系數(shù)中的比例來確定量化參數(shù)6-7。由此可知,DCT系數(shù)的變 化情況與量化參數(shù)存在一定的關系。因此,本文在DCT系數(shù)的基礎上提出平均象 素信息比特(APIB,Average Pixel Information Bit)的概念,在MPEG-4中的R-D 預測模型中用APIB代替MAD,從根本上擺脫了 “蛋雞”悖論的束縛。APIB既能

9、在量化前得到,又能比較準確地反映出當前宏塊的編碼復雜度,以此確定的量化 等級更加準確。整篇文章組織如下:第二部分介紹APIB的概念及其R-D預測模型;第三部分 介紹基于該模型的宏塊級碼率控制算法;第四部分通過試驗數(shù)據(jù)比較了該算法和 JVT-G012在JM85平臺下的性能;第五部分總結(jié)全文。2、平均象素信息比特及其碼率預測模型2.1平均象素信息比特(APIB)為了克服JVT-G012算法中“蛋雞”悖論的缺陷,本節(jié)首先提出APIB的概念。 由于DCT系數(shù)是原始圖像與參考圖像經(jīng)過運動補償后的殘差信息通過DCT變換 得到的。因此,DCT系數(shù)的大小就直接反映出圖像的運動劇烈情況和內(nèi)容的復雜 程度。較大的

10、DCT系數(shù)說明原始圖像與參考圖像間存在較大的殘差冗余信息,這 一般意味著圖像運動劇烈或者內(nèi)容變化較大;反之,較小的DCT系數(shù)則說明原始 圖像與參考圖像間只有較小的殘差冗余信息,這意味著圖像運動平緩或者在內(nèi)容 上基本沒有變化。對于宏塊的每個象素而言,APIB的不僅與DCT系數(shù)有關,而 且還會受量化步長的影響。如果編碼器選擇的量化步長較大,則較多的DCT系數(shù) 被量化為零,這導致圖像的一些運動信息和內(nèi)容信息被量化掉,降低了宏塊的編 碼復雜度;反之,如果編碼器選擇較小的量化步長,則較多的DCT系數(shù)被保留, 這種細量化保留了較多的圖像運動信息和內(nèi)容信息,提高了宏塊的編碼復雜度。從上面的分析看出,宏塊的A

11、PIB應該與DCT系數(shù)的絕對值大小成正比,而與 編碼器的量化步長成反比。由此,定義一個宏塊的APIB如(1)式:MB Info Bit = float(log2(| 匕 / 義 | *)(1)i=0式中,七表示宏塊內(nèi)第i個象素的DCT系數(shù),X表示編碼器的最小量化步長,N 表示宏塊內(nèi)所有象素的個數(shù)。由于H.264標準中定義的最小量化步長為0.625,所以(1)式可以改寫為:LN-1 log (I Y /0.625I +1)、MB _ Info _ Bit =(2)float(羅)Y 0.6250,=0Y news、tempete、football四種序列在QP=28,30fps下全I幀的APIB

12、 函數(shù)曲線;(b)帝格式,四種序列在QP=28, 30fps下全I幀的APIB函數(shù)曲線。2.2基于平均象素信息比特的碼率預測模型為了更好的使編碼碼率匹配目標碼率,就要使用更加準確的R-D預測模型。 因此,本文沿用了VT-G012算法中的二次R-D預測模型結(jié)構(gòu),而把該模型中的 MAD用APIB來替代。新的R-D預測模型定義如下:R -H =(三 + )xMB Info Bit(3)i i QP QP;_ i式中,R .表示編碼第i個宏塊的目標碼率,H.表示宏塊頭、運動矢量和語法元 素占用的比特開銷,MB_Info_Bit.表示當前宏塊的APIB,QP.表示當前宏塊的量 化步長,而a、8為模型參數(shù)

13、,它們在編碼完一個宏塊后被更新。JVT-G012算法 之所以使用MAD,是為了使R-D預測模型能夠自適應圖像內(nèi)容的變化。通過上面 的分析看出,由于APIB也能很好的表達圖像的編碼復雜度,因此用APIB代替 MAD是完全可行的。3、基于宏塊的碼率控制算法為了在準確控制碼率的前提下提高圖像質(zhì)量,本文利用上節(jié)提出的二次R-D 預測模型,提出一種基于宏塊的碼率控制算法。此算法包括以下兩點:一、根據(jù) DCT系數(shù)的變化情況,通過(2)式計算當前宏塊的APIB,對每個宏塊的目標 碼字進行更加合理的分配,以減少因碼字分配不合理造成圖像質(zhì)量的下降;二、 由于使用APIB代替MAD,因此本算法可根據(jù)APIB的變化

14、自適應地更新R-D 預測模型的系數(shù),從而達到碼率控制的目的。3.1宏塊級碼字分配在給宏塊進行碼字分配之前首先要對包含該宏塊的幀進行碼字分配。假設 GOP結(jié)構(gòu)為IPPP,GOP內(nèi)第一個I幀量化等級給定,第一個P幀量化等級與之 相同,后續(xù)P幀的目標碼字如(4)式定義:U 八 、R _ Fram e 節(jié) x (1 -p) + T xp(4)式中,U.表示編碼當前幀時GOP內(nèi)剩下的可分配碼字,N表示GOP內(nèi)未編碼的 P幀個數(shù),T.表示編碼上一 P幀使用的實際比特數(shù),p為權(quán)重常數(shù)。從(4)式 可以看出,為了使實際編碼碼字更好的匹配目標碼字,GOP內(nèi)的可分配碼字平 均分配到各幀中。此外,對目標碼字的估計還

15、考慮到圖像間的時間相關性,即考 慮到上一幀編碼實際碼字對本幀目標碼字的影響。每幀第一個宏塊的量化等級由前一幀的各個宏塊的平均量化等級確定。對于 后續(xù)宏塊而言,先根據(jù)(2)式計算當前編碼宏塊的APIB。由于圖像內(nèi)部不同部 分的運動信息和內(nèi)容信息各不相同,相同量化等級下編碼產(chǎn)生的碼字會有較大差 異,因此對于包含較多運動信息和內(nèi)容信息的宏塊應該分配更多的碼字,而對于 較少運動信息和內(nèi)容信息的宏塊則應分配較少的碼字。因此,每個宏塊目標碼字 應該與APIB的平方成比例,所以當前宏塊的目標碼字如(5)式定義:V = M - /晌-叫 x R Frame1 義 MB _ Info _ Bit 2ii式中,R

16、_Frame代表(4)式中分配給當前幀的目標碼字,MB_Info_Bit.代表第i 個宏塊的實際APIB,N代表一幀圖像內(nèi)所以宏塊的個數(shù)。與JVT-G012算法不 同之處在于:JVT-G012算法在確定目標碼字之前要對當前宏塊的MAD做線性 預測,而本算法直接使用當前宏塊的實際APIB,不需要對其進行預測。因此, 用APIB確定的目標碼字比用MAD確定的目標碼字更加準確。3.2碼率預測模型系數(shù)更新二次R-D預測模型的系數(shù)是根據(jù)確定個數(shù)的已編碼宏塊的編碼結(jié)果來時時 更新的。它具體包含三個步驟:(1)選擇滑動窗口大小。設置滑動窗口的目的,是為了自適應地平滑圖像 中不同部分內(nèi)容復雜度的不同。滑動窗口

17、的大小如(6)式定義:(int(APIB x MAX WINDOW SIZE:APIB ), APIB APIBN = APIBi1iii1式中,MAX_WINDOW_SIZE為常數(shù),一般設為20。從(6)式中看出,如果圖 像編碼復雜度較小,運動平緩,則前后宏塊的APIB相差不大,滑動窗口較大, 這說明較多的宏塊數(shù)據(jù)被用來估計當前宏塊的模型參數(shù);反之,如果前后宏塊的 APIB相差較大,則滑動窗口相對縮小,這說明只有與當前宏塊較近的宏塊數(shù)據(jù) 被采用。(2)數(shù)據(jù)選擇。確定了滑動窗口大小以后,并不是窗口內(nèi)所有數(shù)據(jù)都被用 來更新R-D預測模型系數(shù)。根據(jù)最小均方估計的理論,定義滑動窗口內(nèi)所有宏 塊的實際

18、編碼碼字與目標碼字的標準偏差為(7)式,而(8)式定義了窗口內(nèi)每 個宏塊實際編碼碼字與目標碼字的實際偏差。如果實際偏差超過標準偏差,就認 為這個宏塊的編碼數(shù)據(jù)不可取,其數(shù)據(jù)不能被用來對R-D預測模型參數(shù)做最小 均方估計。std (i)=(7)(8)玄(a x APIB Q + a x (APIB)2 .Q2 R )2,N 1 i 2i i i i=0error(i) = a x APIB Q + a x (APIB )2 Q2 R1i i 2i i i式中,Q.代表量化步長,R.代表實際的編碼碼字。為了避免窗口內(nèi)所有的數(shù)據(jù)都 被濾除,當前編碼宏塊的前一個宏塊的數(shù)據(jù)始終被保留。(3)更新模型系數(shù)

19、。本文沿用了JVT-G012算法中的線性衰減技術(shù),兩個模型參數(shù)的更新定義如下:(9)W xYr/APIB - (Yq-1) x (Yr. x Qi APIB ) b = i=i=i=WxYQ-2(Yq-1)2i=1i=1YW Q x R APIB - b x Q1a = -i=W式中,W代表經(jīng)過數(shù)據(jù)選擇后滑動窗口的大小。4、實驗結(jié)果及分析在JVT的校驗模型JM85上實現(xiàn)了本文提出的碼率控制算法,并與JVT-G012 算法進行了對比。本試驗采用的序列有:Foreman, News,F(xiàn)ootball, Tempete; cif格式序列測試幀率為15幀/秒,qcif格式序列測試幀率為5幀/秒;GOP

20、結(jié)構(gòu) 為IPPP;初始QP設為24;搜索范圍為32;參考幀為5幀;熵編碼方式為CABAC; 執(zhí)行RD優(yōu)化。表2對比了本文算法和JVT-G012算法的控制精度和PSNR值。表2 兩種算法控制精度和PSNR值比較測試序列測試碼率(kbps)控制精度(kbps)碼率偏移(kbps)PSNR(dB)JVT-G012本文算法JVT-G012本文算法JVT-G012本文算法Foreman2424.0524.020.050.0232.5032.60(qcif)4848.0347.940.03-0.0635.9136.016463.9963.95-0.01-0.0537.4137.478080.0379.91

21、0.03-0.0938.6638.71News(cif)9696.16635.8236.21128128.24037.4237.96192192.26192.100.260.1039.3639.94256256.25256.060.250.0640.9141.32Football(qcif)2436.0336.0312.0312.0325.1025.104848.8848.000.880.0028.2028.376464.0263.760.02-0.2430.8130.928080.1479.710.14-0.2932.4332.45Tempe

22、te(cif)9696.4696.450.460.4524.7024.67128128.64128.60.640.6026.9226.93192192.91192.790.910.7929.3629.44256257.09256.861.090.8630.7830.82圖2 (a)和2 (b)分別是news的cif序列和football的qcif序列在分別在15幀/ 秒和5幀/秒下的R-D曲線;2 (c)和2 (d)分別是兩序列在128kbps和48kbps下的 PSNR波動圖;而2(e)和2 分別是兩序列在128kbps和48kbps下的碼率波動 圖。從表1看出,本文算法的平均碼率偏移比JV

23、T-G012算法減少0.171kbps, 平均控制精度優(yōu)于JVT-G012算法,這說明本文提出的APIB及其R-D預測模型 能夠比較準確的估計圖像編碼復雜度。從表1和圖2看出,圖像的PSNR平均提 高0.227dB,尤其是news序列,平均提高0.533dB。但是,碼率控制的目的是在固定的碼率下獲得最好的圖像質(zhì)量。這不僅要求 編碼每幀的實際碼字與分配的目標碼字相匹配,而且要求每幀圖像的PSNR波動 平緩。因此,本文定義平均比特誤差和平均PSNR誤差:八.廣 V | Actual _ Bit 一 T arg et _ Bit |Bit _ Error =,= (11)psnr Error = |

24、Frame_ PSNR 一 Averagepsnr | N x Average _ PSNR(12)i 1N x T arg et _ Biti=1Target_Bit式中,N代表實際編碼的幀數(shù),Actual_Bit代表每幀編碼的實際碼字,代表每幀的目標碼字,F(xiàn)rame_PSNR代表每幀的實際PSNR,Average_PSNR代表 平均的PSNR。表3對比了兩算法的平均碼率波動和平均PSNR波動。表3 兩種算法平均比特誤差和平均PSNR誤差比較測試序列測試碼率 (kbps)平均比特誤差平均PSNR誤差JVT-G012本文算法JVT-G012本文算法Foreman(qcif)240.194053

25、1250.1528006660.0628057210.057844611480.0878083390.0782687090.0449636560.044341989640.0537869060.0638491160.0382103080.037450755800.0485976820.0653559770.0326439980.033718989News (cif)960.0997727360.0708779010.0333096750.0302632741280.0708111140.0593010130.0249295760.0200232371920.0445277890.0382813

26、530.0155383080.0121314382560.0361182200.0467468840.0104164310.009358591Football (qcif)241.8270783851.8270783850.1580920350.158092035480.7482142860.6854488420.1002198320.092199274640.3913727520.3646611340.0908699680.096475350800.2658001080.2453529090.0915602570.089955110Tempete(cif)960.5959153620.593

27、2788670.0679050280.0677262411280.3738586680.3710567630.0507265240.0516882501920.1788667540.1680063380.0309668340.0293713632560.1055741070.1020296820.0241641580.023738601news序列R-D曲線90140190240z一 一碼率(kbps)fooball序列R-D曲線354555657585碼率(kbpS)(a)news序列PSNR波動圖1 11 21 31 41 51 61 71 81 91 101111121131141幀序號

28、(b)1 3 5 7 9 11131517192123 2527 293133 3537 3941幀序號(c)(d)從上表可以看出,本文算法的平均比特誤差比JVT-G012算法減少0.012,而 平均PSNR誤差減少0.0014。這有利于低碼率下的視頻傳輸,降低了解碼端緩沖 區(qū)發(fā)生上溢和下溢的可能。同時保證了圖像質(zhì)量的平穩(wěn)過渡,具有較高的主觀視 覺質(zhì)量。news序列碼率波動圖1 10 19 28 37 46 55 64 73 82 91 100109118127136145幀序號10987654321 )tibk特比0football序列碼率波動圖0.511.522.533.5比413579

29、11131517192123252729313335373941 幀序號56555 !匕特0(e)(f)圖2(a)奇格式的news序列,15fps時的R-D曲線;(b) qcif格式的football序列,5fps時的R-D 曲線;(c) cif格式的news序列,15fps時,128kbps下的PSNR波動圖;(d)qcif格式的fooball序 列,5fps時,48kbps下的PSNR波動圖;(e) cif格式的news序列,15fps時,128kbps下的碼率 波動圖;(f)qcif格式的fooball序列,5fps時,48kbps下的碼率波動圖5、結(jié)論好的碼率控制算法不僅要有準確的控制

30、精度,而且要獲得最好的圖像質(zhì)量。 從試驗數(shù)據(jù)看出,本文提出的宏塊級碼率控制算法能夠達到這些要求。本文將 APIB的概念引入R-D預測模型,從根本上避免了 H.264中的“蛋雞”悖論,而 且只需一次編碼就能達到碼率控制的目的。除此之外,APIB較好的反映了圖像 的編碼復雜度,以此確定的量化等級較MAD更加準確。另外,由于視頻編碼的 計算復雜度主要集中在運動估計和幀內(nèi)預測上,所以本算法不會影響編碼器的實 時性。通過與JVT提案中的碼率控制算法JVT-G012對比試驗表明,在保持編碼器 實時性基本不變的條件下,本文方法在控制精度上比JVT-G012算法平均提高 0.171kbps,平均PSNR值提高0.227dB。同時,本算法的平均比特誤差和平均 PSNR誤差均要優(yōu)于JVT-G012算法,分別減少0.012和0.0014,說明本算法能 夠使實際編碼碼字與目標碼字更好的匹配,而且具有更好的主觀視頻質(zhì)量。參考文獻:1 Chiang T H, Zhang Y Q. A new rate control scheme using quadratic rate

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論