李 光,李其虎,2
(1.中國電子科技集團公司第五十四研究所,河北 石家莊 0500813;2.西安電子科技大學ISN國家重點實驗室,陜西 西安 710071)
責任編輯:時 雯
隨著多媒體技術的高速發展,數字視頻技術在通信領域獲得了廣泛應用,由于視頻信息量過大給無線傳輸帶寬帶來了很大壓力,為了使得視頻得到較好的應用,必須解決視頻壓縮和壓縮后視頻質量的問題,選擇一種高效的視頻編碼算法是解決這一矛盾的重要途徑。H.264/AVC自從ITU-T視頻編碼與ISO/IEC運動圖像專家組(MPEG)共同推出以來,以其高效的壓縮性能和友好的網絡特性受到了業界的廣泛推崇。同時,H.264標準的巨大運算量又成為其應用瓶頸,因此選用性能優良的專用H.264高清圖像壓縮芯片可以快速地完成H.264高清視頻壓縮的工程化應用。當前國際上高清視頻壓縮芯片種類繁多,由TI公司推出的DM6467是TI推出的一款面向高清視頻應用的媒體處理片上系統(SoC),內部集成1個ARM 核、1個C64x+DSP核、2個高清視頻/圖像協處理器和豐富的片上外設。ARM最高時鐘頻率為297 MHz,主要負責視頻采集、視頻顯示、網絡通信以及外圍器件控制等工作;DSP核的時鐘頻率可工作在594 MHz,峰值運算能力達到4 752 MIPS(million instructions per second),主要負責調用HDVICP實現完整的H.264編碼算法。DM6467既有與通用DSP一樣的可編程性,又兼有同專用芯片一樣的高效性,在功耗、適應性、性能等方面達到了完美平衡。能夠完成最高1 080p 30 f/s(幀/s)以上的視頻編解碼。DM6467的Video Port Interface(VPIF)用于接收和發送圖像數據,包括2個輸入通道和2個輸出通道,VPIF時鐘速率最高達150 MHz,支持BT.656,BT.1120,SMPTE 296 這 3 種標準圖像格式,還支持用于非標準圖像的格式RAW數據采集方式。采用RAW 采集時,支持的數據位寬為 8 bit,10 bit,12 bit,最大單幀分辨率為2 048×1 536。
通過上述分析可知,DM6467雖具有性能優良的高清視頻壓縮特性,但支持分辨率有限,且支持的圖像分辨率具有上限限制,本文設計了一種基于FPGA結合DM6467處理器的高性能圖像壓縮平臺,在FPGA中完成視頻圖像采集、分辨率自行檢測、色度空間轉換等工作,采用的分幀傳輸技術突破了該款芯片所能支持的最大處理圖像分辨率的限制,并大幅降低了圖像采集時延。
該系統是基于FPGA+DM6467的高清視頻壓縮系統,包括FPGA中的圖像預處理以及DM6467中的H.264視頻硬核編碼。圖1為本系統的硬件設計結構圖。視頻通過CAMLINK接口進入預處理系統,輸入圖像格式為RGB格式或BT656格式,在FPGA中將預處理完成后的數據通過DM6467的VPIF(視頻輸入接口)輸入到DSP中(此處按照RAW數據流方式輸入),DM6467將編碼后的碼流通過千兆網口傳輸到FPGA中,FPGA再將壓縮后的碼流輸出。

圖1 系統硬件設計結構圖
視頻預處理全部在高達1 000萬門的Xilinx Virtex-5 FPGA處理器中完成。預處理系統可自適應地對輸入視頻圖像分辨率進行檢測與采集,并可將輸入的RGB色度空間轉換為YUV色度空間,并對色度空間進行下采樣,最后預處理系統將下采樣數據進行分幀傳輸,即將下采樣后的視頻數據進行分塊并按照RAW格式進行組幀傳輸。
DM6467視頻接口(VPIF)用來采集和顯示數字圖像數據,包括2個圖像采集通道Channel 0和Channel 1以及2個圖像顯示通道Channel 2和Channel 3,每個通道位寬8 bit。圖像采集通道可配置輸入2路8 bit標清視頻(BT.656 格式),或單路16 bit高清視頻(BT.1120 格式),或單路RAW格式視頻(8/10/12 bit可變)。
上述前兩種模式只適用于采集標準格式視頻,本課題設計方案主要應用于無人飛行器測控系統中,由于無人飛行器載荷輸出的高清視頻多采用RGB格式,分辨率也不盡相同,屬于非標格式,因此只能選擇配置靈活的RAW格式采集。RAW格式數據采集最大支持單幀分辨率為2 048×1 536,不支持RGB到YUV的色彩空間轉換。采用8 bit RAW格式逐行采集時,使用信號包括行同步(h_valid)、幀同步(v_valid)、輸入數據(vin_data[7:0]),其要求時序圖如圖2所示。

圖2 RAW格式傳輸時序圖
為滿足RAW格式單幀分辨率的要求,首先要檢測輸入視頻的分辨率。通過對輸入視頻數據的行同步信號與幀同步信號進行計數,就可以計算出輸入視頻信號的分辨率大小,從而實現對圖像分辨率自行檢測。
顏色空間是顏色集合的數學表示,常用的顏色模型有RGB和YCbCr。紅、綠、藍是3個基本的相加色,RGB的3個分量需要相同的帶寬。本項目中高清相機輸出的圖像屬于RGB444格式,因為人眼對亮度的變化比對色度的變化更敏感,所以Cb和Cr的傳輸速率就沒必要和Y一樣,這樣就可以減少存儲量和帶寬。從RGB到YCbCr的色度空間轉換關系式為


