李 進,金龍旭,韓雙麗,陶宏江,張然峰,李國寧,朱 鵬
(1.中國科學院長春光學精密機械與物理研究所,吉林長春 130033;2.中國科學院研究生院,北京 100039)
基于H.264編碼算法的高速CCD視頻壓縮系統設計
李 進1,2,金龍旭1,韓雙麗1,陶宏江1,張然峰1,李國寧1,朱 鵬1
(1.中國科學院長春光學精密機械與物理研究所,吉林長春 130033;2.中國科學院研究生院,北京 100039)
設計了一種基于H.264視頻編碼算法的壓縮系統。為了使壓縮算法高效快速的運行,使用了DSP/BIOS資源來管理軟硬件工作。為了高速交互數據,采用了EDMA高速搬運數據策略,進而保證了數據實時傳輸的需要。實驗結果表明,該壓縮系統可以穩定正常地工作,具有良好壓縮性能,在壓縮比40∶1~10∶1范圍內,平均信噪比高于35 dB,滿足了航空CCD相機應用的需求。
面陣CCD;視頻壓縮;H.264編碼算法;DSP處理器
隨著航空CCD成像技術的發展,高幀頻高清晰面幀CCD成為數字相機的主要圖像傳感器。然而,面幀CCD數據量十分龐大,給相機數傳系統帶來巨大的壓力,因此非常有必要對面幀CCD視頻進行壓縮。
目前,國際視頻編碼標準已由JPEG發展到了H.264編碼標準[1-2]。H.264編碼算法是目前國際上最新的視頻壓縮算法,它具有低比特率、抗誤碼率強的特點[3-4]。非常適合應用于各種視頻壓縮的場合。同時,隨著DSP技術的發展,DSP處理器出現了專門針對視頻處理的多媒體處理器,特別是,最新的視頻專用處理器TMS320DM642[5-6](最高主頻達到600 MHz),這也保證了視頻壓縮算法可實現性的需求。
本文在參考國內外相關技術的基礎上,根據背景項目需求,結合面幀CCD視頻特點,提出一種DSP平臺上實現的H.264視頻壓縮算法。
TMS320DM642是由TI公司推出的專用視頻處理器[7],它保留了C64原有的架構,工作頻率通過內部鎖相環時鐘乘法器可以達到500 MHz,600 MHz和720 MHz,相應的時鐘周期為2 ns,1.67 ns和1.39 ns,指令執行速率為4 000 MInstruction/s,4 800 MInstruction/s 和 5 760 MInstruction/s。DM642采用第二代增強型長指令形式,EMIFA接口數據總線寬度最大達64 bit,最高數據訪問頻率為133 MHz,可以和SDRAM無縫連接。片上L1和L2存儲空間可以分為兩部分存儲。該處理器包括:3個視頻接口VP0~VP2、EMAC 接口、McASP、PCI接口、HPI接口、GPIO接口、時鐘生成器(PLL)、I2C總線接口、EMIF模塊等。其中,時鐘生成器的作用可以使外部50 MHz晶振倍頻為600 MHz,該頻率為本文系統運作頻率。I2C總線用來設置外圍設備的工作參數,如視頻AD轉換器SAA7115,CMOS 傳感器等[8-13]。
通過上面的分析可知,DM642處理器具有非常豐富的資源和外部接口,具有強大的數字信號處理和控制能力,完全滿足高速實時視頻處理需求。
本文提出的CCD視頻壓縮系統硬件結構如圖1所示。

