文獻標志碼: A
文章編號: 0258-7998(2013)09-0044-03
視頻圖像疊加融合技術可以將兩路視頻圖像信號進行疊加融合并輸出到一臺顯示器上進行顯示。兩路視頻圖像信號中,一路作為被疊加信號(即背景),另一路作為疊加信號(即前景),在背景視頻圖象中可以融入前景視頻圖象并在同一終端上顯示。這項技術在電視系統(tǒng)、視頻監(jiān)控系統(tǒng)、廣告娛樂、交通管理等領域有著廣泛的應用。目前國內(nèi)生產(chǎn)視頻疊加器的有北京彩訊、上海大視等廠家,主要是采用視頻矩陣、畫面分割器實現(xiàn),大多采用專用的視頻疊加芯片設計而成,其靈活性較差,成本高[1-3]。
本設計在以FPGA為主控芯片的硬件平臺上實現(xiàn)視頻圖像的縮放與疊加融合功能,可實現(xiàn)兩路任意分辨率輸入視頻疊加,并能擴展成多路疊加,通過縮放算法對每一路進行放大或縮小,進而調(diào)整前景在背景中的比例;還可通過更改參數(shù),調(diào)節(jié)前景在背景中的位置。該方案實時性好,處理速度快,靈活性較高。
視頻圖像疊加融合信號流程如圖1所示。本設計中兩路視頻圖像信源的分辨率可根據(jù)需求任意選定。其中一路為背景視頻圖像信號源,另外一路為前景視頻圖像信號源,分別將兩路信號源通過雙線性插值縮放算法進行處理,根據(jù)需要對前景和背景視頻圖像的大小進行適當?shù)目s放,最后將兩路視頻信號進行疊加融合處理并輸出[4-5]。
根據(jù)方案的信號流程圖可知,兩路信源信號為并行處理,適用采用FPGA進行實現(xiàn)[6]。
疊加效果圖如圖2所示。其中圖2(a)為前景視頻圖像,原始分辨率為640×480;圖2(b)為背景視頻圖像,原始分辨率是800×600。通過Matlab對設計方案進行仿真,背景縮放1 024×768,占滿輸出屏幕,前景縮放為320×240,并規(guī)定其在左上角疊加,如圖2(c)所示。
2 視頻疊加融合的硬件實現(xiàn)
視頻疊加融合系統(tǒng)總體框圖如圖3所示,系統(tǒng)主要由DVI接口、編碼模塊、解碼模塊、DDR2存儲模塊和FPGA控制模塊等幾個主要部分組成,其中解碼和編碼分別采用Silicon Image和Chrontel公司的專用芯片實現(xiàn)。具體實現(xiàn)過程如下[7]:
(1)將輸入的兩路視頻信號通過解碼電路轉碼成VESA標準的數(shù)字視頻信號,并將其送至FPGA內(nèi)部。
(2)由于不同分辨率之間存在幀不同步,為了實現(xiàn)任意比例縮放,達到任意分辨率疊加融合的效果,需要將輸入的數(shù)據(jù)進行外部存儲以解決幀不同步的問題[8-9]。
(3)根據(jù)需要將前景視頻圖像和背景視頻圖像進行適當比例的放大和縮小,本系統(tǒng)采用雙線性插值縮放算法進行任意比例縮放處理[10-11]。
(4)以高分辨率視頻圖像的像素時鐘為觸發(fā)時鐘對兩路縮放后圖像進行疊加融合處理,并由FPGA產(chǎn)生VESA標準時序,驅動液晶顯示器顯示[12]。
(5)將疊加融合好的視頻信號進行編碼并通過DVI接口輸出到顯示終端上,獲得視頻圖像疊加融合的效果[13]。
FPGA內(nèi)部工作流程如圖4所示。首先通過I2C總線對外圍的編碼、解碼芯片進行配置;其次控制MCB(Memory Controller Block),使DDR2正常進行數(shù)據(jù)存取;然后縮放核從DDR2中讀取數(shù)據(jù)進行縮放;最后將兩個縮放核輸出的數(shù)據(jù)進行疊加融合并顯示在終端上[14]。設計中最主要的延遲來自于DDR2緩存模塊,需要預先將視頻圖像緩存為一幀,然后再進行后續(xù)處理。此模塊引進了一幀的延遲(1/60 s),其他模塊的延遲極小,可以忽略不計,總體延遲大約幾十毫秒,具有良好的實時性。
3 仿真與驗證
本設計選用的主控芯片F(xiàn)PGA為Xilinx公司的Spartan 6系列,型號為XC6SLX100-2FGG767。在ISE13.4開發(fā)平臺上運用VerilogHDL對各邏輯進行設計,解碼芯片型號為SIL1161,編碼芯片的型號為CH7301,存儲器DDR2型號為MT47H32M16-25E,測試顯示器采用的是AOC 173P。
經(jīng)驗證得本設計占用FPGA內(nèi)部主要邏輯資源情況如表1所示,支持的像素時鐘頻率高達108 MHz,對應分辨率為1 280×1 024。圖5為在設計過程中通過ISE自帶仿真工具ISIM進行仿真得到的顯示器的驅動時序和融合控制信號以及數(shù)據(jù)的仿真圖。
圖6為拍攝的實物效果圖。圖6(a)分辨率為1 024×768,是前景視頻圖像分辨率縮小到320×240、背景視頻圖像分辨率放大到1 024×768后在左上角進行疊加融合后的畫面,結果與第二節(jié)中仿真結果完全相同;圖6(b)分辨率為1 280×1 024,相對于圖6(a),疊加位置和大小比例均改變。通過效果圖可知,本設計方案測試效果良好,雖然畫面高頻分量有所損失,但是在視覺可接受范圍內(nèi),適合于工程應用。
本文主要介紹了基于FPGA的視頻圖像縮放與疊加融合技術的設計方案及實現(xiàn),通過Matlab對設計方案進行理論仿真,并在FPGA上對該設計方案進行了實現(xiàn)。結果表明,該設計方案在縮放算法的輔助下,實現(xiàn)了兩路視頻圖像任意分辨率、任意位置的疊加融合,顯示效果良好。盡管由于雙線性插值縮放算法處理導致邊緣稍有模糊,但仍滿足視覺需求,適合于工程應用。該設計為后續(xù)的高速視頻信號處理(如大屏拼接、融合等)提供了必要的預處理裝置。
參考文獻
[1] 李炯昊.基于FPGA的圖像增強及畫中畫顯示系統(tǒng)的實現(xiàn)[D].昆明:昆明理工大學,2011.
[2] 宋承杰,王景存.基于FPGA的視頻字符疊加的設計與實現(xiàn)[J].電視技術,2009,33(12):24-27.
[3] 趙艷軍,何其銳,施錫濤.基于DVI和FPGA的視頻疊加器設計[J].電子技術應用,2011,37(6):31-34.
[4] 孫紅進.FPGA實現(xiàn)的視頻圖像縮放顯示[J].液晶與顯示,2010,25(1):130-133.
[5] BATTIATO S,GALLO G,STANCO F.A locally adaptive zooming algorithm for digital images[J].Image and Vision Computing,2002,20(11):805-812.
[6] 池水明.FPGA在實時圖像預處理中的應用[J].山西電子技術,2007,(5):17-18.
[7] 張亞平,賀占莊.基于FPGA的VGA顯示模塊設計[J].計算機技術與發(fā)展,2007,17(6):242-245.
[8] 張東.基于FPGA與DDR2 SDRAM的高速實時數(shù)據(jù)采集系統(tǒng)的設計與實現(xiàn)[D].南京:南京理工大學,2007.
[9] 徐欣,周舟,李楠,等.基于DDR2 SDRAM的高速大容量異步FIFO的設計與實現(xiàn)[J].中國測試,2009,35(6):34-37.
[10] 嚴利民,田鋒,顧裕燦.圖像縮放算法的研究及FPGA實現(xiàn)[J].儀表技術,2012(7):1-4.
[11] 王蕾.基于FPGA的視頻圖像放大處理系統(tǒng)的研究與設計[D].沈陽:東北大學,2009.
[12] 蔡希昌,翟林陪,周九飛,等.基于FPGA的非XGA標準圖像顯示控制器的設計[J].液晶與顯示,2008,23(3):301-306.
[13] 李飛,劉晶紅,李剛,等.基于FPGA的數(shù)字攝像機輸出視頻DVI顯示[J].激光與紅外,2012,41(11):1258-1262.
[14] 易湖.數(shù)字視頻處理的FPGA實現(xiàn)[D].武漢:華中科技大學,2006.