《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于DSP Builder的JPEG靜態(tài)圖像壓縮算法的實(shí)現(xiàn)
基于DSP Builder的JPEG靜態(tài)圖像壓縮算法的實(shí)現(xiàn)
來(lái)源:電子技術(shù)應(yīng)用2011年第6期
趙擎天,尉廣軍,張自賓
軍械工程學(xué)院 導(dǎo)彈工程系,河北 石家莊050003
摘要: 利用Altera公司提供的數(shù)字信號(hào)處理開(kāi)發(fā)工具DSP Builder和現(xiàn)代DSP技術(shù),在Matlab/Simulink環(huán)境中建立了JPEG算法模型,并進(jìn)行了仿真驗(yàn)證,最后將編譯代碼下載到硬件上進(jìn)行了在線調(diào)試。
關(guān)鍵詞: SoPC DSPbuilder JPEG 圖像壓縮 FPGA
中圖分類號(hào): TN919
文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2011)06-0035-03
The implementation of JPEG static picture compression based on DSP Builder
Zhao Qingtian,Yu Guangjun,Zhang Zibi
Deptartment of Missile Engineering,Ordnance Engineering College,Shijiazhuang 050003,China
Abstract: It has been introduced in this paper that a JPEG algorithm model is created in the environment of Matlab/Simulink with the help of DSP Bulider, a digital signal processing development tool provided by Altera Corporation, and modern DSP technology. Then a simulation verification has been performed, and finally the code is compiled and downloaded to the hardware for the purpose of on-line debugging.
Key words : DSP Builder;JPEG;image compression;FPGA


 隨著數(shù)字信號(hào)處理技術(shù)在應(yīng)用領(lǐng)域的迅速發(fā)展,以DSP處理器(如TI的TMS320系列)為應(yīng)用系統(tǒng)核心器件的傳統(tǒng)DSP技術(shù),由于其硬件結(jié)構(gòu)的不可變性和固定的數(shù)據(jù)總線寬度,很難滿足用戶對(duì)DSP系統(tǒng)可重配置性或可定制性的要求。而以大容量、高速度的FPGA為核心器件的現(xiàn)代DSP技術(shù)的出現(xiàn)成功解決了以上問(wèn)題。FPGA內(nèi)嵌有可配置的高速RAM、PLL以及硬件乘法累加器等DSP模塊。因此,用FPGA實(shí)現(xiàn)數(shù)字信號(hào)處理可以很好地解決并行性和速度問(wèn)題,而且其靈活的可配置特性,使得以FPGA為核心器件的DSP系統(tǒng)易于修改、測(cè)試及硬件升級(jí)。
    本文利用Altera公司推出的一個(gè)面向DSP開(kāi)發(fā)的系統(tǒng)級(jí)設(shè)計(jì)工具DSP Builder,在深入研究JPEG算法原理的基礎(chǔ)上,設(shè)計(jì)了JPEG算法模型,并在Matalab/Simulink環(huán)境下進(jìn)行了算法級(jí)仿真;最后將算法編譯下載到FPGA硬件上,利用DSP Builder的HIL(Hardware In Loop)功能,由Simulink通過(guò)下載電纜向硬件輸入測(cè)試數(shù)據(jù),然后將測(cè)試結(jié)果送入Simulink中顯示。采用這種方法實(shí)現(xiàn)了硬件級(jí)的仿真驗(yàn)證。
