《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 一種新型圖像壓縮系統(tǒng)的設計
一種新型圖像壓縮系統(tǒng)的設計
2014年電子技術應用第11期
高利聰1,2,,菅少坤1,2,,梁 庭1,2
1.中北大學 電子測試技術國家重點實驗室,,山西 太原030051,; 2.中北大學 儀器科學與動態(tài)測試教育部重點實驗室,山西 太原030051
摘要: 為打破傳統(tǒng)的攝像機-采集卡-存儲卡為一體的簡單采集存儲設計模式,,實現(xiàn)模擬視頻和數(shù)字視頻雙采集及數(shù)據(jù)壓縮,、高速傳輸?shù)男履J剑O計了一種以FPGA為控制核心,、DSP為圖像數(shù)據(jù)處理中心,、IP核的生成與雙SDRAM乒乓緩存協(xié)同工作為技巧、PCI卡高速傳輸為手段的圖像壓縮系統(tǒng),。DSP邏輯編碼的改進使圖像壓縮比得到進一步提高,。通過實際測試,圖像的壓縮比可達26:1,;FPGA+DSP+PCI卡的綜合使用使處理圖像數(shù)據(jù)的速度提高至少50%,,圖像轉存速率更是達到了38 MB/s。
中圖分類號: TP333.1
文獻標識碼: A
文章編號: 0258-7998(2014)11-0043-04
A new design of image compression system
Gao Licong1,,2,,Jian Shaokun1,,2,Liang Ting1,,2
1.National Kay Laboratory for Electronic Measurement Technology,,North University of China,,Taiyuan 030051,,China;2.Kay Laboratory of Instrumentation Science & Dynamic Measurement of Ministry of Education,,North University of China,,Taiyuan 030051,China
Abstract: In order to break the traditional design pattern camera - capture card - the card as one of the simple acquisition and storage, and realize the new mode of double data acquisition of analog video and digital video as well as compression and high-speed transmission,,an image compressing system is designed with FPGA as the control center, DSP as image data processing center, IP core generation and dual-SDRAM ping-pong cache collaborative work as skill, and PCI card as a means of high-speed transmission. Improved DSP logic code makes the image compression ratio be further improved. Through the actual test, image compression ratio of up to 26:1. The integrated use of FPGA+DSP+PCI card makes the speed of image data processing improved by at least 50%, image transfer rate is reached 38 MB/s.
Key words : FPGA,;DSP;SDRAM,;PCI,;image compression

0 引言

  傳統(tǒng)的視頻采集系統(tǒng)僅支持PAL和NTSC幾種制式的視頻數(shù)據(jù),這些模式很難清晰地抓拍到目標快速變化的瞬時圖片,,而很多高幀頻的攝像頭只是對圖像進行了簡單的采集,,并未處理和壓縮。為了改善視頻圖像數(shù)據(jù)的信道傳輸和存儲速度,,降低對信道寬度以及存儲空間大小的要求,,本文設計了一種多接口、高速率傳輸?shù)?a class="innerlink" href="http://forexkbc.com/tags/圖像壓縮" title="圖像壓縮" target="_blank">圖像壓縮系統(tǒng),。該系統(tǒng)不直接存儲圖像數(shù)據(jù),,而是由FPGA采集數(shù)字化后的視頻圖像數(shù)據(jù),通過DSP將采集的數(shù)據(jù)進行編碼壓縮,,然后再將編碼壓縮后的數(shù)據(jù)通過PCI高速傳輸給計算機,,最后再通過計算機對圖像進行解壓縮并顯示。

1 總體結構設計

  本設計結合FPGA處理速度快,、DSP運算能力強等優(yōu)點,,提出了如下方案:通過FPGA模擬I2C總線時序,對模擬視頻采集芯片TVP5150進行配置,,并接收TVP5150輸出的ITU-R BT.656格式的圖像數(shù)據(jù),;同時,采用了Camera Link 接口,,接收標準數(shù)字相機輸出的圖像數(shù)據(jù),。在FPGA完成對視頻數(shù)據(jù)的采集并經內部FIFO緩存后,將數(shù)據(jù)打包并行傳輸給DSP,,DSP對圖像進行JPEG2000標準的壓縮,,壓縮幀頻不低于60幀/s,,壓縮比不小于20:1;壓縮后的數(shù)據(jù)通過PCI總線傳輸給控制計算機,,然后通過計算機對圖像進行解碼顯示,。

