劉振興
(上海高清數(shù)字科技產(chǎn)業(yè)有限公司,上海 200233)
幀率變換的定義是指把一定頻率的圖像幀變?yōu)橹付l率的圖像幀。通常我們所說的幀率變換是指從低頻率的幀頻變?yōu)楦哳l率的幀頻,所以也稱為幀率提升。比如在HDTV中,把每秒60幀的圖像變?yōu)槊棵?20幀或者240幀,這樣應(yīng)用的好處是可以解決HDTV中存在的高速運動下的拖尾現(xiàn)象。隨著液晶電視的大面積普及,將來的圖像播放設(shè)備一定是向便攜輕便等方向發(fā)展,但是同時也會帶來一定的問題,比如液晶電視在快速運動中的殘影以及圖像模糊等。在這種情況下,人們想到了用幀率變換這種方式來提升圖像的質(zhì)量,在原本相關(guān)的前后幀圖像中插入一幀,可以使圖像運動更為平滑。這就是幀率變換研究的一個最基本的應(yīng)用動力。
現(xiàn)階段幀率變換遇到的最大問題在于算法的實現(xiàn)難度和物理器件所能提供的最高速度之間的矛盾。由于幀率變換是視頻后處理,所以對其實時性要求非常高。普通的幀率提升算法雖然可以用器件實現(xiàn),但是處理效果很一般,有時甚至會出現(xiàn)負作用,而復(fù)雜的幀率提升算法雖然能提升出很好的效果,但是對器件的要求高,成本太大。綜上所述,幀率提升算法與實現(xiàn)的研究在國內(nèi)外方興未艾,可以期待在未來的視頻標準里將會有其一席之地。
首先選擇估計運動中匹配塊的大小,匹配塊越大,則算法所需要耗費的時間就越小,但是塊匹配的精度就越低。反之匹配塊越小,則算法所需要耗費的時間就越長,但是塊匹配的精度就越高。從現(xiàn)有的硬件資源以及實驗結(jié)果看,16×16的匹配塊大小能夠預(yù)測出相對正確的運動矢量,并且在主觀評價上補償出良好的內(nèi)插幀。表1中d為搜索范圍、N為宏塊的個數(shù)。全搜索的N最大,空間搜索其次,本文提出的算法N最小。
搜索策略在算法中最耗費資源和時間,如何選擇搜索策略是幀率提升算法成功的關(guān)鍵。通常情況下有表1所述的幾種搜索策略以及每種搜索策略所需要的算法復(fù)雜度。
從表1中可以看出,全搜索的算法復(fù)雜度最高,但是其精確匹配的準確度也越高,但是從實際上看,由于前后兩幀在50Hz的頻率下,時間上只有20ms的間隔,所以前后兩幀運動塊的距離理論上不會很遠,用到全搜索匹配有50%以上的時間都浪費了。
空間遞歸搜索是假設(shè)圖像運動方向一致的情況下,用前一個宏塊預(yù)測的運動矢量作為參考,只搜索其相鄰的9個匹配塊,這樣的搜索方式的確可以起到快速的作用,但是精確度難以保證。圖像的背景和移動物體總是往相反的方向移動,這樣用空間遞歸搜索的效果也就可想而知了。
本文中所采用的是雙向三步優(yōu)化搜索,既保證了搜索的準確性,同時也兼顧了效率的問題。
每幀圖像被分為M×N的宏塊,宏塊大小為16×16。首先假設(shè)每一幀圖像中所分成的宏塊里的像素運動軌跡基本相同,然后用當前幀的宏塊做三步搜索:第一步,將該宏塊與對應(yīng)的參考幀宏塊上下左右7個像素距離的宏塊進行矩陣差值的計算,然后將得到的矩陣的差值做絕對值的和,具體計算閾值如下:
這是前向運動估計得到的一個閾值。記錄下這個最小的閾值以及相對應(yīng)的宏塊位置。第二步,以剛剛獲得的最小閾值的宏塊位置為中心,將原宏塊與此中心的上下左右距離為3個像素的宏塊進行比較,重復(fù)第一步的動作。第三步,重復(fù)第二步的動作,只是與以該中心的上下左右距離為1個像素的宏塊進行比較。做完三步運動估計后,可以得到一個最小閾值的宏塊矩陣,此閾值為前向預(yù)測最小閾值。然后將后一幀圖像分成M×N的宏塊,用前一幀作為參考幀,重復(fù)三步運動估計。此時也能得到一個閾值最小的宏塊矩陣,并且得到此矩陣的相對位置。比較前向運動估計的閾值和后向運動估計的閾值大小,最后決定采取哪一種估計得到的運動矢量。算法描述見圖1。
由于是內(nèi)插幀,所以將獲得的對應(yīng)宏塊的運動矢量除以2,該矢量上所對應(yīng)的宏塊即為該內(nèi)插幀的宏塊,用此宏塊填充至內(nèi)插幀。這里需要注意的是,不是所有的閾值所對應(yīng)的宏塊都可以應(yīng)用的,因為上述運動估計所得到的運動矢量只是比較了前向估計與后向估計的相對閾值。實際上有些時候,如果不能準確估計的時候,閾值會比較大,這里我們給出了一個經(jīng)驗閾值,即如果雙向運動估計所得到的閾值大于此經(jīng)驗閾值,那么就可以認為運動估計失敗,此宏塊所對應(yīng)的位置,由參考幀上對應(yīng)的位置直接獲得。算法見流程圖2。
雙向運動估計算法的整體硬件架構(gòu)模塊如圖3所示。按照系統(tǒng)時鐘周期,從DMA通道傳送兩幀圖像信息至RAM模塊,具體控制電路由Data Control模塊給出邏輯信號,所有的運動估計都由RAM模塊和Mini SAD模塊完成,這樣可以釋放系統(tǒng)帶寬,不占用過多系統(tǒng)資源。硬件完成的算法如上節(jié)所述,最后得出內(nèi)插幀,由RAM模塊通過Data Control模塊直接賦值給DDR模塊,完成補償功能。
DDR存儲器:存放前端解碼以后的幀數(shù)據(jù);
Data Control模塊:控制DDR中調(diào)入幀圖像數(shù)據(jù)到RAM,利用運動矢量信息,控制RAM模塊提供補償;
RAM 幀存模塊:為了提高運算速度,將需要運算的圖像存儲到RAM中;
Mini SAD 最匹配宏塊運動估計模塊:該模塊是運算量最大的,一個時鐘周期里需要完成9個塊匹配算法。比較閾值與經(jīng)驗閾值,計算出運動矢量傳輸給Data Control模塊。
用以上的硬件架構(gòu)可以滿足算法的要求:
(1)實時性;
(2)系統(tǒng)工作頻率;
(3)硬件資源。
用Verilog語言編寫RTL代碼,在S2C公司提供的Xilinx V5平臺上進行功能驗證,綜合工具采用ISE,片外存儲采用DDR2的SDRAM,頻率最高為800MHz,完全能夠滿足系統(tǒng)實時性的要求。實驗結(jié)果見圖4~圖6。其中,圖5為用雙向運動估計提升幀頻的算法得出的內(nèi)插幀圖像,驗證此算法內(nèi)插結(jié)果良好。
[1]余松煜,周源華,張瑞. 數(shù)字圖像處理[M].上海:上海交通大學出版社,2007.
[2]王南飛,姚素英. 視頻格式轉(zhuǎn)換芯片中幀頻提升算法及硬件實現(xiàn)[J].電子測量技術(shù),2007.
[3]李莉,侯正信. 一種自適應(yīng)幀頻提升算法研究[J].計算機應(yīng)用研究,2009.
[4]陳孫陽. HDTV中基于ME/MC的插幀倍頻FPGA實現(xiàn)架構(gòu)研究[M].上海:上海交通大學出版社,2005.
[5]吳繼華,王誠. 設(shè)計與驗證:Verilog HDL[M]. 北京:人民郵電出版社,2006.
[6]何小海. 圖像通信[M]. 西安:西安電子科技大學出版社,2005.
[7]龔劍,朱亮. Matlab5.x入門與提高[M].北京:清華大學出版社,2000.
[8]盧佩,張正炳. 運動估計中對不規(guī)則塊匹配算法的理論研究[J]. 現(xiàn)代電子技術(shù),2004.
[9]楊清永,王新,周俊輝. 塊運動估計中具有可擴展性的高精度三步搜索法[J]. 2002,(5).
[10]東芝株式會社. 運動矢量檢測設(shè)備、運動矢量檢測方法及內(nèi)插幀創(chuàng)建設(shè)備[J]. CN101316365A,2008.
[11]T. Y. Kuo, C.C. J. Kuo. Motion-compensated interpolation for low-bit-rate video quality enhancement[J]. Proc.SPIE Vis. Commun Image Process., 1998.
[12]S.J. Kang, Y.H. Kim. Motion compensated frame up-conversion using extended bilateral motion estimation[J]. IEEE Transactions on Consumer Electronics, 2007.
[13]LEE S2H, KWON O, PARK R2H.Weighted2adap tive motion compensated frame rate up conversion[J]. IEEE Transon Consumer Electronics, 2003.
[14]E. Brockmeyer, et al. Low Power Memory Storage and Transfer Organization for the MPEG-4 Full Pel Motion Estimation on a Multi Media Processor[J]. IEEE Trans. on Multimedia, 1999, 1(2): 202-216.
[15]陳展文. 計算機圖形學[M].北京:機械工業(yè)出版社,2006.
[16]M.H.海因斯. 數(shù)字信號處理[M].北京:科學出版社,2002.
[17]王宜懷,劉曉升. 嵌入式應(yīng)用技術(shù)基礎(chǔ)教程[M].北京:清華大學出版社,2005.
[18]Lei Zhang, Ci Wang, Wenjun Zhang, et al. Frame rate upconversion using edge-weighted motion estimation and trilateral Interpolation[J]. in IEEE International Symposium on Circuits and Systems, 2009.
[19]何小海,王正勇. 數(shù)字圖像通信及其應(yīng)用[M]. 成都:四川大學出版社,2006.
[20]http://www.jpeg.org/jpeg2000/CDs15444.html [EB/OL].
[21]畢厚杰. 新一代視頻壓縮編碼標準——H.264/AVC. 北京:人民郵電出版社,2005.