1 DSP Builder介紹
    DSP Builder開(kāi)發(fā)工具是Altera公司提供的數(shù)字信號(hào)處理平臺(tái),它是一個(gè)系統(tǒng)級(jí)(或算法級(jí))設(shè)計(jì)工具,架構(gòu)在多個(gè)軟件工具之上,并把系統(tǒng)級(jí)和RTL級(jí)兩個(gè)設(shè)計(jì)領(lǐng)域的設(shè)計(jì)工具連接起來(lái),最大程度地發(fā)揮了兩種工具的優(yōu)勢(shì)。DSP Builder依賴于MathWorks公司的數(shù)學(xué)分析工具M(jìn)atlab/Simulink,以Simulink的Blockset出現(xiàn),可以在Simulink中進(jìn)行圖形化設(shè)計(jì)和仿真,同時(shí)通過(guò)SignalCompiler把Matlab/Simulink的設(shè)計(jì)文件(.mdl)轉(zhuǎn)成相應(yīng)的硬件描述語(yǔ)言VHDL設(shè)計(jì)文件(.vhd),以及用于控制綜合與編譯的TCL腳本。而對(duì)后者的處理可以由FPGA/CPLD開(kāi)發(fā)工具Quartus II來(lái)完成。
    設(shè)計(jì)人員能夠同時(shí)進(jìn)行多個(gè)HDL模型或者QuartusII軟件設(shè)計(jì)工程的設(shè)計(jì),為每一個(gè)模塊生成一個(gè)獨(dú)立的仿真模型,并且能夠在同一設(shè)計(jì)環(huán)境中,以標(biāo)準(zhǔn)Simulink/DSP Builder模型來(lái)仿真HDL模塊。此外,該工具可充分利用和重復(fù)使用現(xiàn)有設(shè)計(jì),從而大大提高產(chǎn)品開(kāi)發(fā)速度。在仿真軟件方面,除了可以利用Simulink的仿真環(huán)境,DSP Builder還提供了與Modelsim的接口,充分利用Modelsim仿真的優(yōu)勢(shì)。以前DSP開(kāi)發(fā)者只能直接使用VHDL或VerilogHDL語(yǔ)言進(jìn)行FPGA的DSP系統(tǒng)設(shè)計(jì),難度比較大。現(xiàn)在利用基于FPGA的DSP開(kāi)發(fā)工具DSP Builder以及完整的軟件開(kāi)發(fā)平臺(tái),可以使設(shè)計(jì)者遵循一條類似于軟件設(shè)計(jì)流程的開(kāi)發(fā)方法進(jìn)行FPGA的DSP設(shè)計(jì),設(shè)計(jì)效率大為提高。基于DSP Builder的系統(tǒng)級(jí)開(kāi)發(fā)流程如圖1所示。

。基于DSP Builder的系統(tǒng)級(jí)開(kāi)發(fā)流程

2 JPEG算法原理

    JPEG專家組開(kāi)發(fā)了兩種基本的壓縮算法,一種是以離散余弦變換DCT(Discrete Cosine Transform)為基礎(chǔ)的有損壓縮算法;另一種是以預(yù)測(cè)技術(shù)為基礎(chǔ)的無(wú)損壓縮算法。使用有損壓縮算法時(shí),在壓縮比為25:1的情況下,壓縮后還原得到的圖像與原始圖像相比較,非圖像專家難于找出它們之間的區(qū)別,因此得到了廣泛的應(yīng)用。例如,在VCD和DVD-Video電視圖像壓縮技術(shù) 中,就使用JPEG的有損壓縮算法來(lái)取消空間方向上的冗余數(shù)據(jù)。
    JPEG壓縮是有損壓縮,它利用了人眼視角系統(tǒng)的特性,使用量化和無(wú)損壓縮編碼相結(jié)合來(lái)去掉視角的冗余信息和數(shù)據(jù)本身的冗余信息。JPEG算法框圖如圖2所示。

JPEG算法框圖

 

 

    壓縮編碼大致分成三個(gè)步驟:
    (1)使用正向離散余弦變換FDCT把空間域表示的圖變換成頻率域表示的圖。
    (2)使用加權(quán)函數(shù)對(duì)DCT系數(shù)進(jìn)行量化,這個(gè)加權(quán)函數(shù)對(duì)于人的視覺(jué)系統(tǒng)是最佳的。
    (3)使用霍夫曼可變字長(zhǎng)編碼器對(duì)量化系數(shù)進(jìn)行編碼。譯碼(或者叫解壓縮)過(guò)程與壓縮編碼過(guò)程相反。