001.jpg

  圖像壓縮系統(tǒng)的整體結構如圖1所示,主要包括圖像采集模塊,、FPGA控制模塊,、DSP壓縮模塊、PCI接口模塊,、電源和時鐘管理模塊,。

  視頻采集模塊使用了型號為PNT-698的CCD模擬攝像頭,該攝像頭幀頻為25 Hz,,場頻為50 Hz,,像素為720×576,輸出為PAL制式圖像信號,,信噪比大于48 dB,,并可以實現(xiàn)自動增益控制以及自動白平衡調整,輸出接口標準為BNC,。

2 硬件平臺的搭建

  2.1 視頻接口協(xié)議設定

  視頻接口由8路并行數(shù)據(jù)和1路時鐘信號組成,,時鐘為像素時鐘,時鐘周期T=1/1 728fN,,fN為行頻率,單位是Hz,,fN=1/625(一幀圖像為625行),脈沖寬度t=18.5±3 ns,,數(shù)據(jù)保持時間為td=18.5±3 ns,。

002.jpg

  視頻傳輸協(xié)議是以幀為單位傳輸,一幀圖像的傳輸格式如圖2所示,。為了與標準電視圖像掃描方式相兼容,,采用隔行掃描,每幀625行,,每行1 728 B,。其中第1行~第23行和第311行~第336行為場消隱信號,主要針對視頻數(shù)據(jù)場結束后掃描位置的重新定位,,偶數(shù)場共288行(23~311),,奇數(shù)場共288行(336~624)。

  圖像解碼芯片TVP5150采用了同步信號嵌入數(shù)據(jù)內部的輸出方式,,所以需要對行數(shù)據(jù)結構進行研究,。行數(shù)據(jù)結構如圖3所示,一行共1 728 B,,前288 B為行控制信號,,后1 440 B為圖像數(shù)據(jù),。行控制信號包括行開始標志SAV(Start of Active Video),長度為4 B,;行結束標志EAV(End of Active Video),,長度為4 B;行消隱信號280 B,。SAV信號和EAV信號都由4 B組成,,分別為FF、00,、00,、XY,,前3 B為固定數(shù),,最后1 B XY表示該行數(shù)據(jù)在整幀圖像中的位置信息。XY字節(jié)包含奇偶場標志,、行消隱狀態(tài)信息,、場消隱狀態(tài)信息。

003.jpg

  視頻圖像數(shù)據(jù)為YCbCr 4:2:2格式,,Y表示一個像素的亮度,,Cb、Cr表示一個像素的色差信號,,一個像素2 B,,每行共720個像素,共1 440 B,。視頻數(shù)據(jù)格式為CbYCrYCbYCrY……CrY,,因此可以理解為每個像素均有各自的亮度信號Y,但是共用一組色差信號Cb和Cr,。在解包數(shù)據(jù)時,,需要將它們分開,若需要顯示,,可以將YUV格式轉換為RGB格式,。

  2.2 FPGA與DSP接口設計

  FPGA完成圖像數(shù)據(jù)的接收后,經過格式變換及濾波將圖像數(shù)據(jù)傳輸給DSP進行壓縮,。壓縮打包完成后,,又需要將數(shù)據(jù)回傳給FPGA,通過FPGA控制PCI接口時序,,將數(shù)據(jù)最終上傳給計算機,。為了滿足圖像數(shù)據(jù)高速、雙向,、實時的傳輸,,在DSP與FPGA之間設計了兩個高速的FIFO緩沖,。

  本系統(tǒng)中選用Spartan3系列的XC3S1400AN作為核心處理器[1],其內部儲存資源豐富,,內部Flash 16 Mbit,, Distributed RAM(分布式RAM)176 Kbit,Block RAM(塊RAM)576 Kbit,。為了節(jié)約成本,,同時考慮到系統(tǒng)的傳輸速率及可靠性,在FPGA內部IP核中創(chuàng)建了內部FIFO,,數(shù)據(jù)寬度為32 bit,,存儲容量為3 M×32 bit。采用了獨立的讀時鐘(RD_CLK)和寫時鐘(WR_CLK),,數(shù)據(jù)達到半滿,,半滿標志位置1(half_flag=′1′);達到滿,,滿標志置1(full_flag=′1′),。

