孫 彬 宋曉萌
視頻編碼中自適應的運動估計起始點確定方法
孫 彬 宋曉萌
現如今,隨著我國高清以及超清視頻的快速發展,較高的分辨率以及較高的幀頻使得視頻文件容量較大,在通信傳輸時會占用較大的帶寬。因此,如何在保證視頻編解碼高質量的前提下,提高編碼速率,減少編解碼中的計算冗余度,成為了相關專家學者研究的重點。本文針對視頻編碼中的運動估計技術,通過對像素的運動信息進行分析,提出一種自適應的運動估計起始點確定方法,具有較高的指導意義。
近年來,由于技術的發展和人們對于生活品質的需求提高,原本的視頻分辨率已經無法滿足人們感官上的需要,高清的視頻乃至超高清的視頻應運而生,并不斷的發展和壯大。隨著高清視頻的發展和廣泛應用,隨之帶來的是巨大的數據量和巨大的存儲和傳輸壓力。而舊的視頻編碼標準H.264已經無法很好地解決高清視頻的發展所帶來的一系列問題。舊標準的編碼效率以及壓縮性能已經開始制約了高清視頻的發展。因此,為了滿足新的視頻應用對編解碼標準的要求,視頻編碼聯合協同小組(JCT-VC)目前制定出了新的視頻編碼標準HEVC。用以提高壓縮性能和編碼效率。
目前,在視頻編碼過程中,通常使用幀內預測方法來消除圖像的空間冗余度,使用幀間預測方法來消除時間冗余度。由于視頻源的相鄰幀間的時間冗余度相比較于幀內的空間冗余度要大得多,那么這就使得幀間預測方法在視頻編碼中具有較高的重要性。由于考慮到視頻序列圖像的時間相關性較強,對于時間相關性造成的冗余度可以通過運動估計和運動補償的方式進行消除。因此,運動估計和運動補償技術在視頻編碼中得到了廣泛的應用。
現如今,視頻編碼中的運動估計算法主要有塊匹配算法(BMA)和像素遞歸算法(PRA)兩類。其中塊匹配算法由于自身具有的簡單高效的特點,得到了廣泛的應用。塊匹配算法的工作原理是:首先將當前幀分成M×N 個宏塊(MB),宏塊作為編碼的基本單位,通過事先預設一個匹配標準,來在參考幀與當前幀中尋找最匹配的宏塊作為最佳匹配塊。當前幀中的當前塊和最佳匹配塊之間的偏移為該當前塊的運動向量(MV),通過運動估計與運動補償算法,可以用殘差值與運動矢量將圖像中的每個宏塊表示出來。
在傳統的塊匹配搜索方法中,針對于當前幀,取參考幀中相對應位置的塊為中心。然后圍繞中心塊根據一定的搜索模板進行搜索。這種方法,沒有考慮到相鄰幀之間像素點的運動,因為,搜索最佳匹配塊的SAD 準則如下

其中N、M為塊中像素點的橫坐標和縱坐標,S為當前進行編碼的塊,R為參考幀中的塊。通過對參考幀中的塊計算SAD值,選取使得SAD值最小的塊作為最佳匹配塊。所以相鄰幀之間像素點的運動,會導致最佳匹配塊位置的改變,若依然選取當前編碼塊在參考幀中的相應位置的塊為起始點的話,會導致起始搜索點的位置距離最佳匹配塊較遠,從而導致找到最佳匹配塊的計算量增加。
新型的運動估計起始點搜索算法
本文提出的新型運動估計起始點搜索算法具體步驟表示如下:
1.首先在HEVC的幀間預測模塊中,運動估計一般采用塊匹配搜索的方法,設定當前編碼幀為Fn,當前幀的參考幀為Rn。當前編碼幀中的當前編碼塊為Bn,當前編碼塊相對于參考幀中的最佳匹配塊為。
2.首先針對于當前編碼塊Bn,在其參考幀中根據SAD最小準則找尋其最佳匹配塊,找到之后,計算當前編碼塊與最佳匹配塊之間的位移Wn(,),同時計算兩幀之間的時間間隔?t ,根據得到的位移Wn和兩幀之間的時間間隔?t 可以得到塊的運動速率Vn(,):

3.在下一幀Fn+1中對當前塊Bn+1進行編碼時,需要在下一幀Fn+1的參考幀Bn+1中搜索當前塊Bn+1的最佳匹配塊,此時可以根據之前得到的運動速率Vn,對初始點的位置On(,)進行預測預測方式如下:

將得到的On的坐標設為下一幀Fn+1中當前塊Bn+1,在其參考幀Rn+1中進行塊匹配搜索的起始點。并以此起始點通過匹配模板以及SAD最小準則找到最佳匹配塊。
4.在得到下一幀Fn+1中當前塊Bn+1的最佳匹配塊之后,再計算其之間的位移Vn+1,同時重新更新計算像素塊的運動速率Vn+1。在得到運動速率之后,再應用于在下一幀Fn+2中當前塊Bn+2的最佳匹配塊搜搜中的起始點確定中。并重復之前的步驟,直到編碼完成所有的視頻數據。本文提出的方法充分考慮了現實視頻中像素點的運動,使得運動估計中的塊匹配搜索算法更具有自適應性。在節省計算量的同時,可以更好地獲得編碼效果,顯著的提高了HEVC的編碼效率。
近年來,隨著高清甚至超清視頻的發展,高分辨率下視頻編碼的速度和質量成為人們關注的重點。本文提出的新的運動估計起始點確定方法充分考慮了現實視頻中像素點的運動,使得運動估計中的塊匹配搜索算法更具有自適應性。在節省計算量的同時,可以更好地獲得編碼效果,顯著的提高了HEVC的編碼效率,并提高了視頻文件的通信傳輸速率。
孫 彬 宋曉萌
山東大學信息科學與工程學院
10.3969/j.issn.1001-8972.2015.18.018