辛亞坤
?。ㄉ虾:J麓髮W 信息工程學院,上海 201306)
摘要:針對Merge模式中存在的運算時間長且計算復雜度高的問題,通過對候選PU的合并過程進行研究,提出了優(yōu)化的候選決策算法?;跁r域候選和空域候選決策算法在不同情況下對當前塊的影響程度不同,自適應地改變候選決策列表來減少計算復雜度和提高預測精度。與標準算法相比,該算法在視頻序列的PSNR值略有增高、碼率減少的情況下,編碼時間得到有效減少。而且該算法在提高HEVC編碼率失真性能的同時有效降低了計算復雜度。
0引言
近年來,隨著高清、超高清視頻應用逐步走進人們的視野,對網絡帶寬提出了更高的要求。因此,國際電聯(lián)(ITUT)、國際標準化組織(ISO)、國際電工委員會(IEC)聯(lián)合發(fā)起聯(lián)合視頻編碼小組(Joint Collaborative Team on Video Coding,JCTVC) 制定下一代的視頻編碼標準HEVC (High Efficiency Video Coding)。此標準相比H.264/AVC視頻壓縮標準,在相同的視覺質量下能節(jié)約50%的比特率[1] 。
在大多數(shù)圖像和視頻中,一個運動物體可能會覆蓋多個運動補償塊,因此空間域相鄰塊的運動向量具有較強的相關性。若使用相鄰已編碼塊對當前塊運動矢量(Motion Vector,MV)進行預測,將二者差值進行編碼,則會大幅度節(jié)省編碼MV所需的比特數(shù)。同時,由于物體運動具有連續(xù)性,因此相鄰圖像同一位置像素塊的MV也具有一定相關性。H.265/HEVC在MV的預測方面提出了Merge技術[2]和AMVP技術[3]。
Merge技術使用了空域和時域MV預測的思想,通過建立MV列表,選取性能最優(yōu)的一個作為當前預測單元(Prediction Unit,PU)預測MV。Merge可以看成一種編碼模式,在該模式下,當前PU的MV直接由空域(或時域)上鄰近的PU預測得到,不存在運動矢量殘差MVD。
1Merge模式
Merge模式會為當前PU建立一個MV候選列表[4],列表中存在5個候選MV(及其對應的參考圖像)。通過遍歷這5個候選MV,并進行率失真代價的計算,最終選取率失真代價最小的一個作為該Merge模式的最優(yōu)MV。若編碼端和解碼端按照相同的方式建立該候選列表,則編碼器只需要傳輸最優(yōu)MV在候選列表中的索引即可,這樣大幅度節(jié)省了運動信息的編碼比特數(shù)。Merge模式建立的MV候選列表中包括了空域和時域兩種情況,以下將分別介紹。
1.1空域候選列表的建立
空域MV候選列表的建立如圖1所示,圖中A1表示當前PU左側最下方的PU,B1表示當前PU上方最右側的PU,B0和A0分別表示當前PU右上方和左下方距離最近的PU,B2表示當前PU左上方距離最近的PU。H.265/HEVC標準規(guī)定,空域候選最多提供4個候選MV,即最多使用上述5個侯選塊中4個候選塊的運動信息,列表按照A1→B1→B0→A0→(B2)的順序建立,其中B2為替補,即當A1、B1、B0、A0中一個或多個不存在時,則需要使用B2的運動信息。
1.2時域候選列表的建立
時域MV候選列表的建立利用了當前PU在鄰近塊已編碼圖像中對應位置PU[57](即同位PU)的運動信息。H.265/HEVC規(guī)定,時域最多只提供1個候選MV,如圖2所示,圖中H位置同位PU的MV經伸縮得到。若H位置同位PU不可用,則用C3位置的同位PU進行替換。需要注意的是,若當前MV候選列表中候選MV的個數(shù)達不到5個時,需要使用(0,0)進行填補以達到規(guī)定的數(shù)目。
2Merge候選決策的探究
通過對Merge模式候選決策的過程研究[8]發(fā)現(xiàn):
?。?)在建立候選列表時需要進行至少5次率失真計算來選取率失真代價最小的一個。由于A1和A0、B1和B0是相鄰塊,所以往往包含著共同的運動信息,如果在含有相同信息的情況下進行率失真計算,會增加計算復雜度和降低預測精度。
?。?)率失真計算過程中,有多個重要因素需要考慮,其中編碼參數(shù)和運動矢量傳輸?shù)骄幋a端所需要的比特數(shù),這兩個因素尤其重要。HEVC中編碼Merge_idx時采用的是一元截斷碼,Merge模式中候選順序是按照先空域后時域的方法,來分配截斷碼的位數(shù),這樣時域在進行率失真計算時得到的結果會受到影響,從而在與空域的率失真結果進行比較時處于劣勢。
?。?)通過對PU在不同尺寸中出現(xiàn)的概率的研究結果發(fā)現(xiàn),A1、B1和時域候選T出現(xiàn)的概率最高并且所占之和高達90%以上。出現(xiàn)這種現(xiàn)象的原因是由于A1、B1所占的bin位數(shù)較低,因而在率失真計算中往往能作為最優(yōu)結果。另一方面,在A1和A0、B1和B0帶有相同運動信息時,A0和B0將無法出現(xiàn)在最優(yōu)結果的候選中。
對于T候選在bin位數(shù)較高的情況下,依然有較高的出現(xiàn)率,這是因為以下兩個原因:(1)Merge模式中的時域預測主要運用了自然界物體勻速運動的思想,間隔數(shù)幅圖像的兩幅圖像之間的運動向量一旦確定,則期間每一幅圖像的運動向量預測值都能利用當前圖像與兩端參考圖像的距離計算得出。因而,對于很多運動緩慢的視頻序列,時域相關性往往強于空域相關性。正因為如此,雖然時域候選T的bin位數(shù)在較高的情況下,依然在率失真計算中占有了優(yōu)勢。(2)當編碼單元(Code Unit,CU)劃分方式為N×2N,NL×2N或nR×2N時,第二個PU的候選列表中不能存在A1的運動信息。這是由于第二個PU一旦使用了A1(即第一個PU)的信息,則會使第一個PU和第二個PU的MV一致,這與2N×2N劃分方式無異。同理,對于CU劃分方式為2N×N、2N×nU或2N×nD,第二個PU的候選列表中也不能存在B1的運動信息。基于以上兩種情況,時域候選T在bin位數(shù)較高的情況下,依然有了較高的出現(xiàn)率。
?。?)在H.265/HEVC標準中,對于時域候選T,若H位置同位PU不可用,則用C3位置的同位PU進行替換。但研究發(fā)現(xiàn),這樣用C3位置替換后,降低了T的預測準確度。因此可以利用當前塊下方相鄰塊和右方的相鄰塊來提高時域候選T的預測精度。
3優(yōu)化后的Merge候選決策
本文對Merge模式的候選決策進行了以下優(yōu)化和改進:
?。?)首先判斷當前幀相對于前一幀是否發(fā)生了劇烈運動,具體方法采用基于灰度的算法[910]。在場景切換幀位置,圖像像素灰度的絕對差比前一幀圖像要大很多,灰度值平均絕對差公式:
式中DMVD(n)為第n幀的灰度平均絕對值差,fn(i,j)和fn-1(i,j)分別為第n幀與第n-1幀(i,j)位置的亮度分量值,M和N分別為圖像的寬和高。DMVD(n)的取值范圍為0~255,經過大量實驗發(fā)現(xiàn),DMVD(n)>40時,當前幀相較于前一幀發(fā)生了劇烈運動。因此,若DMVD(n)>40,則判定第n幀發(fā)生了劇烈運動。
?。?)若當前幀沒有發(fā)生劇烈運動,則說明當前幀的時域相關性大于空域相關性。更改Merge候選順序,將時域候選T放到空域候選之前,這樣時域候選T就能分配到較小的bin位數(shù),從而使得時域相關性在率失真計算時能夠得到充分應用。并且減少空域候選的個數(shù),將空域候選個數(shù)由4個減少為2個,并且按照A1→B1→B0→A0→(B2)的順序進行選擇,直到數(shù)目達到兩個為止。這樣做的目的是,由于時域相關性大于空域相關性并且A0和B0的出現(xiàn)概率較低,因而減少數(shù)目后不會影響預測精度反而會大大降低編碼時間。若當前MV候選列表中候選MV的個數(shù)達不到3個,需要使用(0,0)進行填補以達到規(guī)定的數(shù)目。
?。?)若當前幀發(fā)生了劇烈運動,則可以判斷空域相關性大于時域相關性。此時,按照H.265/HEVC標準規(guī)定,空域提供4個候選MV,以A1→B1→B0→A0→(B2)的順序建立,其中B2為補位,即當A1、B1、 B0、A0中有一個或多個不存在時,則需要用B2的運動信息填補。若當前MV候選列表中候選MV的個數(shù)達不到5個時,需要使用(0,0)進行填補以達到規(guī)定的數(shù)目。
?。?)若時域候選中右下方編碼塊H不可用時,則檢測參考幀中與當前幀位置相同的下方塊和右方塊以及時域候選中心位置C3。若下方塊和右方塊都存在,則取它們三個的平均值作為時域候選項。若右方塊和下方塊只存在一個,則取兩個的平均值。若右方塊和下方塊都不存在,則直接使用C3。這樣做既充分利用了右方塊和下方塊的運動信息,又提高了時域候選的利用率,使預測精度得到了提高,同時也提高了視頻的再現(xiàn)質量也即提高了信噪比。
4實驗結果及分析
仿真實驗采用的是最新的HM16.0代碼,實驗平臺是操作系統(tǒng)為Windows 7的計算機,內存為4 GB。實驗結果如表1所示??梢钥闯?,本文優(yōu)化后的Merge候選決策算法與高效視頻編碼標準之間的對比結果。
從表1中可以發(fā)現(xiàn),優(yōu)化后的Merge候選決策算法與原標準的結果相比,編碼時間得到了有效的減少;因為優(yōu)化后的Merge候選決策的預測精度得到了提高,使得Merge在與AMVP競爭時,PU使用Merge模式的概率得到了進一步提高,從而降低了比特率,降低程度從0.33%~5.16%不等;由于增加了Merge模式的候選決策中改進的第(4)點,即充分利用了右方塊和下方塊的運動信息,提高了時域候選的利用率,也使預測精度得到了提高,同時還提高了視頻的再現(xiàn)質量以及信噪比。峰值信噪比(Power SignaltoNoise Ratio,PSNR)的增加從0.006 6~0.815 dB不等。
本文算法首先使用目前最常用且最簡單的基于灰度的算法來判斷當前幀是否發(fā)生了劇烈運動,根據(jù)當前幀相比于前一幀是否發(fā)生了劇烈運動來更加合理地優(yōu)化Merge候選決策的順序。優(yōu)化后的Merge候選決策順序更加合理,而且使得時域相關性得到了充分應用,從而提高了Merge模式的預測精度,增加了Merge模式在與AMVP模式的競爭中的優(yōu)勢,提高了Merge模式的利用率。由于Merge模式是一種編碼模式,在該模式下不存在MVD;而AMVP是一種MV預測技術,編碼器只需要對實際MV與預測MV的差值進行編碼,是存在MVD的。提高了Merge模式的利用率后,相比于使用AMVP技術,會大幅節(jié)省運動信息的編碼比特數(shù),從而降低了比特率。
另一方面,通過調整時域候選的位置,分配給T較小的bin位數(shù),使得在時域相關性大于空域相關性時,能夠充分利用時域候選,從而使得預測結果更加準確且消耗較少的比特數(shù)。
本文通過減少候選模式的個數(shù)和改變最優(yōu)的候選順序來減少計算復雜度,通過優(yōu)化標準中的Merge候選決策,來降低計算復雜度和提高預測精度,這是一個全新的方向和視角。
5結束語
本文首先分析了標準中Merge模式的候選決策過程,然后針對原標準中存在的計算復雜度高的問題,提出了一種優(yōu)化的Merge候選決策算法。實驗結果表明,優(yōu)化后的算法在信噪比略有升高的情況下,可使比特率降低,編碼時間減少。
參考文獻
?。?] SULLIVAN G J, OHM J, HAN W J, et al. Overview of the high efficiency video coding(HEVC) standard[J].IEEE Transactions on Circuits and Systems for Video Technology, 2012, 22(12):16491668.
?。?] 彭金虎,岑峰. HEVC幀間運動歸并技術的研究[D].上海:同濟大學,2013.
?。?] LI B, LI H Q, LI L, et al. Rate control by Rlambda model for HEVC[C].Proc. the 11th JCTVC Meeting, 2012:38413854.
?。?] 朱秀昌, 李欣, 陳杰. 新一代視頻編碼標準——HEVC[J].南京郵電大學學報:自然科學版, 2013, 33(3):111.
?。?] WIEGAND T.Draft ITUT recommendation and final draft international standard of joint video specification[Z].ITUT Rec. H.264|ISO/IEC 1449610 AVC, 2003:12241229.
[6] 萬帥,楊付正.新一代高效視頻編碼H.265/HEVC:原理、標準與實現(xiàn)[M].北京:電子工業(yè)出版社,2014.
?。?] 黃朝明. 下一代視頻壓縮標準HEVC的模式選擇快速算法研究[D].成都:西南交通大學, 2012.
?。?] 張娜.下一代視頻編碼標準中MERGE模式相關技術的研究[D].哈爾濱:哈爾濱工業(yè)大學,2012.
?。?] 史久根,許林,張超. 一種場景自適應的H.264幀層碼率控制算法[J].計算機應用研究,2010,27(5):19681969.
[10] 胡乾乾,沈禮權,趙振軍.基于場景切換的 HEVC 碼率控制算法[J].電視技術,2015,39(5):13,25.