004.jpg

  FPGA和DSP的接口如圖4所示,視頻數(shù)據(jù)采集,、處理完成之后,,F(xiàn)PGA通過FIFO的滿標志查看FIFO是否已滿,如果未滿,,則將32 bit圖像數(shù)據(jù)在寫時鐘的邏輯控制下寫入到FIFO,;將半滿信號連接到DSP的中斷引腳,半滿信號置高,,會觸發(fā)DSP的DMA進程,,將FIFO中的圖像數(shù)據(jù)讀走[2]。同理,,DSP通過EMIF外設接口將FPGA作為其外部存儲空間,,壓縮后的數(shù)據(jù)通過DMA寫到FPGA內部的另一個FIFO,半滿信號觸發(fā)FPGA內部讀數(shù)進程,,將數(shù)據(jù)讀走,,通過PCI總線上傳到控制計算機。

  2.3 DSP壓縮模塊設計

  JPEG2000壓縮算法硬件實現(xiàn)復雜度比較高,,其核心算法離散小波變換和EBCOT算法計算量特別大[3],,同時要考慮到實時性要求,所以對CPU的處理速度以及緩存空間等要求很高,。因此在本次設計中,,選擇了TI公司C6000系列DSP中的TMS320DM642作為硬件平臺。該DSP計算速度超過每秒64億次,,適合大數(shù)據(jù)吞吐量高速運算,,比如在圖像處理領域,。同時,DM642擁有豐富的外設接口,,包括可實現(xiàn)與SDRAM,、Flash等外部存儲芯片無縫數(shù)據(jù)連接的EMIF接口等,非常適合音視頻解碼,、數(shù)字監(jiān)控以及數(shù)字視頻服務等應用[4],。

005.jpg

  對圖像數(shù)據(jù)處理流程如圖5所示,源圖像先經過正向預處理后進行離散小波變換(DWT),,然后對變換的小波系數(shù)進行量化處理和熵編碼,,最后將熵編碼后獲得的圖像數(shù)據(jù)打包成壓縮數(shù)據(jù)包輸出。解碼則按照壓縮碼流中提供的各個參數(shù)將編碼過程進行逆向操作,,最終將源圖像重構還原出來,。

  2.4 乒乓緩存設計

  圖像傳感器單位時間內產生的數(shù)據(jù)是連續(xù)的,且數(shù)據(jù)量比較大,,而DSP的編碼速率是變化的,。為了防止在編碼過程中造成數(shù)據(jù)的丟失,需要在采集與編碼電路之間設計一組幀緩存電路,。

  常用的緩存電路主要有FIFO、雙端口RAM和乒乓緩存結構[5],。由于FIFO的存儲容量太小,,不適合圖像視頻數(shù)據(jù)的大吞吐量緩存。雙端口RAM配備必須進行訪問仲裁控制,,設計較復雜,。乒乓緩存結構克服了它們所有的缺點,輸入的視頻數(shù)據(jù)流以幀為單位交替地寫入兩個不同的SDRAM存儲單元,,在寫入其中一塊SDRAM的同時,,將另一塊SDRAM中的數(shù)據(jù)讀出,并送到數(shù)據(jù)編碼單元進行運算,。這樣數(shù)據(jù)的輸入/輸出都是不間斷的,,非常適合流水線式操作,完成數(shù)據(jù)的無縫緩存和處理,。

007.jpg

  本設計中乒乓緩存結構如圖6所示,,DSP接收到FPGA傳輸?shù)膱D像數(shù)據(jù)后,以幀為單位交替寫入兩塊SDRAM存儲器,。與此同時,,數(shù)據(jù)被交替讀出,輸出給數(shù)據(jù)壓縮單元進行編碼,。數(shù)據(jù)流被嚴格有效地控制,,不會出現(xiàn)丟數(shù)據(jù)或者誤碼,,而且效率很高。選用MT48LC2M-

  32B2作為外部高度SDRAM緩存器,,讀寫速率可以達到6 ns,,數(shù)據(jù)總線寬度為32 bit,容量為64 Mbit,,而高頻數(shù)字攝像頭輸入的一幀圖像的大小為600×480×3=864 Kbit,,完全可以滿足要求。

3 邏輯功能的實現(xiàn)

  3.1 TVP5150解碼邏輯

  TVP5150解碼芯片輸出的數(shù)據(jù)流中除了包含有效的視頻圖像數(shù)據(jù)之外,,還包含行,、場同步信號以及一些消隱數(shù)據(jù)。所以在視頻解碼時,,需要根據(jù)同步信號以及ITU-R BT.656的標準格式將有效數(shù)據(jù)提取出來,。

006.jpg

  提取有效數(shù)據(jù)的流程圖如圖7所示,在時鐘的上升沿對TVP5150輸出的數(shù)據(jù)進行采樣,,若連續(xù)出現(xiàn)“FF”,、“00”、“00” 3個固定字節(jié),,則表明出現(xiàn)了定時基準,;如果第4 B出現(xiàn)“80”,表示一場數(shù)據(jù)的開始,,而且為偶場,,接著讀取1 440 B圖像數(shù)據(jù)。同理,,若第4 B出現(xiàn)“C7”,,表示奇數(shù)場數(shù)據(jù)的開始,接著同樣讀取1 440 B有效圖像數(shù)據(jù),;否則,,繼續(xù)等待定時基準的出現(xiàn)。

  3.2 DSP編碼邏輯


