劉敏慧 高楓 劉文怡
摘 要: 在JPEG2000專用編解碼芯片ADV212的基礎上,設計了以FPGA與ADV212為核心的彩色圖像數據實時壓縮系統。系統以FPGA為主控單元實現了對圖像數據的接收、壓縮、發送,對ADV212寄存器進行了配置、數據輸入,并將壓縮數據實時上傳到上位機。經過實際測試,該系統滿足對彩色圖像壓縮實時性的要求,且系統穩定,失真度小,具有較高的實用價值。
關鍵詞: ADV212; FPGA; 彩色圖像; 數據實時壓縮; 上位機; JPEG2000
中圖分類號: TN911.73?34; TP274 文獻標識碼: A 文章編號: 1004?373X(2017)22?0088?03
Abstract: On the basis of the decoding chip ADV212 dedicatedly used for JPEG2000, a color image data real?time compression system taking FPGA and ADV212 as its cores was designed. The FPGA is taken as the main control unit of the system to receive, compress and send the image data. The ADV212 register is configured, and the data is input into it. After that the compressed data is uploaded to the host computer in real time. The actual test results show that the system can meet the real?time requirement for the color image compression, which is stable, and has small distortion and high practical value.
Keywords: ADV212; FPGA; color image; data real?time compression; host computer; JPEG2000
隨著我國導彈、航天事業的飛速發展,航天系統的功能更加完善,需要測試的內容不斷增多,精度不斷提高,數據量也以幾何量級擴大,因此對無線傳輸帶寬的要求越來越高。由于圖像信息具有數據海量性的特點,尤其是彩色圖像,在一定的環境條件下受傳輸時間、存儲空間和信道帶寬的影響,難以被快速傳輸或存儲[1?2]。為了緩解帶寬壓力,提高遙測系統無線帶寬的利用率,本文提出并設計了一種彩色圖像實時壓縮系統。利用FPGA實現邏輯控制,通過編解碼芯片ADV212實現彩色圖像壓縮,具有實時性好,靈活性高,速度快、穩定性高、壓縮比可靈活調整等優點。該系統可以很好地緩解現階段圖像信息難以被快速傳輸或存儲的問題。
1 系統總體設計
該系統由前端攝像頭采集圖像數據,ADV212壓縮芯片對采集到的數據進行實時壓縮后,通過RS 422接口實時傳送到上位機并顯示出來。系統總體設計框圖如圖1所示。系統將前端攝像頭已經處理成LVDS信號的圖像源通過LVDS解碼芯片MAX9250解碼出來,FPGA判別數據幀頭以讀取有效圖像數據,并將有效數據寫入到用于緩存數據的FIFO中,經過ADV212壓縮芯片壓縮后,通過RS 422接口實時傳送到上位機并顯示出來。
2 主要硬件設計與實現
硬件設計主要包括圖像接收模塊、圖像壓縮模塊、圖像傳輸模塊和電源模塊4個部分。其中圖像接收模塊是對外部的LVDS接口信號進行處理,處理成25 f/s輸出到壓縮模塊。圖像傳輸模塊是將壓縮后的彩色圖像經過RS 422接口傳輸至上位機軟件。電源模塊功能是將輸入電壓轉化為各種芯片所需電壓,為各芯片提供電源。而實現壓縮功能的主要是圖像壓縮模塊。
圖像壓縮模塊包括幀頭判別模塊、圖像壓縮主模塊。圖像壓縮主模塊的核心是壓縮芯片ADV212,負責對彩色圖像進行壓縮處理。
2.1 幀頭判別模塊
幀頭選擇模塊由5個移位寄存器和1個比較器組成,把多個字節組成較長的字節,然后與固定的幀頭值判斷是否是幀的起始,如果是幀頭則使能寫。其中該模塊的輸入參數為移位時鐘、移位數據,輸出參數為aeb,如圖2所示。
比較器的時序圖如圖3所示。該模塊由5個移位寄存器與1個比較器組成,當判別到幀頭55AAFAF9時,輸出低電平。
2.2 圖像壓縮主模塊
圖像壓縮主模塊在QuartusⅡ中的名稱為encoder。該模塊的主要功能是對壓縮芯片進行配置,緩存圖像數據并適時寫入壓縮芯片,讀取壓縮后的數據,并把壓縮后的數據寫入到后續的數據選擇模塊中,如圖4所示。
該模塊的流程圖如圖5所示,圖像壓縮模塊主要是初始化壓縮芯片,把輸入的圖像數據寫入到壓縮芯片,再把壓縮后的圖像讀出來寫入后端的FIFO。
3 系統軟件設計
系統軟件主要通過FPGA內編程控制及ADV212內部固件參數定義實現,主要分為圖像接收模塊、圖像壓縮模塊、圖像傳輸模塊3個功能模塊。
3.1 圖像接收模塊
圖像接收模塊中LVDS接口接收的圖像數據格式為640×480×8 b,即LVDS接口的數據寬度為8 b。LVDS接口的通信時序圖如圖6所示。
圖像數據在幀同步信號為高時有效,對應圖像數據的一幀,行同步信號為高時有效,每次幀同步信號有效期間的每次行同步信號有效,對應圖像數據的一行。圖像數據的寬度為8 b,即D0~D7。數據的同步時鐘為上升沿時,讀取LVDS接口圖像數據。endprint
圖像接收過程中,為了確保每次都能正確地把圖像數據寫入后面的FIFO中,在第一個幀同步信號中添加幀頭55AAFAF900,數據比較器在圖像數據中識別幀頭時,使能后面的FIFO,把后面的圖像數據寫入FIFO中。
3.2 圖像壓縮模塊
本系統中,圖像壓縮模塊主要通過FPGA實現對JPEG2000壓縮芯片ADV212的初始化,初始化過程包括直接寄存器的配置、間接寄存器的配置以及固件的加載[3?4]。本系統中壓縮芯片設置為HIPI模式,其初始化的具體流程如圖7所示。
ADV212編碼固件參數視頻標準設置為用戶自定義模式。在小波引擎中,每個圖塊或幀將通過9/7濾波器分解成許多自帶。生成的小波系數寫入內部寄存器中。輸出的碼流格式為YCbCr的JP2格式。ADV212僅支持YCbCr的4∶2∶2格式。在ADV212中,對于YCbCr視頻,樣本值是每行像素值的2倍。因此,壓縮一副480×640的彩色圖像,固件參數應當設置為240×320。
3.3 數據傳輸模塊
數據傳輸模塊主要是把前端的壓縮數據轉化為異步串行數據。其中TX422發送模塊用于向主控機發送壓縮后的圖像數據或原始圖像數據。
TX422發送模塊的輸入為FIFO的輸出信號,輸出為差分信號,波特率為2.457 6 Mb/s;采用異步串行口通信協議,1位起始位,8位數據位,1位停止位,無奇偶校驗位;數據以數據幀的形式按周期循環發送,發送周期為40 ms,每幀最大傳輸量為9 830 B,而壓縮后的數據量共有6 671 B,滿足傳輸要求。
異步串行接口發送圖像數據的約定如下:數據以數據幀的形式按周期循環發送,發送周期約為40 ms±0.5 ms;圖像數據按幀發送,幀與幀之間間隔大于2 ms;每幀圖像數據包含幀頭和幀尾,用于區分圖像幀;每幀圖像數據包含幀計數、幀長度內容,分別用于校準該幀圖像數據的相對時間信息和幀長度信息。
4 系統測試
該系統設計完成后,前端采集到的彩色圖像經過壓縮芯片ADV212壓縮后,上傳到上位機,用編寫好的圖像顯示軟件顯示壓縮的圖像,圖8(a)為原始圖像,圖8(b)為壓縮后圖像。圖9為測試數據,用HexEdit軟件打開,其中55AAFAF900為每包數據幀頭,001A07為壓縮數據長度,C000010203為狀態字,FFFFFFF1為壓縮格式幀頭,00000131為壓縮幀計數,F9FA為每包數據幀尾。
5 結 論
本文設計了以FPGA與ADV212為核心的彩色圖像數據實時壓縮系統。測試表明,該系統可以可靠穩定地壓縮前端傳來的彩色圖像,系統滿足對彩色圖像壓縮實時性的要求,且系統穩定、失真度小,具有較高的實用價值。
參考文獻
[1] 郭清文,張大鵬,宋曉東.基于ADV212的圖像壓縮系統設計與實現[J].科技創新導報,2013(11):152?154.
[2] 張會新,曹翱翔,胡海風,等.基于FPGA和ADV212的圖像實時壓縮系統設計[J].電子器件,2016(2):483?486.
[3] 王丹,楊允基.ADV212編解碼芯片原理及應用[J].艦船電子工程,2008(5):112?115.
[4] 王占秋.JPEG2000標準及其編解碼芯片ADV212的研究[J].數字通信,2009(2):21?24.
[5] 鄧宸偉,趙保軍.基于ADV212的實時圖像壓縮系統[J].電視技術,2008(12):35?37.
[6] 歐民,譚金林,張國華.一種基于FPGA和ADV212的遙感衛星圖像JPEG2000實時解壓縮方法[J].空間電子技術,2014(1):11?14.
[7] 于巍巍,馬曉東,孫娟,等.基于多片ADV212芯片的圖像壓縮系統設計[J].空間電子技術,2014(1):15?18.
[8] 祁志恒,姜喆,張為.基于ADV212的雷達圖像壓縮傳輸系統[J].電子技術應用,2015(11):78?80.
[9] 劉永征,劉學斌,胡炳樑,等.基于ADV212的JPEG2000靜態圖像壓縮系統設計[J].電子器件,2009(3):504?508.
[10] 劉永征,劉學斌,胡炳樑,等.基于ADV212的圖像壓縮系統設計[J].電子設計應用,2008(12):92?95.
[11] 王振宇.基于JPEG2000的衛星圖像壓縮/解壓技術[D].武漢:華中科技大學,2013.endprint