姚曉敏,王萬良,岑躍峰,王超超
(浙江工業(yè)大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,杭州310023)
·多媒體技術(shù)及應(yīng)用·
一種面向HEVC的編碼單元深度決策算法
姚曉敏,王萬良,岑躍峰,王超超
(浙江工業(yè)大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,杭州310023)
新一代高性能視頻編碼(HEVC)標(biāo)準(zhǔn)采用靈活的四叉樹自適應(yīng)存儲結(jié)構(gòu)、可變尺寸的編碼塊、35種幀內(nèi)預(yù)測模式等新技術(shù),能夠有效提升HEVC的編碼效率,但也造成了更高的編碼復(fù)雜度。為此,提出一種基于時(shí)空相關(guān)性的編碼單元深度決策算法。融合關(guān)聯(lián)幀編碼單元的深度信息及當(dāng)前幀相鄰編碼單元的深度信息,從而預(yù)測當(dāng)前編碼單元的深度范圍。實(shí)驗(yàn)結(jié)果表明,與HEVC標(biāo)準(zhǔn)測試算法相比,該算法能在不明顯影響編碼質(zhì)量的基礎(chǔ)上平均減少30.2%的編碼時(shí)間。
高性能視頻編碼標(biāo)準(zhǔn);編碼單元;編碼復(fù)雜度;時(shí)空相關(guān)性;深度決策;編碼時(shí)間
伴隨著移動互聯(lián)等新興技術(shù)不斷發(fā)展,視頻的質(zhì)量也從2K~4K(超高清、超高清)不斷發(fā)展、傳輸媒介也從PC端向移動端等方向發(fā)展[1],對視頻編碼壓縮和傳輸提出更高的要求。國際標(biāo)準(zhǔn)化組織開展了視頻編碼標(biāo)準(zhǔn)協(xié)議的研究,先后產(chǎn)生了MPEG-4、H.264/AVC等國際通用的視頻編碼標(biāo)準(zhǔn)。2010年,國際標(biāo)準(zhǔn)化組織下屬的運(yùn)動圖像專家組和國際電信聯(lián)合會下屬的視頻編碼專家組成立了視頻編碼聯(lián)合組,致力于研究下一代的視頻編碼標(biāo)準(zhǔn),即高性能視頻編碼(High Efficiency Video Coding,HEVC)標(biāo)準(zhǔn),并于2013年正式發(fā)布[2]。與之前的視頻編碼協(xié)議相比,HEVC采用了靈活的四叉樹自適應(yīng)存儲結(jié)構(gòu)、35種(包括planner模式和DC模式)的幀內(nèi)預(yù)測模式、自適應(yīng)環(huán)路濾波、可變化尺寸的編碼塊等新技術(shù),這些技術(shù)的改進(jìn)使得HEVC比先前的標(biāo)準(zhǔn)節(jié)省了50%的編碼率[3]。但是,伴隨著編碼效率的提升,編碼復(fù)雜度也急劇提升。為了有效降低HEVC的編碼復(fù)雜度,本文提出一種面向HEVC的編碼單元(Coding Unit,CU)深度決策算法。介紹HEVC編碼原理,對編碼單元深度值優(yōu)化的相關(guān)研究進(jìn)行總結(jié),描述面向HEVC的編碼單元深度決策算法,并進(jìn)行實(shí)驗(yàn)。
編碼單元是HEVC最基本的編碼和處理單元。在HEVC中,每一幀圖像被分割成多個(gè)互不重疊的LCU,每一個(gè)LCU的尺寸都是64×64像素[4]。如圖1所示,若當(dāng)前LCU為編碼塊時(shí),CU的尺寸從64× 64像素逐步分割直到8×8像素;每一次分割CU的深度值(Depth)增加1,最小尺寸8×8像素的深度值(Depth)為3。
圖1 LCU分割示意圖
HEVC使用率失真損耗來計(jì)算當(dāng)前編碼塊的性能,計(jì)算公式為:
其中,SSE表示使用預(yù)測模式計(jì)算的殘差平方和;λ表示拉格朗日系數(shù);bmode表示使用當(dāng)前預(yù)測模式下進(jìn)行編碼的碼率。
HEVC通過計(jì)算每個(gè)預(yù)測單元(PU)的35種預(yù)測模式RD_Cost,選取RD_Cost值最小的模式為最佳預(yù)測模式。HEVC每一次分割都要計(jì)算每一個(gè)CU的RD_Cost,直到LCU分割到8×8像素最小尺寸:
通過式(2),迭代計(jì)算RD_Cost最小的分割方式即為LCU的最佳分割方式,并通過Z字型掃描進(jìn)行四叉樹存儲。從上述的計(jì)算可知,每一個(gè)LCU達(dá)到最佳的編碼模式需要進(jìn)行85次分割(40+41+42+43),每個(gè)編碼單元的尺寸(CUsize)需要計(jì)算35種幀內(nèi)預(yù)測模式。與之前標(biāo)準(zhǔn)相比,HEVC在提升編碼效率的同時(shí)編碼復(fù)雜度卻在不斷增加。
針對這個(gè)問題,國內(nèi)外學(xué)者提出很多新的方法用以降低HEVC的編碼復(fù)雜度[5-7]。文獻(xiàn)[8]提出一種通過選取空域上相鄰已編碼塊的最佳預(yù)測模式作為候選最佳模式(Most Possible Mode,MPM)的方法,算法通過優(yōu)化的粗模式選擇(Rough Modes Decision,RDM)算法候選預(yù)測模式和MPM算法達(dá)到降低復(fù)雜度的目的;文獻(xiàn)[9]提出一種根據(jù)圖像紋理變化特征選取為主要幀內(nèi)預(yù)測模式方向的優(yōu)化方法,該方法將35種幀內(nèi)預(yù)測模式根據(jù)變化方向性等特征分成5類,從而將35種預(yù)測模式優(yōu)化到9種主要幀內(nèi)預(yù)測模式。文獻(xiàn)[10]研究每一種CU尺寸最佳分割率失真閾值,通過該方法能夠有效降低編碼復(fù)雜度。文獻(xiàn)[11]提出2種幀內(nèi)預(yù)測模式優(yōu)化的策略:(1)通過比較當(dāng)前PU的RMD算法候選模式、MPM算法最佳模式和上一深度的率失真最佳預(yù)測模式來確定當(dāng)前PU的最佳預(yù)測模式;(2)綜合計(jì)算當(dāng)前PU左邊塊、上邊塊、左上塊、右上塊和上一深度的率失真代價(jià)得到一個(gè)預(yù)測模式閾值,若當(dāng)前幀內(nèi)預(yù)測模式的率失真小于該閾值則提前終止算法。
綜合相關(guān)文獻(xiàn)創(chuàng)新點(diǎn),降低HEVC的編碼復(fù)雜度概括為以下3種方法:(1)采用鄰塊類型預(yù)判斷或者提前終止的思想進(jìn)行塊劃分;(2)通過簡化率失真損耗函數(shù)來降低計(jì)算的復(fù)雜度;(3)將一些可能小的預(yù)測模式提前排除,以到達(dá)縮小編碼模式選擇范圍。根據(jù)視頻幀的時(shí)空關(guān)聯(lián)性特征,本文提出一種基于空間相關(guān)性的快速CU分割方法,該方法通過關(guān)聯(lián)幀的CU尺寸對當(dāng)前幀的編碼塊進(jìn)行預(yù)判達(dá)到降低復(fù)雜度的目的。
視頻由連續(xù)的圖像序列幀組成,具有空間相關(guān)性和時(shí)間相關(guān)性2種特征。由于幀與幀之間時(shí)間間隔非常短,前后幀之間存在著大量的冗余信息,這種關(guān)系稱為時(shí)間相關(guān)性;一個(gè)像素通常與其周圍的像素點(diǎn)存在關(guān)聯(lián),這種特征稱為空間相關(guān)性。由于空間相關(guān)性特征的存在,因此HEVC編碼幀與編碼幀之間CU分割方式也存在極強(qiáng)的關(guān)聯(lián)性。為了驗(yàn)證編碼的性能,HEVC提供了5類官方的測試序列ClassA,ClassB,ClassC,ClassD和ClassE。ClassA從超清視頻序列“Traffic”(4 096×2 048像素,30 f/s)和“PeopleOnStreet”(3 840×2 160像素,30 f/s)中截取的2 560×1 600像素的超清序列;ClassB、ClassC和ClassD分別是(1 920×1 080像素,24 f/s)、(832×480像素,30 f/s~60 f/s)和(416×240像素, 30 f/s~60 f/s)的視頻序列,視頻內(nèi)容涉及各類日常場景;ClassE主要是(1 280×720像素,60 f/s)的會議視頻序列。本文選取了不同分辨率下3組視頻序列 Cactus(ClassB,192×1 080像素,50 f/s) 、BQMall(ClassC,832×480像素,60 f/s)、BQSquare (ClassD,416×240像素,60 f/s)的前100幀分別在HM10.0平臺上進(jìn)行驗(yàn)證,量化參數(shù)(QP)分別設(shè)為22,27,32,37和42。在不同QP值下,當(dāng)前幀編碼單元深度(Current_Cu Depth)與關(guān)聯(lián)幀編碼單元深度(Co-located_Cu Depth)分布的平均概率分布如表1所示,其中,β′表示對應(yīng)的當(dāng)前編碼單元深度。
表1 Current_Cu和Co-located_Cu深度分布概率 %
從表1可以看出,當(dāng)Co-located_Cu最佳分割深度為Depth=0時(shí),Current_Cu在最終劃分深度在Depth=2和Depth=3的概率非常低,僅為6%和3.7%;當(dāng)Co-located_Cu最佳分割深度為Depth=1時(shí),Current_Cu在最終劃分深度在Depth=3尺寸的概率僅為6%;當(dāng)Co-located_Cu最佳分割深度為Depth=3時(shí),Current_Cu在最終劃分深度在Depth=0概率僅為4.6%。實(shí)驗(yàn)驗(yàn)證參考幀的編碼深度可以作為當(dāng)前幀編碼單元深度決策的重要依據(jù),即當(dāng)參考幀對應(yīng)編碼單元位于比較平滑區(qū)域時(shí)(Depth=0和Depth=1),當(dāng)前編碼單元的深度決策可以跳過Depth=2或Depth=3的編碼單元的率失真損耗遍歷計(jì)算;當(dāng)參考幀對應(yīng)編碼單元位于紋理比較細(xì)膩或復(fù)雜區(qū)域時(shí)(Depth=3),當(dāng)前編碼單元的深度決策可以忽略Depth=0的編碼單元的率失真損耗遍歷計(jì)算;當(dāng)參考幀對應(yīng)編碼單元Depth=2時(shí),說明該編碼單元位于過渡區(qū)域或邊界區(qū)域,所以,當(dāng)前編碼單元需要對所有深度信息進(jìn)行率失真損耗遍歷計(jì)算。
視頻序列除了在時(shí)域上存在很強(qiáng)的相關(guān)性[12],在空域也存在一定的關(guān)聯(lián)性[13]。這種關(guān)聯(lián)性的拓?fù)浣Y(jié)構(gòu)如圖2所示。
圖2 編碼單元的時(shí)域和空域關(guān)聯(lián)性
本文提出一種基于時(shí)域相關(guān)性的深度決策優(yōu)化初步設(shè)想,考慮到圖像幀可能處在某些臨界區(qū)域或劇烈變化,本文通過當(dāng)前編碼塊相鄰已編碼區(qū)域的深度信息作為輔助參考信息來進(jìn)一步優(yōu)化決策算法。空間相關(guān)性關(guān)系由式(3)得出:
其中,Cu_Split表示關(guān)聯(lián)編碼單元深度信息值;Culeft,Cuup,Cul_u分別表示與當(dāng)前編碼單元相鄰的左側(cè)、上方和左上方已編碼單元的深度值。結(jié)合文獻(xiàn)[14]方法,3個(gè)編碼單元的深度權(quán)值都設(shè)定為1/3。具體的算法流程如圖3所示。
圖3 深度快速決策算法
算法步驟如下:
步驟1關(guān)聯(lián)幀參考編碼單元的深度為0,利用式(3)計(jì)算獲得Cu_Split的值。若Cu_Split<2,則跳過深度2和3,只對深度為0和1的編碼塊進(jìn)行率失真損耗(RD_Cost)最優(yōu)迭代計(jì)算;否則,對所有深度進(jìn)行率失真損耗最優(yōu)迭代計(jì)算。
步驟2關(guān)聯(lián)幀參考編碼單元的深度為1,利用式(3)計(jì)算獲得Cu_Split的值。若Cu_Split<2,則跳過深度3,對深度為0,1和2的編碼塊進(jìn)行RD_ Cost最優(yōu)迭代計(jì)算;否則,對所有深度進(jìn)行RD_Cost最優(yōu)迭代計(jì)算。
步驟3關(guān)聯(lián)幀參考編碼單元的深度為3,則跳過深度0,對深度為1,2和3的編碼塊進(jìn)行RD_Cost最優(yōu)迭代計(jì)算。
步驟4關(guān)聯(lián)幀參考編碼單元的深度為2,則對所有深度進(jìn)行RD_Cost最優(yōu)迭代計(jì)算。
為了驗(yàn)證算法的優(yōu)化性能,本文在HM10.0實(shí)驗(yàn)平臺上對視頻序列 RaceHorse(ClassC,832× 480像素,30 f/s)和 BasketballPass(ClassD,416× 240像素,30 f/s)進(jìn)行驗(yàn)證,QP量化參數(shù)分別設(shè)定為:22,27,32,37和42。RaceHorse序列場景較為平滑和穩(wěn)定,BasketballPass序列場景較為復(fù)雜和變化劇烈,2個(gè)視頻具有很強(qiáng)的代表性,對驗(yàn)證算法性能具有參考價(jià)值。通過比較性能指標(biāo)峰值信噪比的變化(ΔPSNR)、比特率變化率(ΔBitRate)和編碼時(shí)間變化率(ΔEncTime)來驗(yàn)證本文算法優(yōu)化效率,具體計(jì)算方法如下:
其中,PSNR表示采用本文算法編解碼后的視頻峰值信噪比;PSNRHM表示采用HM10.0算法編碼后的視頻峰值信噪比;BitRate表示采用本文算法編碼后的視頻的平均碼率;BitRateHM表示采用HM10.0算法編碼后的視頻的平均碼率;EncTime表示采用本文算法進(jìn)行視頻編碼的編碼時(shí)間;EncTimeHM表示采用HM10.0算法進(jìn)行視頻編碼的編碼時(shí)間。
由表2和表3可見,在相同的QP值下,本文算法對RaceHorse序列的編碼性能優(yōu)于BasketballPass序列。因?yàn)镽aceHorse序列相對比較平滑和穩(wěn)定,編碼單元的深度值在0和1的概率比較高,而本文算法的性能優(yōu)化也主要針對這2個(gè)深度值,所以編碼時(shí)間節(jié)省相對較多;而BasketballPass序列相對比較復(fù)雜和變化劇烈,所以同樣的QP值下,節(jié)省的編碼時(shí)間就相對較少。
表2 RaceHorse序列的編碼性能
表3 BasketballPass序列的編碼性能
QP值是量化過程中的采樣步長,QP值越大視頻圖像的精度就越低。同一個(gè)編碼單元采用越大的QP值,它的圖像紋理也更加趨于平滑。本文算法對平滑區(qū)域的編碼單元有更好的性能優(yōu)化。由表2和表3可見,在同一個(gè)編碼測試序列中,隨著QP值的不斷增加,本文算法的編碼時(shí)間節(jié)省也越多,驗(yàn)證了本文算法的有效性。
由圖4和圖5可見,本文算法和HEVC標(biāo)準(zhǔn)算法相比,在相同的圖像質(zhì)量下,經(jīng)本文算法編碼的視頻序列僅僅增加了很小的碼率,基本沒有影響編碼性能。
圖4 2種算法RaceHorse編碼性能對比
圖5 2種算法BasketballPass編碼性能對比
綜合本文算法和HM10.0的算法,本文算法平均減少了30.2%的編碼時(shí)間,而碼率和信噪比波動卻很小。尤其是在對RaceHorse序列深度決策優(yōu)化時(shí),平均編碼時(shí)間能夠減少到34.2%,而平均峰值信噪比僅減少0.032 dB,輸出的碼率僅0.338%。由此可知,本文算法是一種有效的編碼單元深度快速決策算法。
本文利用視頻序列在時(shí)域和空域的相關(guān)性特點(diǎn),提出一種編碼單元深度決策算法。融合關(guān)聯(lián)幀編碼單元的深度信息及當(dāng)前幀相鄰編碼單元的深度信息,從而優(yōu)化當(dāng)前編碼單元的最佳深度。實(shí)驗(yàn)結(jié)果表明,與HM10.0相比,在編碼效率幾乎沒有變化的情況下,編碼時(shí)間減少30.2%,能有效降低HEVC的編碼復(fù)雜性。
為了進(jìn)一步提升HEVC的編碼效率,在未來的研究工作中將針對率失真損耗方法進(jìn)行研究并提出更為高效的編碼單元深度分割方法。
[1] 朱秀昌,李 欣,陳 杰.新一代視頻編碼標(biāo)準(zhǔn)——HEVC[J].南京郵電大學(xué)學(xué)報(bào):自然科學(xué)版,2013, 33(3):1-10.
[2] 沈曉琳.HEVC低復(fù)雜度編碼優(yōu)化算法研究[D].杭州:浙江大學(xué),2013.
[3] Wiegand T.Special Section on the Joint Call for Proposals on High Efficiency Video Coding(HEVC)Standardization[J].IEEE Transactions on Circuits and Systems for Video Technology,2010,20(12):1661-1666.
[4] Sullivan G J.Overview of the High Efficiency Video Coding(HEVC)Standard[J].IEEE Transactions on Circuits and Systems for Video Technology,2012, 22(12):1649-1668.
[5] Sanghyo P,Kiho C,Jang E S.CU Depth-based ALF Decision for Fast HEVC Encoding[C]//Proceedings of the 16th IEEE International Symposium on Consumer Electronics.Harrisburg,USA:Consumer Electronics, 2012:1-4.
[6] Leng Jie,Sun Lei,Takeshi I.Content Based Hierarchical Fast Coding Unit Decision Algorithm for HEVC[C]// Proceedings of International Conference on Multimedia and Signal Processing’11.Guilin,China:Multimedia and Signal Processing,2011:56-59.
[7] Guifen T,Goto S.Content Adaptive Prediction Unit Size Decision Algorithm forHEVC IntraCoding[C]// Proceedings of PCS’12.Krakow,Poland:[s.n.],2012:405-408.
[8] Zhao Liang,Zhang Li,Ma Siwei,et al.Fast Mode Decision Algorithm for Intra Prediction in HEVC[C]// Proceedings of VCIP’11.Tainan,China:[s.n.],2011: 1-4.
[9] Silva D T L,Agostini L V,Cruz L A.Fast HEVC Intra Prediction Mode Decision Based on EDGE Direction Information[C]//Proceedings of EUSIPCO’12.Bucharest, Romania:[s.n.],2012:1214-1218.
[10] Jongho K,Yoonsik C,Yong-Goo K.Fast Coding Unit Size Decision Algorithm for Intra Coding in HEVC[C]// Proceedings of ICCE’13.Las Vegas,USA:[s.n.],2013: 627-638.
[11] Shen Liquan,Zhao Yang,Ping An.Fast CU Size Decision and Mode Decision Algorithm for HEVC Intra Coding[J]. IEEE Transactions on Consumer Electronics,2013,59(1): 207-213.
[12] Yongfei Z.Fast Coding Unit Depth Decision Algorithm for Interframe Coding in HEVC[C]//Proceedings of DCC’13.Snowbird,USA:[s.n.],2013:53-62.
[13] 劉西振,楊 靜,王 威.基于FPGA的H.264幀內(nèi)預(yù)測實(shí)現(xiàn)和優(yōu)化[J].計(jì)算機(jī)工程,2012,38(7):257-259,262.
[14] Shen Liquan,Liu Zhi,Zhang Xinpeng,et al.An Effective CU Size Decision Method for HEVC Encoders[J].IEEE Transactions on Multimedia,2013,15(2):465-470.
編輯 劉 冰
A Depth Decision Algorithm of Coding Unit for HEVC
YAO Xiaomin,WANG Wanliang,CEN Yuefeng,WANG Chaochao
(College of Computer Science&Technology,Zhejiang University of Technology,Hangzhou 310023,China)
The emerging High Efficiency Video Coding(HEVC)standard adopts the quadtree-structured coding units, variable size of Coding Unit(CU),35 intra prediction modes,etc.Compared with other standards,HEVC provides higher coding efficiency,leading to higher coding complexity however.In order to reduce computational complexity,it proposes a depth decision algorithm for coding unit in HEVC by using the video temporal and spatial correlation.According to the depth in the previous and neighbor CU,it can pre-determine the candidate CU depth.Experimental results demonstrate that the proposed algorithm saves 30.2%encoding time on average while maintaining almost the same performance as the original HEVC algorithm.
High Efficiency Video Coding(HEVC)standard;Coding Unit(CU);coding complexity;temporal and spatial correlation;depth decision;coding time
1000-3428(2015)01-0240-05
A
TN919.8
10.3969/j.issn.1000-3428.2015.01.045
國家自然科學(xué)基金資助項(xiàng)目(61379123);國家“十二五”科技支撐計(jì)劃基金資助項(xiàng)目(2012BAD10B01)。
姚曉敏(1986-),男,碩士,主研方向:視頻編碼傳輸,多媒體技術(shù);王萬良,教授、博士生導(dǎo)師;岑躍峰,博士研究生;王超超,碩士研究生。
2014-03-07
2014-04-02 E-mail:yaoxm@zjut.edu.cn
中文引用格式:姚曉敏,王萬良,岑躍峰,等.一種面向HEVC的編碼單元深度決策算法[J].計(jì)算機(jī)工程,2015, 41(1):240-244.
英文引用格式:Yao Xiaomin,Wang Wanliang,Cen Yuefeng,et al.A Depth Decision Algorithm of Coding Unit for HEVC[J].Computer Engineering,2015,41(1):240-244.