在Xilinx Virtex-5中型號為 XC5VSX50T的 FPGA中,內部集成有1個RGB到YCrCb空間的IP智能轉換核,如圖3所示。在預處理系統中通過調用該IP核,并通過合理的接口設計,就可以完成色度空間的轉換。該IP模塊輸出為YUV色度空間模式,對該輸出模式的UV分量根據系統需求再進行下采樣,進而完成對色度空間的轉換與下采樣操作。
根據系統設計框圖可知,在完成色度空間下采樣之后,將有效的YUV圖像數據分別寫入到3個FIFO中。DM6467視頻傳輸接口RAW格式支持的最大分辨率為2 048×1 536,本文預處理系統中將整幀圖像按照下式進行分幀傳輸處理

圖3 FPGA內部色度空間轉換(截圖)

式中:h_resolution與v_resolution分別表示原始圖像幀的分辨率;H_resolution_raw與V_resolution_raw表示子幀分辨率大小。如分辨率為4 992×6 668大小的原始圖像,分幀后得到的32個分辨率為1 248×833的子幀圖像。分幀后為了能識別完整的圖像幀信號,還需要單獨產生能識別完整幀的同步信號。
RAW格式數據組幀需要根據分幀模塊計算的子幀分辨率及子幀的個數,依次讀取FIFO中的Y分量和UV分量,按照RAW格式要求的時序輸出到VPIF接口,RAW格式數據組幀狀態機轉換圖如圖4所示。

圖4 RAW格式數據組幀狀態機轉換圖
預處理部分由FPGA實現,開發環境為ISE 12.4,并在MODELSIM 6.5d下進行了仿真。仿真時序如圖5所示,輸入圖像為分辨率4 992×6 668的數碼照片。其中,VSYNC_IN與HSYNC_IN為輸入圖像的幀同步、行同步信號。Vresolution與hresolution為檢測到的分辨率,framenum為分幀后的子幀個數,v_resolution_raw與h_resolution_raw為分幀后的子幀分辨率,oFval與oHVAL為子幀的幀同步、行同步信號??梢钥吹剑謳蟮淖訋直媛?、同步信號以及時序均能滿足DM6467的VPIF接口RAW格式要求。

圖5 RAW格式分幀仿真時序圖
根據系統總體設計硬件結構圖,本文所設計的硬件實物圖如圖6示,將所設計的系統連接真實相機進行實際視頻預處理、壓縮,最后將壓縮后的比特數據流通過I/O端口傳輸至PC機中進行軟解壓顯示。整套圖像預處理、壓縮、傳輸以及軟解壓顯示如圖7示。

圖6 視頻采集壓縮板卡實物圖(照片)

圖7 視頻編解碼傳輸系統(照片)
本文針對高清視頻壓縮技術的需求,設計一種基于FPGA與DM6467達芬奇平臺的視頻壓縮硬件平臺,在FPGA中完成了對DM6467編碼前數據的自適應預處理,包括自適應地對輸入視頻進行分辨率的檢測與數據采集,色度空間的轉換與下采樣,以及RAW格式數據組幀。采用的分幀傳輸技術突破了DM6467所能支持的最大分辨率限制,大大減少了系統圖像采集時間,本文所設計系統可對任意格式分辨率視頻采集與編碼,為基于DM6467的視頻壓縮提供了參考設計模型。
[1]郭波,樊丁,彭凱.基于DaVinci技術的嵌入式視頻監控系統設計[J].測控技術,2009,28(10):82-84.
[2]趙攀,盧彬.基于FPGA+DM6467智能監控系統設計[J].電視技術,2012,36(7):137-139.
[3]TI TMS320DM6467 digital media system on chip[EB/OL].[2013-01-02].http://www.ti.com/product/tms320dm6467.
[4]趙勇,袁譽樂,丁銳.DaVinci技術原理與應用[M].南京:東南大學出版社,2008:81-101.
[5]WU Y,ZHAO Y.Brief analysis of the DM6467 HD-VICP subsystem functional simulator[C]//Proc.ICNDS 2010.[S.l.]:IEEE Press,2010:609-612.
[6]WANG J,LV R,GAO P,et al.The design of HDTV H.264 encoding system based on multi-dsps architecture[C]//Proc.International Conference on Computer Science and Software Engineering.[S.l.]:IEEE Press,2008:54-57.
[7]TALLA D,GOBTON J.Using DaVinci technology for digital video devices[J].Computer,2007,40(10):53-61.
[8]李武森,遲澤英,陳文建.高速DSP圖像處理系統中的乒乓緩存結構研究[J].光電子技術與信息,2005,18(3):76-79.
[9]沈道寧,陳耀武.H.264濾波器在達芬奇平臺下的優化設計[J].計算機工程,2010,36(23):220-222.
[10]王宏志,蘇令華,王曉紅.基于達芬奇平臺的視頻編碼器實現[J].計算機測量與控制,2011,19(5):1118-1120.
[11]李丹,王健,季曉勇.基于達芬奇平臺的H.264視頻流加密終端的設計[J].電視技術,2009,33(4):33-35.
[12]陳鍵.基于TI公司達芬奇平臺的嵌入式無線視頻監控系統[D].天津:天津大學,2010.