圖1 視頻壓縮系統硬件框架
整個系統分為:視頻前端電路、視頻存儲、視頻壓縮、視頻顯示以及視頻壓縮性能分析單元。視頻前端電路用來驅動CCD正常工作,并將CCD輸出的模擬視頻信號進行預處理、放大、模數轉換為RAW數字視頻數據。數字視頻數據可通過DM642視頻接口以RAW格式直接輸入到DM642中。此時,DM642的視頻接口要配置為RAW格式。DM642將視頻數據緩存到外部的SDRAM中,然后采用H.264算法進行壓縮。壓縮碼流存儲到視頻存儲單元中。另外,為了可以直接存儲和顯示原始圖像,本文可以將原始視頻數據直接采用NAND閃存進行存儲,數字視頻數據可通過DVI接口通過液晶顯示器直接顯示。
壓縮系統中,CPLD處理器輔助DM642管理外設。NOR型閃存作為DM642的程序存儲器,SDRAM作為DM642的數據存儲器。FPGA用來與DM642進行交換數據,將壓縮碼流進行存儲,另外,也可以實現將RAW視頻數據格式轉換為BT656的格式輸入到視頻處理器中。
H.264是目前最復雜且性能最好的視頻編碼標準。它具有較高的編碼效率,與H.263相比較,比特率可以減少50%。它最大的優點是在不減少視頻質量的情況下有較高的壓縮比[11]。H.264編碼總體分為視頻編碼層(VCL)和網絡提取層(NAL)。VCL的作用是編碼和解碼視頻數據,它包括運動補償、變換編碼和熵編碼等。NAL用來提供視頻壓縮碼流傳輸規范,它包括單字節的頭信息,多字節的視頻數據、邏輯通道信息、時間信息和視頻序列結束信號等。頭信息包括存儲標識和標識類型等。頭信息用于識別圖像數據類型。H.264仍采用一種混合編碼框架,但它在許多細節方面進行了改進。目前它成為視頻壓縮應用場合的主流壓縮方法[12-13]。
為了解決使用H.264壓縮算法時視頻數據量復雜的傳輸和處理問題,本文提出的壓縮系統編碼和解碼過程分為5步:1)幀內與幀間預測;2)變換與反變換;3)量化與反量化;4)環形濾波;5)熵編碼。
在DM642中,片上SRAM容量為256 kbyte。對于編碼視頻數據幀單元大小為352×288×3/2=152 kbyte的視頻流,當考慮參考視頻幀時,總的數據量要遠超過256 kbyte。另外,為了提高壓縮系統性能,片上SRAM需要分配出64 kbyte大小作為L2緩存使用。同時考慮到VLC表用來實現量化、DCT/IDCT變換等操作,因此也需將VLC用SRAM存儲。因此,僅采用DM642片上SRAM難以實現視頻壓縮。然而,如果待編碼幀和參考幀直接存儲到SDRAM中時,需要首先將視頻數據導入到L2緩存中,然后再從L2緩存導入到L1緩存,視頻數據才能被CPU操作處理。這樣CPU等待很多時間,極大地浪費了CPU資源。本文提出了一種基于EDMA的快速搬移數據策略,如圖2所示。

圖2 EDMA數據搬移策略
片上高速SRAM被分為乒乓操作的SRAM0和SRAM1,使用EDMA快速實現SDRAM與SRAM交換數據,而CPU始終直接訪問CPU,這樣可以極大的減少CPU訪問塊時間,增加利用率。表1為使用EDMA前后編碼器效率比較。

表1 編碼器EDMA使用效率比較 f/s
由表1知,使用了EDMA數據搬移策略大大提高了DSP視頻壓縮效率。
本文系統采用CCS3.1和DSP/BIOS集成開發環境,主要使用語言為C語言,ASM語言輔助編程和調試。整個程序下載到DM642中,采集得到一幀原始視頻和該幀經壓縮重構視頻如圖3所示。

圖3 視頻壓縮實驗(壓縮比為30∶1)
由圖3知,由圖2a和圖2b可知,從視頻幀上來看原始視頻幀和重構視頻幀沒有任何區別,這是由于在壓縮比為20∶1時,本文提出的壓縮算法信噪比較高。可見,本文提出的視頻壓縮系統是可行的。
為了測試本文提出的視頻壓縮系統視頻壓縮性能,選用抖動程度不同的3組視頻,每組50幀視頻序列進行測試。原始視頻和重構視頻采用信噪比計算公式為

其中,均方誤差公式MSE為

其中,f(x,y)和g(x,y)分別為原始視頻幀和重構視頻幀,M和N為視頻幀大小。測試壓縮比在項目設計指標要求的范圍10∶1~40∶1進行測試,信噪比結果如表2所示。