008.jpg

  DSP對圖像數(shù)據(jù)的編碼流程如圖8所示,,上電復位后,,DSP程序從Flash起始處加載并啟動,通過二次引導,,最終將應用程序全部搬移到DSP內存中,,然后跳轉到入口函數(shù)c_int00(),完成初始化配置,,并等待FPGA的外部中斷觸發(fā)信號,。FPGA采集到數(shù)據(jù)后,緩存到接口FIFO中,并以中斷的方式觸發(fā)DSP的DMA進程,,DSP以DMA的方式將數(shù)據(jù)存儲到SDRAM中,,若一幀圖像傳輸完畢,則觸發(fā)軟中斷,,進入JPEG2000編碼子程序,。編碼完成后,再次觸發(fā)DMA進程,,將數(shù)據(jù)回傳給FPGA,。 3.3 PCI傳輸接口邏輯

  PCI接口主要用來下發(fā)上位機控制命令和系統(tǒng)參數(shù),,上傳編碼后的圖像數(shù)據(jù),。采用PCI9054芯片來連接本地總線和PCI總線,PCI總線協(xié)議由PCI9054芯片內部處理,,只需對其進行配置,,并完成硬件接口驅動程序即可,PCI9054工作在C模式,,內部采用了DMA數(shù)據(jù)傳輸方式[6],。

009.jpg

  PCI接口內部邏輯流程圖如圖9所示,先判斷總線啟動信號ADS,,若該引腳電平由高變低,,則啟動一次數(shù)據(jù)傳輸過程,然后判斷讀寫信號電平LWR,,若LWR為1,,表示PCI寫過程,否則為讀過程,。PCI讀過程又分為讀狀態(tài)和讀數(shù)據(jù),通過地址總線LA來判斷,,讀過程中,,若LA=04H,則為讀寄存器狀態(tài),;若LA=A0H,,則為讀批量圖像數(shù)據(jù)。而寫過程中,,若LA=01H,,則為系統(tǒng)復位,立即執(zhí)行,,不寫入寄存器,;若LA=02H,則為命令下發(fā),需要將命令字寫入相應寄存器,;若LA=03H,,則為命令刷新,立即執(zhí)行,,不寫入寄存器,。

  為了使得數(shù)據(jù)不丟失,在PCI接口設計過程中調用FPGA的IP核添加了FIFO數(shù)據(jù)緩存器,,位寬為32 bit,,與PCI總線位寬相匹配,深度為4 KB,。由于PCI數(shù)據(jù)總線是雙向傳輸,,所以在FPGA內部增添了數(shù)據(jù)方向控制模塊,保證了數(shù)據(jù)有序地下發(fā)和上傳,。

4 結果分析


010.jpg


  為了比較壓縮前后圖像的質量,,首先將未壓縮的圖片通過PCI接口傳輸給上位機并顯示,如圖10(a)所示,,圖像大小為407 KB,,格式為BMP。然后保持源圖片不變,,將采集到的圖像數(shù)據(jù)傳輸給DSP編碼,,編碼后傳輸給上位機,經上位機解碼后得到的圖片如圖10(b)所示,,其大小為59.5 KB,,壓縮比約為10:1;圖10(c)大小為15.2 KB,,壓縮比約為26:1,。同時,圖像數(shù)據(jù)通過PCI卡傳輸給上位機時最高速率達到了38 MB/s,。

  通過對比可知,,壓縮比越高,峰值信噪比越低,,主觀視覺的質量也會有所下降,,局部細節(jié)有些模糊??傮w來說,,本次設計的新型圖像壓縮編碼系統(tǒng)實現(xiàn)了預計的功能。

參考文獻

  [1] 邸麗霞.基于FPGA的高速圖像數(shù)據(jù)采集存儲系統(tǒng)設計[J].電視技術,,2013,,37(13):49-52.

  [2] 李娟.基于FPGA的圖像預處理及顯示系統(tǒng)的設計[D].中國科學院研究生院,2011.

  [3] 張曉娣,劉貴忠,,曾召華,,等.JPEG2000圖像壓縮編碼系統(tǒng)及其關鍵技術[J].電視技術,2001(8):13-17.

  [4] 鄭紅,,劉振強,,李振.嵌入式DSP應用系統(tǒng)設計及實例剖析[M].北京:北京航空航天大學出版社,2012.

  [5] 周如輝.實時視頻處理系統(tǒng)中乒乓緩存控制器的設計[J].電子元器件應用,,2006(4):66-68.

  [6] 原學山.基于PCI總線的圖像采集卡的設計與實現(xiàn)[D].成都:西南交通大學,,2006.


此內容為AET網站原創(chuàng),未經授權禁止轉載,。