3 JPEG算法模型的實(shí)現(xiàn)
    在DSP Builder下進(jìn)行系統(tǒng)搭建。DSP Builder平臺(tái)提供了加法器、乘法器以及數(shù)字信號(hào)處理涉及到的眾多模塊,對(duì)這些模塊可以進(jìn)行可視化的參數(shù)編輯。本設(shè)計(jì)從Matlab的Workspace中導(dǎo)入需要壓縮的圖像,然后通過(guò)用DSP Builder構(gòu)建的JPEG壓縮算法壓縮編解碼,最后在Matlab中顯示重建的圖像。JPEG靜態(tài)圖像壓縮算法壓縮的對(duì)象是YCbCr格式的,所以在進(jìn)行圖像壓縮前要進(jìn)行預(yù)處理。通過(guò)Matlab中的Color Space Conversion將RGB格式的圖像轉(zhuǎn)換成YcbCr格式。
    待壓縮的圖像數(shù)據(jù)首先要進(jìn)行DCT變換,受FPGA硬件資源的限制,可以先進(jìn)行一維行變換,將得到的數(shù)據(jù)按列存儲(chǔ)到RAM中,等到數(shù)據(jù)全部輸入到RAM中,再對(duì)RAM中的數(shù)據(jù)進(jìn)行一維的DCT行變換。然后重復(fù)利用一維的DCT模塊,以節(jié)省硬件資源。
    DCT變換后的頻率系數(shù)要進(jìn)行量化。JPEG算法使用均勻量化器進(jìn)行量化,量化步距按照系數(shù)所在的位置和每種顏色分量的色調(diào)值確定。因?yàn)槿搜蹖?duì)亮度信號(hào)與對(duì)色差信號(hào)敏感度不同,因此使用了兩種量化表。設(shè)計(jì)實(shí)現(xiàn)方法為:將DCT系數(shù)除以量化步長(zhǎng)取整數(shù)。為了保證DCT系數(shù)中低頻分量先出現(xiàn),高頻分量后出現(xiàn),量化后的系數(shù)要重新編排,JPEG算法采用Z字型編碼,增加了連續(xù)“0”系數(shù)的個(gè)數(shù),即“0”的游程長(zhǎng)度,以達(dá)到用更少的數(shù)據(jù)表示更多信息的目的,從而優(yōu)化編碼。量化的目的是減小非“0”系數(shù)的幅度以及增加“0”值系數(shù)的數(shù)目。
    JPEG算法使用了差分脈沖調(diào)制編碼(DPCM)技術(shù),對(duì)相鄰圖像塊之間量化DC系數(shù)的差值(Delta)進(jìn)行編碼。量化交流AC系數(shù)的特點(diǎn)是1×64矢量中包含許多“0”系數(shù),并且許多“0”是連續(xù)的,因此使用非常簡(jiǎn)單和直觀的游程長(zhǎng)度編碼(RLE)對(duì)它們進(jìn)行編碼。使用熵編碼還可以對(duì)DPCM編碼后的直流DC系數(shù)和RLE編碼后的交流AC系數(shù)作進(jìn)一步壓縮。在JPEG有損壓縮算法中,通過(guò)使用霍夫曼編碼器來(lái)減少熵,原因是使用霍夫曼編碼器可以用很簡(jiǎn)單的查表(Lookup Table)方法進(jìn)行編碼。壓縮數(shù)據(jù)符號(hào)時(shí),霍夫曼編碼器對(duì)出現(xiàn)頻度比較高的符號(hào)分配比較短的代碼,而對(duì)出現(xiàn)頻度較低的符號(hào)分配比較長(zhǎng)的代碼。這種可變長(zhǎng)度的霍夫曼碼表可以事先定義。
    JPEG編碼的最后一個(gè)步驟是把各種標(biāo)記代碼和編碼后的圖像數(shù)據(jù)組成一幀一幀的數(shù)據(jù),以便于傳輸、存儲(chǔ)和譯碼器譯碼,這種數(shù)據(jù)通常稱為JPEG位數(shù)據(jù)流。
4 模型仿真分析
    設(shè)計(jì)采用DSP Builder的HIL進(jìn)行仿真驗(yàn)證。HIL把設(shè)計(jì)包裹在一套接口中間進(jìn)行編譯,然后下載到板子的FPGA中。首先將模型文件(.mdl)用SignalCompiler編譯生成Quartus II的工程文件(.qpf);然后將工程文件加載到HIL模塊中,在HIL模塊中進(jìn)行時(shí)鐘、復(fù)位等信號(hào)設(shè)置,選擇FPGA器件型號(hào);最后編譯文件并將配置下載到FPGA中。Simulink通過(guò)下載電纜把測(cè)試數(shù)據(jù)不斷輸入,然后在輸出端不斷獲得硬件運(yùn)行的結(jié)果。利用HIL在硬件上進(jìn)行仿真,可以加快仿真速度,同時(shí)可對(duì)算法、時(shí)序和引腳配置進(jìn)行檢測(cè)。由于FPGA可以無(wú)限次燒錄,所以利用HIL進(jìn)行仿真非常方便。HIL仿真模塊如圖3所示。

    利用HIL進(jìn)行圖像的壓縮和解壓仿真驗(yàn)證,觀察經(jīng)過(guò)壓縮和解壓后的圖像可以發(fā)現(xiàn),該仿真模型成功實(shí)現(xiàn)了JPEG靜態(tài)圖像壓縮的編解碼算法,解壓后的圖像效果很好。把SignalCompiler編譯生成Quartus II的工程文件(.qpf)下載到FPGA芯片中,觀察到使用的邏輯單元塊LE(Logic Elements)數(shù)量為1 224個(gè),而用VHDL語(yǔ)言編寫JPEG算法下載到FPGA芯片中將占用1 483個(gè)單元塊。表1表明用DSP Builder進(jìn)行系統(tǒng)級(jí)的算法設(shè)計(jì)與用傳統(tǒng)的VHDL語(yǔ)言進(jìn)行設(shè)計(jì)更節(jié)省硬件資源。

    應(yīng)用現(xiàn)代DSP技術(shù),通過(guò)Altera公司提供的數(shù)字信號(hào)處理開(kāi)發(fā)工具DSP Builder搭建了JPEG靜態(tài)圖像壓縮編解碼模型,并用HIL進(jìn)行了仿真驗(yàn)證。實(shí)驗(yàn)結(jié)果表明,設(shè)計(jì)的JPEG模型能夠成功實(shí)現(xiàn)靜態(tài)圖像的壓縮編解碼,且重建的圖像效果很好。應(yīng)用DSP Builder進(jìn)行系統(tǒng)級(jí)的算法設(shè)計(jì)相比用VHDL語(yǔ)言設(shè)計(jì)更節(jié)省硬件資源。