表2 壓縮測試結果
由表2知本文提出的CCD視頻壓縮系統在壓縮比為40∶1~10∶1范圍內平均信噪比在35 dB以上,具有良好的壓縮性能,滿足設計指標要求。
本文提出了一種適于航空CCD相機應用的視頻壓縮系統。整個壓縮系統分為CCD前端、視頻壓縮、視頻顯示、視頻壓縮碼流存儲以及壓縮分析單元,視頻壓縮單元采用高性能視頻專用DSP處理器TMS320DM642,軟件平臺采用在CCS3.1上使用C語言實現H.264壓縮算法。為了使壓縮算法高效快速的運行,本文使用了DSP/BIOS資源來管理軟硬件工作。為了高速交互數據,采用了EDMA高速搬運數據策略,進而保證了數據實時傳輸的需要。實驗結果表明,本文提出的壓縮系統可以穩定正常的工作,具有良好壓縮性能,在壓縮比40∶1~10∶1范圍內,平均信噪比高于35 dB,滿足了航空CCD相機應用的需求,為航空CCD相機視頻壓縮縮提供了一種很好的解決方案。
:
[1]WIEGAND T,SULLIVAN G,BJONTEGAARD G,et al.Overview of the H.264/AVC video coding standard[J].IEEE.Trans.Circuits System.Video Technology,2003,13(7):560-576.
[2]MARPE D,WIEGAND T,GORDON S.H.264/MPEG4-AVC fidelity range extensions:Tools,profiles,performance,and application areas[C]//Proc.Image Processing,2005.[S.l.]:IEEE Press ,2005:493.
[3]DIOGO G G,RICARDO L,De Q.Least-squares directional intra Prediction in H.264/AVC[J].IEEE Signal Processing Letters,2010,17(10):831-834.
[4]PIAOI Y,PARK H.An adaptive divide-and-predict coding for intraframe of H.264/AVC[C]//Proc.Image Processing,2009. [S.l.]:IEEE Press,2009:3421-3424.
[5]周傳璘,肖永軍,蘇貴坡,等.基于TMS320DM642的光電目標跟蹤視頻采集與處理系統設計[J].電視技術,2010,34(12):54-57.
[6]李青華,于峰崎.基于TMS320DM642的X264視頻編碼器的優化[J]. 電視技術,2010,34(8):39-42.
[7]徐華根,唐慧明,楊黎波.新型多媒體處理器DM642及其應用[J].電視技術,2005,29(1):36-38.
[8]薛頂柱,張洪陽,李健.基于TMS320DM642的H.264編解碼器的設計[J].現代科學儀器,2010,12(6):75-78.
[9]李守榮,姚海洋劉倩茹.基于DSP與FPGA的音視頻無線傳輸系統設計[J].機電產品開發與創新,2010(3):85-87.
[10]郭慰萱.基于DM642的實時網絡視頻傳輸系統的研究與實現[D].西安:西安電子科技大學,2009.
[11]許春冬,劉亦晴.基于DM642的H.264視頻編碼優化[J].江西理工大學學報,2010,31(5):44-47.
[12]楊春玲,肖冬琴.基于SSE和SSIM的H.264的幀內預測模式選擇改進算法[J]. 電子與信息學報,2011,33(2):289-294.
[13]LEE S,CHO N.Intra prediction method based on the linear relationship between the channels for YUV 4∶2∶0 intra coding[C]//Proc.Image Processing,2009.[S.l.]:IEEE Press,2009:1037-1040.
金龍旭(1965— ),博士生導師,主研空間相機電子學技術;
韓雙麗(1968— ),碩士生導師,主研空間相機熱控技術;
陶宏江(1980— ),助理研究員,主研空間相機圖像壓縮技術;
張然峰(1981— ),助理研究員,主研空間相機控制技術;
李國寧(1979— ),助理研究員,主研空間相機CCD成像技術;
朱 鵬(1987— ),碩士生,主研視頻壓縮技術;
Design of CCD Video Compression System Based on H.264 Coding Algorithm
LI Jin1,2,JIN Longxu1,HAN Shuangli1,TAO Hongjiang1,ZHANG Ranfeng1,LI Guoning1,ZHU Peng1
(1.Changchun Institute of Optics,Fine Mechanics and Physics,Chinese Academy of Sciences,Changchun 130033,China;2.Graduate School of Chinese Academy of Sciences,Beijing 100039,China)
A video compression system based on H.264 compression algorithm is proposed in this paper.In order to perform efficiently and fast the compression algorithm,the system uses DSP/BIOS to manage the operation of hardware and software.To transmit efficiently data,a strategy of data moved efficiently based on EDMA is proposed,which ensure the real-time transmission.The experimental results showed that the proposed compression system can stably work and has good compressive property.In the compression ration range from 40∶1 to 10∶1,the average peak signal to noise ratio of proposed compression system is higher than 35 dB.It meets the application of aviation CCD camera.
area CCD;video compression;H.264 coding algorithm;DSP processor
TP919.81;TP391.4
A
【本文獻信息】李進,金龍旭,韓雙麗,等.基于H.264編碼算法的高速CCD視頻壓縮系統設計[J].電視技術,2013,37(3).
國家“863”高技術研究發展計劃基金資助課題(86325113B)
李 進(1984— ),博士生,主研光電成像和圖像壓縮存儲技術;
責任編輯:魏雨博
2012-06-28