• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于視頻并行編碼的碼率控制算法研究

      2015-05-05 09:44:08吳曉光李國平王國中滕國偉趙海武
      電視技術(shù) 2015年16期
      關(guān)鍵詞:宏塊碼率緩沖區(qū)

      吳曉光,李國平,王國中,滕國偉,趙海武

      (上海大學(xué) 通信與信息工程學(xué)院,上海 200072)

      基于視頻并行編碼的碼率控制算法研究

      吳曉光,李國平,王國中,滕國偉,趙海武

      (上海大學(xué) 通信與信息工程學(xué)院,上海 200072)

      基于并行編碼的特點(diǎn),現(xiàn)有的基于串行編碼的碼率控制算法有其局限性,不能直接應(yīng)用于并行編碼。提出一種新的碼率控制算法,在編碼前將原始幀作為參考幀計算出各幀的SAD,然后利用已計算的SAD進(jìn)行幀級比特分配和動態(tài)預(yù)測并行編碼幀的比特,實(shí)現(xiàn)了并行編碼的碼率控制。通過測試基于串行編碼的碼率控制和提出的碼率控制方案下PSNR和VBV情況,說明所提算法的可行性。

      并行編碼;碼率控制;比特預(yù)測;比特分配

      高清、超高清編碼技術(shù)的出現(xiàn),極大地提高了人們的視覺體驗(yàn),因此得到了廣泛應(yīng)用。與此同時編碼復(fù)雜度的增加和對實(shí)時性的要求為編碼器的實(shí)現(xiàn)提出了極大的挑戰(zhàn)。并行編碼技術(shù)是解決高復(fù)雜度、實(shí)時編碼的有效方法,因此成為國內(nèi)外學(xué)者的研究熱點(diǎn)。目前并行編碼還處于研究階段,沒有一個公認(rèn)的并行編碼框架。針對圖像的不同結(jié)構(gòu)層次(GOP,F(xiàn)rame,Slice,Macroblock)有其對應(yīng)的并行編碼模式[1],但這些方法的并行化程度不夠高。WPP[2]和Tiles[3]并行技術(shù)是HEVC針對并行編碼所提出的,但此方法只適用于HEVC標(biāo)準(zhǔn),同時存在碼率分配難以處理的問題。文獻(xiàn)[4]提出了一種視頻并行編碼框架,極大地提高了并行化程度,在PSNR下降0.01~0.12 dB的前提下,加速比可達(dá)到12[5]。因此,本文基于該編碼框架實(shí)現(xiàn)并行編碼的碼率控制,其算法思想也可應(yīng)用于其他的并行編碼框架。

      為確保編碼產(chǎn)生的可變碼流能夠在有限帶寬的信道順利傳輸,需根據(jù)緩沖區(qū)情況對碼率進(jìn)行控制。傳統(tǒng)經(jīng)典的碼率控制算法包括TM5,TMN8以及VM8等,還有一些基于上述碼率控制的優(yōu)化算法,以滿足視頻傳輸應(yīng)用中的碼率要求。上述各種碼率控制方法針對不同的應(yīng)用環(huán)境往往能有比較理想的效果,但這些碼率控制算法都是基于串行編碼框架。在視頻并行編碼中,由于并行編碼有多幀數(shù)據(jù)同時進(jìn)行編碼,在編碼當(dāng)前幀時,其之前的多幀未能產(chǎn)生實(shí)際編碼比特數(shù),無法確定當(dāng)前幀的緩沖區(qū)情況,因此需要對這些并行編碼幀的比特開銷進(jìn)行預(yù)測。如果采用傳統(tǒng)的碼率控制方法,利用之前幀的信息來預(yù)測當(dāng)前幀的比特,當(dāng)并行編碼幀數(shù)較多時,對并行編碼幀比特開銷的預(yù)測將會產(chǎn)生很大誤差?;谶@個特點(diǎn),限制了傳統(tǒng)碼率控制算法的使用,因此并行編碼的碼率控制一直是困擾并行編碼發(fā)展的難題。本文提出了一種新的碼率控制算法以解決這個問題。

      此外,H.264/AVC引入了率失真優(yōu)化(RDO)技術(shù),對宏塊執(zhí)行RDO,需要由碼率控制才能確定的QP作為輸入;對宏塊執(zhí)行碼率控制,需要MAD作為輸入,然而MAD只有在RDO運(yùn)行后才能獲得,形成了“蛋雞悖論”問題。為解決這個問題, JVT-F086[6]提案采用兩次編碼的方式,但大大增加了編碼的復(fù)雜度。JVT-G012[7]提案利用前一幀中相同位置基本單元的MAD值線性預(yù)測當(dāng)前基本單元的MAD ,如果并行編碼的碼率控制也采取該方法,編碼圖像失真將會加大。本文提出的方法,在編碼前將原始幀作為參考幀計算出各幀的絕對差值和(SAD),在碼率控制過程中利用已計算的SAD作為輸入確定QP,解決了悖論問題。同時由于SAD不是由預(yù)測得到,對并行編碼幀比特開銷的預(yù)測不會產(chǎn)生很大誤差,因此使得提出的碼率控制算法更加準(zhǔn)確。實(shí)驗(yàn)結(jié)果表明,該算法在保證圖像質(zhì)量的基礎(chǔ)上解決了并行編碼碼率控制的難題。

      1 并行編碼框架

      1.1 傳統(tǒng)編碼框架

      如圖1所示,傳統(tǒng)的視頻編碼框架在編碼當(dāng)前幀時需要將重建幀作為參考幀進(jìn)行運(yùn)動估計和運(yùn)動補(bǔ)償,它所構(gòu)成的反饋回路極大地限制了編碼的并行化程度。

      圖1 傳統(tǒng)的視頻編碼框架

      1.2 并行編碼框架

      本文所采用的并行編碼框架如圖2所示[4],針對原始序列,并行預(yù)處理模塊在進(jìn)行去平滑濾波、噪濾波等預(yù)處理的基礎(chǔ)上,通過相關(guān)性參數(shù)的計算對序列進(jìn)行場景檢測和判斷幀類型[4]。由于各幀之間相互獨(dú)立,可以并行處理。

      圖2 并行視頻編碼框架

      并行運(yùn)動估計模塊利用預(yù)處理模塊中已經(jīng)獲得的各幀的幀類型,將原始幀作為參考幀通過整像素運(yùn)動估計計算整像素運(yùn)動矢量MV′,每幀運(yùn)動估計結(jié)束后進(jìn)入編碼模塊。這種并行運(yùn)動估計極大地提高了整個編碼框架的并行性,將編碼最耗時的整像素運(yùn)動估計并行處理,提高了編碼效率。

      并行編碼模塊中采用隔行編碼的方式,每個場作為一個slice,各個場之間獨(dú)立進(jìn)行具有參考依賴性的幀間編碼[8]。進(jìn)行宏塊模式選擇后將MV′作為起點(diǎn)進(jìn)行亞像素搜索,最終得到運(yùn)動矢量MV。然后再經(jīng)過運(yùn)動補(bǔ)償,變換量化以及熵編碼得到碼流。

      2 傳統(tǒng)碼率控制的局限性

      傳統(tǒng)的串行視頻編碼碼率控制在編碼當(dāng)前幀之前, 需要更新當(dāng)前緩存區(qū)內(nèi)的比特數(shù)

      (1)

      (2)

      3 并行視頻編碼框架下的碼率控制

      在整像素并行運(yùn)動估計模塊計算當(dāng)前并行編碼各幀的SAD。在進(jìn)行碼率控制時,利用已計算的SAD作為輸入來確定QP,再由確定的QP進(jìn)行編碼,解決了“蛋雞悖論”;同時利用已計算的SAD對并行編碼各幀的比特進(jìn)行動態(tài)預(yù)測,解決了傳統(tǒng)碼率控制的局限性。

      其中SAD的計算如式(3)所示

      (3)

      式中:A代表像素區(qū)域;Sk[x,y]為視頻圖像在[x,y]位置的像素值;Pk[x,y]為根據(jù)事先設(shè)定方法及參考圖像對Sk[x,y]的預(yù)測值。

      3.1 幀級比特分配

      我們可以根據(jù)在并行運(yùn)動估計中得到的當(dāng)前幀的SAD來進(jìn)行幀級目標(biāo)比特分配。如式(4)所示

      (4)

      式中:Ti為第i幀分配的目標(biāo)比特數(shù);SADi為第i幀的SAD值;SADgroup為一組幀數(shù)固定的圖像的總SAD值,它是一個不斷更新的數(shù)值,每編完一幀就從SADgroup中減去該幀的SAD值,開始編碼下一幀時加上該幀的SAD,從而保持這組圖像的幀數(shù)恒定;bitgroup為對應(yīng)這組圖像的剩余目標(biāo)比特數(shù)。

      3.2 動態(tài)預(yù)測幀比特數(shù)模型

      對并行編碼各幀的編碼比特數(shù)的動態(tài)更新,創(chuàng)建模型如式(5)所示

      (5)

      式中:Bits為當(dāng)前單元的預(yù)測比特數(shù);SAD和QP分別表示當(dāng)前單元的SAD值(已在并行運(yùn)動估計模塊計算得出)和QP值。coeff為一個復(fù)雜度系數(shù),其值如式(6)所示

      (6)

      式中:QP′和SAD′分別表示前一宏塊行的平均QP值和SAD值;bits表示前一宏塊行實(shí)際的編碼比特數(shù);count為更新次數(shù)。count和coeff使用衰減系數(shù)進(jìn)行更新。如式(7)和式(8)所示

      count″=count′×decay+1

      (7)

      coeff″=coeff′×decay+coeff

      (8)

      式中:count″和coeff″表示更新后的值;count′和coeff′表示更新前的值;decay為衰減因子。coeff如式(6)計算。

      3.3 動態(tài)更新緩沖區(qū)參數(shù)

      并行編碼的各幀編碼結(jié)束后都將進(jìn)入同一緩沖區(qū),為及時了解緩沖區(qū)情況,避免緩沖區(qū)上溢或者下溢,需動態(tài)更新并行編碼各幀的緩沖區(qū)參數(shù),如圖3所示。

      1)每幀編完一行宏塊都將根據(jù)式(6)更新其coeff,然后根據(jù)coeff以及剩余宏塊行的SAD和QP按式(5)計算并預(yù)測當(dāng)前幀剩余部分的比特。

      2)并行編碼的各幀每編碼一行宏塊都將執(zhí)行上述步驟1),由當(dāng)前幀已編碼的比特數(shù)和步驟1)預(yù)測的剩余比特數(shù),作為當(dāng)前幀的預(yù)測比特數(shù),然后根據(jù)式(2)更新當(dāng)前幀的緩沖區(qū)參數(shù)。并行編碼幀緩沖區(qū)參數(shù)的動態(tài)更新如圖3所示。

      圖3 并行編碼幀緩沖區(qū)參數(shù)動態(tài)更新示意圖

      3.4 并行碼率控制算法流程

      并行碼率控制算法具體步驟如下:

      1)根據(jù)獲得的整幀目標(biāo)比特數(shù)Ti,以及當(dāng)前幀的SAD,由式(5)可以得到當(dāng)前幀的初始QP值。

      2)在并行編碼的各幀,每編碼一行宏塊之后,按照式(6)~(8)進(jìn)行coeff更新,然后根據(jù)coeff以及SAD和QP按式(5)計算并預(yù)測當(dāng)前幀剩余部分的比特。

      3)由當(dāng)前幀已編碼的比特數(shù)和步驟2)預(yù)測的剩余比特數(shù),作為當(dāng)前幀的預(yù)測比特,根據(jù)當(dāng)前幀預(yù)測值與目標(biāo)分配比特的差,同時考慮當(dāng)前幀的緩沖區(qū)情況調(diào)整QP值,得到下一行的QP值。

      4)根據(jù)當(dāng)前幀更新后的coeff和調(diào)整后的QP值,重新預(yù)測當(dāng)前幀的比特數(shù),按照式(2)更新所有正在并行編碼幀的緩沖區(qū)。

      5)對于并行編碼的各幀,循環(huán)計算步驟2)~4)。

      4 實(shí)驗(yàn)結(jié)果與分析

      為了驗(yàn)證所提出的碼率控制算法可行性,本文采用廣電總局廣播科學(xué)規(guī)劃院6個1 920×1 080的高清序列作為測試序列:volleyball,dial,parterre,basketball,leaf,birdcage。并行編碼的多線程條件為:總線程數(shù)24,幀間線程數(shù)12。本文算法在加速比可達(dá)到12的前提下,通過測試基于串行編碼的碼率控制和本文提出的基于并行編碼的碼率控制兩種條件下PSNR和VBV緩沖區(qū)情況,證明所提出算法的可行性。在下面試驗(yàn)中,串行條件是基于串行編碼的碼率控制方法,并行條件是本文提出的基于并行編碼的碼率控制方法。

      4.1PSNR對比

      本文對6個高清序列進(jìn)行測試,設(shè)置運(yùn)動估計參數(shù)為ME2,亞像素搜索參數(shù)為2,比特率為12 000 kbit/s。首先給出6個序列在串行和并行碼率控制下的平均PSNR數(shù)值,如表1所示。

      表1 串行和并行條件下測試序列的平均PSNR

      dB

      條件parterredialvolleyballbasketballleafbirdcage串行248891624799933240697324019424908443243006并行248906424799123240461324002124827293242139

      從表1可以看出,并行條件下的平均PSNR與串行條件下的比較,性能下降在0.01~0.12 dB,屬于可以接受的范圍,說明本文算法在并行編碼多幀時沒有擴(kuò)大誤差,圖像質(zhì)量仍在理想范圍內(nèi)。

      為了能更直觀地分析每個序列在串行碼率控制和并行碼率控制條件下的率失真情況,筆者繪制在并行和串行碼率控制方案下各個序列250幀的亮度分量編碼率失真對比曲線圖,如圖4所示。

      圖4 測試序列在不同碼率控制條件下的每幀PSNR

      由上述測試序列每幀PSNR對比圖可以看出,并行條件下每幀PSNR性能基本與串行條件下接近,符合實(shí)際應(yīng)用的需求,解決了并行編碼的碼率控制的難題。

      4.2VBV緩沖區(qū)占有度對比

      對于并行編碼系統(tǒng)下的碼率控制方案,除了測試PSNR性能,還需要從VBV緩沖區(qū)的充溢程度來考察其性能。對6個不同高清序列每幀的VBV情況分別在串行和并行條件下進(jìn)行測試,得到如圖5所示6組對比曲線圖。

      由每幀VBV緩沖情況對比圖可以看出,并行條件下VBV沒有上溢和下溢,每幀VBV情況基本與串行條件下接近,說明對并行編碼幀的比特預(yù)測相對準(zhǔn)確,保證了碼率控制的精確性。

      5 結(jié)束語

      本文首先分析傳統(tǒng)碼率控制方案應(yīng)用于并行編碼框架的局限性,然后研究了基于并行編碼的碼率控制方案,根據(jù)并行編碼的特性,通過幀級比特分配和動態(tài)預(yù)測幀比特來進(jìn)行并行碼率控制。最后通過測試串行和并行條件下PSNR和VBV緩沖區(qū)來說明本文提出的算法解決了并行編碼碼率控制的難題。

      圖5 測試序列在不同碼率控制條件下的每幀VBV緩沖情況

      [1] GE S,TIAN X,CHEN Y K.Efficient multithreading implementation of H.264 encoder on Intel hyper-threading architectures[C]//Proc. 2003 Joint Conference of the Fourth International Conference.Singapore:IEEE Press,2003:469-473.

      [2] CHING C, ALVAREZ-MESA M,JUURLINK B.Parallel scalability and efficiency of HEVC parallelization approaches[J]. IEEE Trans. Circuit and System for Video Technology,2012,22(12):1827-1838.

      [3] FULDSETH A,HOROWITZ M,XU S L.Titles for managing computational complexity of video encoding and decoding[C]//Proc. Picture Coding Symposium(PCS).Krakow:IEEE Press,2012:382-392.

      [4] JIANG Xiaochen,LI Guoping.A novel parallel video coding framework for AVS+ real time encoder[C]//Proc.Pacific-Rim Conference on Multimedia.Nanjing:Springer International Publishing,2013:170-179.

      [5] 蔣驍辰,李國平.基于AVS+實(shí)時編碼的多核并行視頻編碼算法[J].電子與信息學(xué)報,2014,36(4):810-816.

      [6] MA Siwei,GAO Wen,LU Yan,et al.Proposed draft description of rate control on JVT standard[EB/OL].[2015-05-02]. http://ftp3.itu.ch/av-arch/jvt-site/2002_12_Awaji.

      [7] LI Zhengguo,PAN Feng,LIM K P,et al.Adaptive basic unit layer rate control for JVT[EB/OL].[2015-04-14].http://wftp3.itu.int/av-arch/jvt-site/2003_03_Pattaya/JVT-G12r1.zip.

      [8] 于俊清,李江,魏海濤.基于同構(gòu)多核處理器的H264多粒度并行編碼器[J].計算機(jī)學(xué)報,2009,32(6):1100-1109.

      吳曉光(1990— ),碩士生,主研視頻編解碼技術(shù);

      李國平(1974— ),博士,碩士生導(dǎo)師,主要研究方向?yàn)閿?shù)字音視頻編解碼技術(shù)、復(fù)用技術(shù)、網(wǎng)絡(luò)傳輸技術(shù)等;

      王國中(1962— ),博士,教授,博士生導(dǎo)師,研究領(lǐng)域?yàn)橐曨l編解碼與多媒體通信、數(shù)字電視、視頻云計算等。

      責(zé)任編輯:時 雯

      Research of Rate Control Algorithm Based on Parallel Video Coding

      WU Xiaoguang,LI Guoping,WANG Guozhong,TENG Guowei,ZHAO Haiwu

      (CollegeofCommunicationandInformationEngineering,ShanghaiUniversity,Shanghai200072,China)

      Based on the characteristics of parallel video coding, traditional rate control algorithm can not be applied to parallel coding framework directly due to its limitation.In this paper, a rate control algorithm is proposed, in which theSADis calculated before video coding and the original frame is used as reference frame. Then the rate control algorithm is accomplished by using theSADto allocate frame-level bits and predict those frame bits which be coded simultaneously.Experimental results demonstrate the feasibility of the scheme by testingPSNRandVBVunder condition of serial and parallel rate control.

      parallel coding;rate control;bit prediction;bit allocation

      國家自然科學(xué)基金項目(61271212);上海市科委重點(diǎn)項目資助項目(12511502502)

      TN919.8

      A

      10.16280/j.videoe.2015.16.021

      2015-06-24

      【本文獻(xiàn)信息】吳曉光,李國平,王國中,等.基于視頻并行編碼的碼率控制算法研究[J].電視技術(shù),2015,39(16).

      猜你喜歡
      宏塊碼率緩沖區(qū)
      嵌入式系統(tǒng)環(huán)形緩沖區(qū)快速讀寫方法的設(shè)計與實(shí)現(xiàn)
      基于狀態(tài)機(jī)的視頻碼率自適應(yīng)算法
      基于場景突變的碼率控制算法
      基于選擇特征宏塊的快速視頻穩(wěn)像
      X264多線程下碼率控制算法的優(yōu)化
      關(guān)鍵鏈技術(shù)緩沖區(qū)的確定方法研究
      多光譜圖像壓縮的聯(lián)合碼率分配—碼率控制方法
      基于宏塊合并的H.264模式選擇算法
      地理信息系統(tǒng)繪圖緩沖區(qū)技術(shù)設(shè)計與實(shí)現(xiàn)
      電視技術(shù)(2012年1期)2012-06-06 08:13:58
      宁强县| 邹平县| 宜春市| 金山区| 宁阳县| 榆树市| 荥阳市| 武功县| 教育| 云林县| 尤溪县| 永福县| 嘉峪关市| 信宜市| 仙游县| 射阳县| 汉源县| 四会市| 潮州市| 民权县| 汽车| 微山县| 玛沁县| 江安县| 钟祥市| 广宗县| 如东县| 溧水县| 平利县| 客服| 钟祥市| 读书| 昂仁县| 山东省| 北京市| 延安市| 铜陵市| 平利县| 龙游县| 五原县| 思南县|