參考文獻(xiàn)
[1] 潘松.現(xiàn)代DSP技術(shù)[M].西安:西安電子科技大學(xué)出版社,2003.
[2] 姚俊,馬松輝.Simulink建模與仿真[M].西安:西安電子科技大學(xué)出版社,2002.
[3] 楊守良.Matlab/simulink在FPGA設(shè)計(jì)中的應(yīng)用[J].微計(jì)算機(jī)信息,2005,21(8-2):98-99.
[4] 張艷.基于FPGA的JPEG解碼算法的研究與實(shí)現(xiàn)[D].南京:南京理工大學(xué),2009.
[5] 張?zhí)贘PEG國(guó)際標(biāo)準(zhǔn)的圖像壓縮方法的研究[J].重慶大學(xué)學(xué)報(bào),1994,9:48-53.
[6] 汪宇飛.JPEG高速編碼芯片的設(shè)計(jì)及其性能優(yōu)化[D].西安:西北工業(yè)大學(xué)碩士論文,2006.
[7] 洪志良.JPEG靜止圖像壓縮解壓縮標(biāo)準(zhǔn)的硬件實(shí)現(xiàn)及其改進(jìn)算法的研究[D].上海:復(fù)旦大學(xué)博士論文,2002.
[8] 崔平,汪渤,丁露.基于DSPBuilder的電視導(dǎo)引頭跟蹤控制系統(tǒng)設(shè)計(jì)[J].微計(jì)算機(jī)信息,2005,21(12-2):76-78.
[9] 呈永輝.基于DSPbuilder技術(shù)的軌道信號(hào)檢測(cè)的研究與實(shí)現(xiàn)[D].成都:成都理工大學(xué),2008.
[10] 張淼,伏云昌.基于DSP Builder的14防FIR濾波器的設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2007,30(21):185-186.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲精品123区| 亚洲国产精品尤物yw在线观看| 国产欧美日本在线| 欧美日韩精品在线观看| 欧美高清日韩| 欧美成人免费大片| 免费中文日韩| 男女激情久久| 欧美成人69av| 欧美成人免费小视频| 美国十次了思思久久精品导航| 久久久成人精品| 久久精品电影| 久久久久九九九| 久久久综合激的五月天| 久久久人成影片一区二区三区观看| 久久国产一区| 久久久久国内| 卡通动漫国产精品| 久久这里只精品最新地址| 亚洲高清在线精品| 亚洲国产美女精品久久久久∴| 久久精品视频免费播放| 久久激情五月婷婷| 亚洲高清在线观看| 日韩视频免费观看高清在线视频| 99国产欧美久久久精品| 一区二区国产精品| 亚洲欧美中文另类| 久久av在线看| 久久躁日日躁aaaaxxxx| 美日韩精品视频免费看| 欧美激情精品久久久久久免费印度 | 国语自产精品视频在线看| 亚洲精品乱码久久久久久蜜桃麻豆| 在线观看一区| 亚洲日本中文字幕区| 亚洲最新视频在线| 亚洲欧美国产一区二区三区| 久久国产精品久久久久久电车| 最新国产成人在线观看| 在线视频欧美日韩精品| 性欧美暴力猛交另类hd| 久久夜色精品一区| 欧美日韩色综合| 国产亚洲视频在线观看| 亚洲国产精品一区二区三区| 亚洲最新在线视频| 欧美在线观看视频一区二区| 亚洲美女色禁图| 欧美一区在线视频| 欧美韩日一区二区| 国产精品观看| 伊人久久成人| 在线综合亚洲| 亚洲国产乱码最新视频| 亚洲在线一区二区| 免播放器亚洲一区| 国产精品国产| 在线观看视频一区| 亚洲一区二区高清| 亚洲黄色性网站| 亚洲欧美日韩在线| 欧美aⅴ一区二区三区视频| 欧美视频在线观看免费| 好吊一区二区三区| 中文av字幕一区| 亚洲黄色av| 香蕉成人啪国产精品视频综合网| 男女精品视频| 国产欧美日韩精品在线| 亚洲日本在线视频观看| 欧美一区二区三区在线观看视频| 在线综合+亚洲+欧美中文字幕| 久久久国产成人精品| 国产精品av一区二区| 有坂深雪在线一区| 午夜精品剧场| 久久久久久噜噜噜久久久精品| 国产亚洲一区二区在线观看| 亚洲片在线观看| 欧美中文字幕在线播放| 亚洲一区999| 欧美大片第1页| 国产日韩一区二区三区在线| 一区二区三区波多野结衣在线观看| 久久精品国产亚洲一区二区三区| 亚洲专区一二三| 欧美激情综合五月色丁香小说| 国产在线欧美| 午夜国产精品影院在线观看 | 欧美三级视频在线播放| 亚洲国产精品热久久| 欧美一区午夜精品| 亚洲欧美日韩一区| 欧美日韩一区在线播放| 在线观看成人一级片| 欧美一级播放| 欧美一区二区三区男人的天堂| 欧美午夜免费影院| 亚洲精品在线免费观看视频| 亚洲风情亚aⅴ在线发布| 欧美在线播放一区| 国产精品老牛| 亚洲视频在线观看网站| 中文在线不卡视频| 欧美风情在线观看| 亚洲高清色综合| 亚洲国产你懂的| 久久这里只有| 一区二区视频欧美| 亚洲第一级黄色片| 久久久亚洲国产天美传媒修理工| 国产欧美日韩另类一区| 亚洲免费视频成人| 欧美亚洲免费| 国产欧美精品一区二区三区介绍| 亚洲无限av看| 午夜天堂精品久久久久| 国产精品露脸自拍| 亚洲在线成人| 欧美在线视屏| 国产日韩欧美在线播放不卡| 欧美一区二区在线免费观看| 久久精品免费电影| 狠狠色丁香久久综合频道| 久久国产精品99国产| 久久躁狠狠躁夜夜爽| 在线观看不卡| 亚洲伦伦在线| 欧美日韩一区二区在线观看| 99re8这里有精品热视频免费| 亚洲午夜激情免费视频| 国产精品麻豆成人av电影艾秋| 亚洲欧美日韩精品久久| 欧美中文字幕不卡| 精品成人国产| 日韩视频第一页| 国产精品国产三级国产aⅴ浪潮| 国产精品99久久久久久www| 欧美一区二区三区在线免费观看| 国产伦精品一区二区三区| 欧美一区二区三区四区在线观看地址| 久久久久久夜| 亚洲激情小视频| 亚洲永久在线| 国产有码一区二区| 亚洲精品国精品久久99热| 欧美视频导航| 亚洲欧美日韩精品久久亚洲区| 久久久久国产精品一区三寸| 亚洲福利国产| 亚洲少妇自拍| 国产偷自视频区视频一区二区| 亚洲国产美女精品久久久久∴| 欧美日韩国产精品一卡| 亚洲夜晚福利在线观看| 久久久久久久尹人综合网亚洲 | 欧美日韩中文精品| 亚洲欧美日韩另类| 麻豆精品精华液| av成人免费在线观看| 欧美影院午夜播放| 亚洲国产成人精品久久久国产成人一区 | 亚洲国产精品成人一区二区| 99国产精品自拍| 国产精品亚洲一区二区三区在线| 亚洲高清一区二| 欧美性猛交99久久久久99按摩| 欧美在线视频观看免费网站| 欧美日本一区二区三区| 亚洲专区一区二区三区| 欧美高清在线一区| 亚洲欧美日韩视频二区| 欧美高清在线播放| 亚洲欧美日本日韩| 欧美精品在欧美一区二区少妇| 午夜精品久久久久久| 欧美美女视频| 久久精品99国产精品| 欧美日韩免费一区二区三区视频| 午夜精品在线看| 欧美精品在线免费观看| 性欧美大战久久久久久久久| 欧美日韩伦理在线| 久久精品官网| 国产精品网站在线观看| 亚洲老司机av| 国内外成人免费激情在线视频| 在线一区二区日韩| 国产一区在线观看视频| 亚洲欧美精品在线观看| 亚洲激情中文1区| 久久久久久高潮国产精品视| 一区二区三区久久网| 欧美88av| 亚洲成在人线av| 国产欧美精品日韩| 亚洲免费视频观看| 亚洲美女黄色|