當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]基于雙FPGA+ARM架構(gòu)的圖像壓縮系統(tǒng)

目前的圖像壓縮存儲(chǔ)方案大都無(wú)法支持高分辨率圖像。另外,在一些DSP解決方案中,因?yàn)镈SP接口不靈活以及DSP本身處理能力的限制,很難支持高分辨圖像壓縮。

  本設(shè)計(jì)開(kāi)發(fā)出了一套基于雙FPGA+ARM架構(gòu)的高速計(jì)算機(jī)屏幕圖像壓縮系統(tǒng)。系統(tǒng)通過(guò)對(duì)圖像壓縮系統(tǒng)任務(wù)的劃分,利用FPGA的并行計(jì)算能力和靈活的編程方式,完成圖像壓縮算法。對(duì)于壓縮后的碼流,系統(tǒng)采用ARM管理,基于linux的嵌入式ARM系統(tǒng)能夠以文件的形式存儲(chǔ)碼流,另外,ARM對(duì)網(wǎng)絡(luò)和音頻常用設(shè)備能方便地管理。系統(tǒng)支持主流接口(VGA,DVI),壓縮后的碼流可以存儲(chǔ)在本地硬盤,也可以通過(guò)網(wǎng)絡(luò)發(fā)送到遠(yuǎn)端服務(wù)器。雙FPGA的設(shè)計(jì)對(duì)計(jì)算機(jī)屏幕圖像壓縮更為方便,原始圖像經(jīng)過(guò)前端預(yù)處理FPGA進(jìn)行幀間檢測(cè),以決定該幀圖像進(jìn)入主FPGA的壓縮模式,主FPGA為核心壓縮引擎,負(fù)責(zé)完成高速圖像壓縮算法。
 

  1 系統(tǒng)架構(gòu)與實(shí)現(xiàn)

  系統(tǒng)整體架構(gòu)如圖1所示,采用雙FPGA+ARM架構(gòu),主要包括圖像前端預(yù)處理、圖像壓縮模塊和碼流管理部分。

  

 

  前面一塊FPGA完成前端預(yù)處理,如分辨率檢測(cè)、色彩轉(zhuǎn)換和圖像分析等功能;后面一塊FPGA用來(lái)實(shí)現(xiàn)圖像實(shí)時(shí)壓縮,其中ARM對(duì)系統(tǒng)進(jìn)行管理,如壓縮后碼流管理、網(wǎng)絡(luò)管理和音頻錄制等。

  1.1 預(yù)處理模塊

  本系統(tǒng)同時(shí)支持VGA、DVI兩種主流顯卡接口。采用AD9888[2]作為視頻模數(shù)轉(zhuǎn)換器,TI公司的TFP403[3]為DVI接收芯片。Xilinx公司Virtex4[4](XC4VLX40)完成圖像預(yù)處理,主要包括圖像數(shù)據(jù)的采集、色彩空間轉(zhuǎn)換和幀間檢測(cè)。前端處理模塊如圖2所示。

  

 

  1.1.1 圖像數(shù)據(jù)采集

  預(yù)處理FPGA接收到的圖像數(shù)據(jù)為接口芯片送來(lái)的圖像數(shù)據(jù),包括像素時(shí)鐘信號(hào)(PCLK)、場(chǎng)同步信號(hào)(VSYNC)、行同步信號(hào)(HSYNC)以及數(shù)據(jù)信號(hào)(R[7:0],G[7:0],B[7:0])。圖像數(shù)據(jù)的采集包括判斷圖像分辨率和提取圖像數(shù)據(jù)兩個(gè)步驟。

  當(dāng)前的計(jì)算機(jī)屏幕分辨率很多,工業(yè)VGA標(biāo)準(zhǔn)規(guī)定了各種分辨率的像素時(shí)鐘及場(chǎng)、行同步信號(hào)時(shí)序,根據(jù)相鄰場(chǎng)同步信號(hào)(VSYNC)之間行同步信號(hào)(HSYNC)數(shù)目,以及相鄰行同步信號(hào)(HSYNC)之間像素時(shí)鐘(PCLK)數(shù)目識(shí)別VGA信號(hào)分辨率。根據(jù)場(chǎng)同步信號(hào)(VSYNC)和行同步信號(hào)(HSYNC)提出圖像數(shù)據(jù)。

  1.1.2 色彩空間轉(zhuǎn)換

  VGA輸出為RGB信號(hào),而人眼對(duì)圖像的亮度分量更為敏感,所以,對(duì)圖像數(shù)據(jù)進(jìn)行色彩空間轉(zhuǎn)換,將RGB信號(hào)轉(zhuǎn)換為YUV信號(hào),轉(zhuǎn)換公式:

  

 

  系統(tǒng)實(shí)現(xiàn)時(shí)采用4:2:2采樣模式,F(xiàn)PGA采用定點(diǎn)化處理后,得到亮度分量Y 和色度分量UV。

  1.1.3 幀間檢測(cè)

  幀間檢測(cè)的核心思想是對(duì)比相鄰兩幀圖像,判斷每個(gè)像素點(diǎn)是否變化。以3×3的塊為判斷單元,如果有變化則將該像素位置和像素值都存起來(lái);如果沒(méi)有變化則不傳輸這些信息。當(dāng)?shù)玫搅艘粋€(gè)4×4的塊以后把這個(gè)16個(gè)點(diǎn)的信息作為一個(gè)整體傳給后面的模塊,然后統(tǒng)計(jì)1幀圖像總的碼流大小。如果該值低于一個(gè)設(shè)定的閾值,則認(rèn)為當(dāng)前幀沒(méi)有變化,直接傳當(dāng)前幀變化部分的像素和位置信息到后面的碼流整理模塊;如果統(tǒng)計(jì)后碼流的大小大于設(shè)定的閾值,則將當(dāng)前幀送入LX100中進(jìn)行壓縮。

  1.2 圖像壓縮模塊

  圖像壓縮為系統(tǒng)核心模塊,該壓縮引擎包括小波變換和熵編碼,算法全部由系統(tǒng)主FPGA完成。該FPGA芯片選用Xilinx公司的Virtex4[4]系列FPGA(XC4VLX160)。圖像壓縮引擎結(jié)構(gòu)如圖3。

  

 

  在系統(tǒng)算法設(shè)計(jì)中,圖像小波變換采用了基于離散小波變換的空間推舉算法(SCLA)[5]。不同于傳統(tǒng)的離散小波變換(DWT),SCLA對(duì)行與列同時(shí)進(jìn)行變換,其乘法次數(shù)是小波變換算法中最少的,而重建圖像質(zhì)量也很高,PSNR值優(yōu)于JPEG,接近JPEG2000。編碼算法采用了改進(jìn)的無(wú)鏈表零樹(shù)編碼算法(SLC),該算法綜合了多層次零樹(shù)編碼算法(SPIHT[6])和無(wú)鏈表零樹(shù)編碼(LZC[7])的特點(diǎn),在性能上優(yōu)于LZC,逼近SPIHT,而且易于硬件實(shí)現(xiàn)。

  系統(tǒng)的架構(gòu)由FPGA和兩片外部SDRAM實(shí)現(xiàn)。SDRAM用于緩存小波變換后的小波系數(shù)。FPGA完成小波變換算法SCLA和熵編碼算法SLC。SCLA算法由5個(gè)流水線小波濾波器完成,每個(gè)濾波器完成一層小波分解,而小波分解運(yùn)算需要乘法器,在FPGA芯片選型時(shí),根據(jù)小波濾波器中需要乘法器的個(gè)數(shù)選擇FPGA。在本系統(tǒng)中,5個(gè)流水的小波濾波器包括36個(gè)乘法器,對(duì)于亮度分量Y和色度分量UV兩路數(shù)據(jù)并行處理,則需要72個(gè)乘法器,而在Virtex4系列FPGA(XC4VLX160)中有96個(gè)DSP單元。由小波變換得到小波系數(shù),系統(tǒng)設(shè)計(jì)時(shí)采用2片外部SDRAM和FPGA片內(nèi)SRAM結(jié)合的方法緩存小波系數(shù)。對(duì)于亮度分量Y和色度分量UV兩路數(shù)據(jù)并行處理以提高系統(tǒng)吞吐量,SDRAM1和SDRAM2分量用來(lái)緩存Y和UV的小波系數(shù)。熵編碼算法SLC負(fù)責(zé)對(duì)小波系數(shù)編碼,該算法以一棵小波樹(shù)為基本處理單元,即當(dāng)前端小波系數(shù)構(gòu)成一棵小波樹(shù)時(shí),熵編碼模塊便啟動(dòng)編碼,從而完成一幀圖像所有小波樹(shù)的編碼。[!--empirenews.page--]1.3 碼流管理模塊

 

  對(duì)于圖像經(jīng)過(guò)FPGA壓縮后的碼流,系統(tǒng)采用ARM芯片進(jìn)行管理,該芯片為Cirrus Logic公司的工業(yè)級(jí)嵌入式處理器EP9315[8]。該處理器具有ARM920T核,最高主頻達(dá)200 MHz,并具有豐富的外圍接口,包括網(wǎng)絡(luò)、USB、音頻等。FPGA和ARM之間通信由I2C總線完成,當(dāng)FPGA完成一幀圖像壓縮后,通過(guò)FPGA的GPIO發(fā)送一個(gè)終端信號(hào)給ARM,并準(zhǔn)備好一幀碼流長(zhǎng)度等信息。ARM中斷服務(wù)程序響應(yīng)該中斷,通過(guò)I2C接口讀走碼流長(zhǎng)度,通過(guò)映射SRAM的方式從FPGA讀取壓縮碼流到ARM內(nèi)存,然后以文件的形式存儲(chǔ)碼流到本地硬盤,或者通過(guò)網(wǎng)絡(luò)發(fā)送到遠(yuǎn)端服務(wù)器。

  2 實(shí)驗(yàn)結(jié)果與性能

  2.1 算法性能驗(yàn)證

  系統(tǒng)設(shè)計(jì)初期,用軟件對(duì)算法的性能進(jìn)行了驗(yàn)證。在PC上對(duì)一組Lena等標(biāo)準(zhǔn)圖像進(jìn)行壓縮,得到不同的重建圖像,對(duì)重建圖像求解PSNR值,式(2)為PSNR計(jì)算公式。其中Mean Square Error(MSE)表示原始圖像和重建圖像對(duì)應(yīng)像素的均方誤差值。

  

 

  表1為本系統(tǒng)采用算法與JPEG及JPEG2000對(duì)標(biāo)準(zhǔn)圖像壓縮后重建圖像的PSNR比較。從表中可以看出,本系統(tǒng)采用算法遠(yuǎn)優(yōu)于JPEG,接近JPEG2000。PSNR值的比較以壓縮比(對(duì)應(yīng)表中Bitrate)為基準(zhǔn),即在相同壓縮比的情況下對(duì)比PSNR值。

  

 

  2.2 硬件實(shí)現(xiàn)和硬件壓縮

  硬件系統(tǒng)電路板采用10層板制作工藝,電路板面積為30.8 cm×16.7 cm,在100 MHz工作頻率下對(duì)系統(tǒng)測(cè)試,結(jié)果表明系統(tǒng)工作穩(wěn)定。表2為系統(tǒng)對(duì)1 600×1 200、1 280×1 024和1 024×768三種常見(jiàn)分辨率的計(jì)算機(jī)屏幕進(jìn)行的記錄,記錄的圖像源采用了各類計(jì)算機(jī)屏幕常見(jiàn)圖像,如Word文檔、PPT文件、動(dòng)態(tài)雷達(dá)圖像和一段視頻。其中,PPT的平均翻頁(yè)速度為60 s。由表2可以看出,系統(tǒng)對(duì)于Word文檔、PPT文檔等只有局部變化的圖像能夠達(dá)到非常高的壓縮比,壓縮幀率約為60幀/s。

  

 

  本文結(jié)合應(yīng)用提出圖像壓縮算,以FPGA為核心計(jì)算平臺(tái),設(shè)計(jì)了一套計(jì)算機(jī)屏幕圖像記錄系統(tǒng)。系統(tǒng)實(shí)現(xiàn)了對(duì)1 280×1 024×24 bit圖像每秒記錄27幀,對(duì)1 600×1 200×24 bit圖像每秒記錄17幀,對(duì)PPT、Word文檔等只有局部變化的屏幕圖像每秒可記錄60幀,且壓縮后重建圖像質(zhì)量?jī)?yōu)于JPEG,與JPEG2000接近。同時(shí),對(duì)于壓縮后的碼流,系統(tǒng)采用ARM以文件的方式管理,有利于碼流本地存儲(chǔ)以及通過(guò)網(wǎng)絡(luò)傳輸?shù)褥`活的應(yīng)用。另外,系統(tǒng)支持多種輸入接口,提高了硬件系統(tǒng)的靈活性,具有廣闊的應(yīng)用前景。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