文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2016.10.030
中文引用格式: 雷海衛(wèi),劉文怡,王安紅. 3D-HEVC中深度圖幀內(nèi)預(yù)測(cè)模式判決過程的改進(jìn)[J].電子技術(shù)應(yīng)用,2016,42(10):116-119.
英文引用格式: Lei Haiwei,Liu Wenyi,Wang Anhong. Improvement on mode decision process of depth map intra-predicted in 3D-HEVC[J].Application of Electronic Technique,2016,42(10):116-119.
0 引言
3D-HEVC(The 3D Extension of High-efficiency Video Coding)是繼HEVC之后由視頻編碼協(xié)作小組制定的又一個(gè)視頻編碼標(biāo)準(zhǔn),它是HEVC的擴(kuò)展[1],主要用于實(shí)現(xiàn)3D視頻和自由視點(diǎn)視頻(Free Viewpoint Video,F(xiàn)VV)的編碼。在3D-HEVC中,除需要對(duì)幾個(gè)不同視點(diǎn)的紋理視頻(Texture)進(jìn)行編碼外,還需要對(duì)相應(yīng)視點(diǎn)的深度圖(Depth)進(jìn)行編碼。解碼端根據(jù)接收到的紋理視頻和深度圖利用基于深度圖繪制的技術(shù)(Depth Image Based Rendering,DIBR)[2]合成中間的虛擬視點(diǎn)視頻。從而可以由少數(shù)的幾個(gè)視點(diǎn)的視頻生成更多可觀看的視點(diǎn)。在采用3D-HEVC技術(shù)后,用戶可以欣賞到來自同一場(chǎng)景但從不同角度拍攝的視頻內(nèi)容,此外,視頻的呈現(xiàn)方式也可以是3D的,這樣的視頻被稱為自由視點(diǎn)立體視頻??梢钥闯觯捎?D-HEVC編碼的視頻能給人們帶來更好的視覺感受和增強(qiáng)用戶體驗(yàn)。但這也造成了3D-HEVC的編碼結(jié)構(gòu)以及編碼過程十分復(fù)雜,進(jìn)而使得編碼時(shí)間過長(zhǎng)。
3D-HEVC基本沿用了HEVC中的編碼技術(shù),這些技術(shù)能高性能、高質(zhì)量地完成對(duì)紋理視頻的編碼,但對(duì)深度圖的編碼效果并不好,因?yàn)樯疃葓D有不同于紋理圖的特征,深度圖通常包含了一些銳利的邊界和大片的平坦區(qū)域。采用HEVC中的編碼技術(shù)來編碼深度圖,解碼后的深度圖內(nèi)部邊界處會(huì)產(chǎn)生偽影效應(yīng),這將影響合成的虛擬視點(diǎn)的質(zhì)量。為了改善深度圖的編碼效果,3D-HEVC禁用和修改了HEVC中的幾個(gè)編碼工具。此外,還加入了一些新的編碼工具,包括深度圖建模模式(Depth Modelling Mode,DMM)[3]、簡(jiǎn)化的深度圖編碼(Simplified Depth Coding,SDC)和單一深度幀內(nèi)模式(Single Depth Intra Mode)等。
1 深度圖建模模式
深度圖建模模式是一種新的幀內(nèi)預(yù)測(cè)模式,用于對(duì)深度值有明顯過渡的區(qū)域進(jìn)行編碼。最初制定了4種預(yù)測(cè)模式,即DMM1、DMM2、DMM3和DMM4,目前保留使用的是DMM1(Explicit Wedgelet Signalling)和DMM4(Inter-component-predicted Contour partitioning)。兩者采用了不同的劃分類型:楔形和輪廓形劃分。兩種劃分方式均會(huì)把一個(gè)編碼塊劃分為兩部分(P1和P2),如圖1所示。
圖1中以8×8的編碼塊為例進(jìn)行說明,左側(cè)為連續(xù)空間,右側(cè)為對(duì)應(yīng)的離散空間。深度圖建模模式除需要?jiǎng)澐中畔⑼猓€需要為劃分出的每個(gè)區(qū)域指定一個(gè)常量值,來表示這一區(qū)域的深度值。在使用深度圖建模模式對(duì)深度圖進(jìn)行編碼時(shí),可以選擇這兩種模型中的一種對(duì)當(dāng)前編碼塊進(jìn)行建模,作為當(dāng)前編碼塊的預(yù)測(cè)信號(hào)。
在原有預(yù)測(cè)模式基礎(chǔ)上加入深度圖建模模式后,能有效地降低內(nèi)部邊界處的偽影效應(yīng),改善深度圖的編碼質(zhì)量,但同時(shí)也極大地增加了編碼的計(jì)算復(fù)雜度。復(fù)雜度的增加來自兩個(gè)方面:一方面,新增加的模式使可供選擇的模式數(shù)量增加,從而在模式判決時(shí)會(huì)消耗更多的時(shí)間;另一方面,深度圖建模模式自身的建模過程也非常耗時(shí)。因此,對(duì)模式判決過程或者建模過程進(jìn)行優(yōu)化都會(huì)使編碼過程加速,從而提高編碼效率。本文旨在對(duì)模式判決過程進(jìn)行優(yōu)化。
HEVC中原有35種幀內(nèi)預(yù)測(cè)模式,分別是Planar模式、DC模式以及33種角度模式。對(duì)這35種模式,首先采用基于殘差的哈達(dá)瑪變換方法進(jìn)行粗選,針對(duì)64×64、32×32和16×16大小的編碼塊會(huì)選出3個(gè),針對(duì)8×8和4×4大小的塊會(huì)選出8個(gè)預(yù)測(cè)模式加入全率失真候選列表,然后進(jìn)行全率失真代價(jià)計(jì)算,選取使得率失真代價(jià)值最小的模式作為最佳的幀內(nèi)預(yù)測(cè)模式。深度圖建模模式被設(shè)計(jì)為幀內(nèi)預(yù)測(cè)模式,因此DMM1和DMM4也被加入到全率失真候選列表參與率失真代價(jià)計(jì)算。整個(gè)幀內(nèi)預(yù)測(cè)的模式判決過程如圖2所示。
2 相關(guān)工作
如前所述,深度圖包含了大塊的平坦區(qū)域,這也就表明并不是深度圖中的所有編碼塊都適用于深度圖建模模式。因此當(dāng)對(duì)某個(gè)塊進(jìn)行預(yù)測(cè)編碼時(shí),DMM1和DMM4兩個(gè)預(yù)測(cè)模式無條件地加入到全率失真候選列表進(jìn)行全率失真代價(jià)的計(jì)算會(huì)額外增加編碼的計(jì)算復(fù)雜度。
針對(duì)這種情況,一些快速的模式判決算法被提出。文獻(xiàn)[4]基于最大概率模式提出了一個(gè)快速的深度圖建模模式選擇算法。文獻(xiàn)[5]提出當(dāng)預(yù)測(cè)塊中深度值的變化小于某個(gè)閾值時(shí),則略過深度圖建模模式。在文獻(xiàn)[6]中,一個(gè)類似的采用閾值的方法被提出。文獻(xiàn)[7]中,一個(gè)簡(jiǎn)化的邊檢測(cè)器和一個(gè)基于梯度的模式濾波器被用來決定是否略過深度圖建模模式。文獻(xiàn)[8]采用了一種基于哈達(dá)瑪域的邊分類算法來加速模式判決過程。
其中,文獻(xiàn)[4]和文獻(xiàn)[5]是在視頻編碼協(xié)作小組舉辦的國(guó)際會(huì)議上提交的提案。提案中的方法已被采納并加入到3D-HEVC的參考軟件HTM中。具體而言,它采用了兩個(gè)策略來判斷是否將深度圖建模模式加入到全率失真候選列表。一個(gè)是基于最大可能性統(tǒng)計(jì),即認(rèn)為經(jīng)過粗選之后若候選列表中的第一個(gè)預(yù)測(cè)模式為Planar模式,則當(dāng)前塊極可能是平坦的或光滑的,因此深度圖建模模式將以極大的概率不會(huì)被選作最佳的預(yù)測(cè)模式。另一個(gè)是基于閾值的方法,閾值表達(dá)式如式(1)所示,其中QP表示當(dāng)前編碼塊的量化參數(shù)。當(dāng)當(dāng)前編碼塊的深度值變化大于此閾值時(shí),才考慮把深度圖建模模式添加到全率失真候選列表。
3 提出的改進(jìn)
文獻(xiàn)[5]和文獻(xiàn)[6]中提出的方案的目的是使對(duì)于那些明顯不適合采用深度圖建模模式進(jìn)行預(yù)測(cè)編碼的塊進(jìn)行模式判決時(shí),不把DMM1和DMM4加入到全率失真候選列表。從而避免對(duì)DMM1和DMM4的全率失真代價(jià)計(jì)算過程,也略過這兩個(gè)預(yù)測(cè)模式自身建模的過程,進(jìn)而加速了模式判決的過程。本文在此基礎(chǔ)上進(jìn)一步優(yōu)化模式判決過程,主要提出了兩點(diǎn)改進(jìn)。
3.1 基于塊特征的方法
如前所述,無論是DMM1還是DMM4,都會(huì)將當(dāng)前編碼的塊分割成兩個(gè)區(qū)域,并為每個(gè)區(qū)域指定一個(gè)常量值,用這樣的模型作為當(dāng)前塊的預(yù)測(cè)信號(hào)。深度圖建模模式只適用于對(duì)深度值有明顯過渡的塊進(jìn)行預(yù)測(cè),文獻(xiàn)[4]和文獻(xiàn)[5]中的改進(jìn)也主要基于此思想。改進(jìn)策略用表達(dá)式(2)描述,其中,uiRdModeList[0]表示候選列表中的第一個(gè)預(yù)測(cè)模式,等號(hào)右側(cè)的0代表Planar模式,variance表示當(dāng)前塊深度值的變化。
觀察發(fā)現(xiàn),采用此方案后,仍有少量平坦的塊被遺漏,因?yàn)榉桨钢胁捎昧恕盎颉钡倪\(yùn)算關(guān)系,即當(dāng)?shù)谝粋€(gè)條件滿足時(shí),當(dāng)前編碼塊仍有可能是平坦的。為此,本文采取邊緣檢測(cè)的方法進(jìn)一步過濾遺漏掉的平坦塊。首先采用canny算法對(duì)整幀深度圖像進(jìn)行邊緣檢測(cè),最初的深度圖像如圖3所示,邊緣檢測(cè)的結(jié)果如圖4所示,圖中黑色的線條表示深度的過渡。然后,定義圖4中(大塊)的白色區(qū)域?yàn)槠教箙^(qū)域,如果當(dāng)前正在編碼的深度塊位于平坦區(qū)域處,則不把DMM1和DMM4加入全率失真候選列表。
3.2 基于塊大小的方法
與對(duì)紋理視頻的編碼方式一樣,對(duì)深度圖的編碼同樣也采用了基于塊的編碼方案。一幀圖像按行列的方式被劃分為多個(gè)編碼樹單元(Coding Tree Unit,CTU),每個(gè)編碼樹單元再以四叉樹的形式遞歸地劃分為更小的編碼單元(Coding Unit,CU)。編碼單元被劃分為更小的預(yù)測(cè)單元(Predicted Unit,PU),每一個(gè)預(yù)測(cè)單元可采用不同的預(yù)測(cè)模式來產(chǎn)生它的預(yù)測(cè)信號(hào)。在3D-HEVC標(biāo)準(zhǔn)配置模式下,編碼樹單元的大小為64×64。編碼樹單元允許最多4級(jí)的遞歸劃分,因此編碼單元的大小可以是64×64、32×32、16×16或8×8。在采用幀內(nèi)預(yù)測(cè)時(shí),編碼單元要么整體作為一個(gè)預(yù)測(cè)單元,要么被四等分為4個(gè)預(yù)測(cè)單元。因此預(yù)測(cè)單元的大小可以是64×64、32×32、16×16、8×8或4×4。
由圖2可知,由粗選過程選出前3個(gè)(或者前8個(gè))較好的幀內(nèi)預(yù)測(cè)模式與DMM1以及DMM4一并被加入到全率失真候選列表,進(jìn)行全率失真代價(jià)計(jì)算,最終選取一種預(yù)測(cè)模式作為最佳預(yù)測(cè)模式。為了進(jìn)一步分析深度圖建模模式的使用情況,對(duì)在不同塊大小情況下,深度圖建模模式的使用次數(shù)進(jìn)行了統(tǒng)計(jì),統(tǒng)計(jì)的結(jié)果如表1所示。
從表1中可以看出,當(dāng)預(yù)測(cè)塊的大小為32×32時(shí),深度圖建模模式的使用次數(shù)最少(平均占比為8%)。因此,如果事先規(guī)定當(dāng)預(yù)測(cè)塊的大小為32×32時(shí),深度圖建模模式(DMM1和DMM4)將不被加入到全率失真列表,那么就能使這些塊跳過深度圖建模模式全率失真代價(jià)的計(jì)算過程。在深度圖建模模式使用率較低的前提下,即使對(duì)某些特定大小的塊不使用DMM1(或DMM4),這一預(yù)測(cè)模式也不會(huì)對(duì)編碼質(zhì)量產(chǎn)生太大的影響。
3.3 改進(jìn)后的模式判決過程
改進(jìn)后的模式判決過程如圖5所示。為了方便描述,只給出了深度圖建模模式的模式判決過程,其中第1個(gè)判斷框?yàn)樵蟹桨???梢钥吹?,改進(jìn)后的方案能對(duì)深度圖建模模式起到進(jìn)一步的過濾作用,從而加快整個(gè)模式判決過程。
4 實(shí)驗(yàn)結(jié)果
為了評(píng)估提出的改進(jìn)方案,進(jìn)行了前后對(duì)比的測(cè)試實(shí)驗(yàn)。實(shí)驗(yàn)在3D-HEVC的參考軟件HTM15.1[9]上進(jìn)行。8個(gè)標(biāo)準(zhǔn)的測(cè)試序列作為輸入,讀取每個(gè)序列的前100幀進(jìn)行測(cè)試。編碼方案采用通用測(cè)試條件[10]中的編碼幀結(jié)構(gòu),選取的紋理和深度的量化參數(shù)QP分別為25:34、30:39、35:42和40:45。測(cè)試的結(jié)果如表2所示,表中列出了采用改進(jìn)后的方案在編碼質(zhì)量和編碼時(shí)間方面較之前的變化。可以看到,紋理視頻的編碼質(zhì)量和合成視點(diǎn)的編碼質(zhì)量損失很少,分別為0.16%和0.19%,但整個(gè)編碼時(shí)間卻節(jié)省了3%。
5 結(jié)論
本文針對(duì)深度圖編碼中的幀內(nèi)預(yù)測(cè)的模式判決過程提出了兩點(diǎn)改進(jìn),旨在加快模式判決的過程。實(shí)驗(yàn)結(jié)果表明,在基本不影響編碼質(zhì)量的前提下,改進(jìn)后的方案能有效地加快模式判決的過程,從而使整體的編碼時(shí)間節(jié)省3%。這對(duì)促進(jìn)3D-HEVC的實(shí)時(shí)性應(yīng)用具有一定意義。
參考文獻(xiàn)
[1] MULLER K,SCHWARZ H,MARPE D,et al.3D high-efficiency video coding for multi-view video and depth data [J].Image Processing,IEEE Transactions on,2013,22(9):3366-3378.
[2] FEHN C.Depth-image-based rendering(DIBR),compression and transmission for a new approach on 3D-TV[C].Proceedings of the Stereoscopic Displays and Virtual Reality Systems XI,2004:93-104.
[3] MERKLE P,BARTNIK C,MULLER K,et al.3D video:depth coding based on inter-component prediction of block partitions[C].Proceedings of the Picture Coding Symposium(PCS),2012:149-152.
[4] ZHOUYE G,JIANHUA Z,NAM L,et al.Fast depth modeling mode selection for 3D HEVC depth intra coding[C].Proceedings of the Multimedia and Expo Workshops(ICMEW),2013 IEEE International Conference on,2013:1-4.
[5] GU Z Y,ZHENG J H,LING N,et al.Fast intra prediction mode selection for intra depth map coding[C]. JCT3V-E0238 of JCT-3V,Vienna,AT,2013.
[6] ZHANG Q,LI N,WU Q.Fast mode Ddecision for 3D-HEVC depth intracoding[J].The Scientific World Journal,2014(3):620142.
[7] SANCHEZ G,SALDANHA M,BALOTA G,et al.DMMFast:a complexity reduction scheme for three-dimensional high-efficiency video coding intraframe depth map coding[J].ELECTIM,2015,24(2):1-15.
[8] CHUN-SU P.Edge-based intramode selection for depthmap coding in 3D-HEVC[J].Image Processing,IEEE Transactions on,2015,24(1):155-162.
[9] JCT-3V.Subversion repository for the 3D-HEVC test model version HTM-15.1[EB/OL].[2015-11-28].https://hevc.hhi.fraunhofer.de/svn/svn_3DVCSoftware/tags/HTM-15.1/.
[10] RUSANOVSKYY D,M?譈LLER K,VETRO A.Common test conditions of 3DV core experiments[C].JCT3V-F1100 of JCT-3V,Geneva,Switzerland,2013.