基于fpga的mjpeg圖像壓縮算法的設(shè)計與實(shí)現(xiàn)

基于fpga的mjpeg圖像壓縮算法的設(shè)計與實(shí)現(xiàn)

ID:21895797

大小:52.50 KB

頁數(shù):5頁

時間:2018-10-25

基于fpga的mjpeg圖像壓縮算法的設(shè)計與實(shí)現(xiàn)_第1頁
基于fpga的mjpeg圖像壓縮算法的設(shè)計與實(shí)現(xiàn)_第2頁
基于fpga的mjpeg圖像壓縮算法的設(shè)計與實(shí)現(xiàn)_第3頁
基于fpga的mjpeg圖像壓縮算法的設(shè)計與實(shí)現(xiàn)_第4頁
基于fpga的mjpeg圖像壓縮算法的設(shè)計與實(shí)現(xiàn)_第5頁
資源描述:

《基于fpga的mjpeg圖像壓縮算法的設(shè)計與實(shí)現(xiàn)》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。

1、基于FPGA的MJPEG圖像壓縮算法的設(shè)計與實(shí)現(xiàn):在視頻傳輸系統(tǒng)中,最大障礙是視頻數(shù)據(jù)的大數(shù)據(jù)量。故壓縮就顯得尤為必要。MJPEG是以25幀每秒傳輸?shù)腏PEG圖像。本文根據(jù)JPEG基本壓縮模式,通過前端圖像采集芯片輸出標(biāo)準(zhǔn)的4:2:2格式的圖像流,在XILINX公司的SPARTANIIE芯片下壓縮,獲得良好效果,壓縮比達(dá)到10:1?! £P(guān)鍵字:圖像壓縮;視頻傳輸;JPEG    1緒論  MJPEG是指MotionJPEG,即動態(tài)JPEG,按照25幀/秒速度使用JPEG算法壓縮視頻信號,完成動態(tài)視頻

2、的壓縮。其圖像格式是對每一幀進(jìn)行壓縮,通??蛇_(dá)到6:1的壓縮率。MJPEG圖像流的單元就是一幀一幀的JPEG畫片,因?yàn)槊繋伎瑟?dú)立地任意存取,所以MJPEG常被用于視頻編輯系統(tǒng)和視頻監(jiān)控系統(tǒng)?! ”疚难芯炕赬ILINX的FPGA芯片XC2S300E,結(jié)合前端解碼芯片SAA7111和存儲器HY57V641620完成對攝像頭采來的圖像進(jìn)行動態(tài)JPEG壓縮編碼,在開發(fā)平臺ISE6.2中完成系統(tǒng)的控制,軟核的綜合,布局布線,芯片影射及仿真?! ?系統(tǒng)的硬件總體結(jié)構(gòu)  2.1系統(tǒng)總體功能說明  本系統(tǒng)硬件由

3、攝像頭,SAA7111視頻輸入處理器,F(xiàn)PGA,單片機(jī)及SDRAM構(gòu)成。系統(tǒng)上電后,單片機(jī)通過IIC總線配置解碼芯片SAA7111,使解碼芯片輸出CCIR601標(biāo)準(zhǔn)的圖像流,該標(biāo)準(zhǔn)的每幅圖像具有有效像素720*625,即每行有720個有效像素,共625有效行,分奇數(shù)行和偶數(shù)行進(jìn)行傳輸。FPGA(XC2S300E)先將圖像存儲在SDRAM中,SDRAM采用HY57V641620,該芯片分四塊,每塊具有1M單元*16bit的容量?! ?.2硬件平臺的控制  2.2.1對SAA7111的初始配置  SAA

4、7111是Philips半導(dǎo)體公司生產(chǎn)的一種視頻輸入處理器(VIP),在視頻采集系統(tǒng)中,通常需要諸如SAA7111之類的視頻解碼器作為模擬視頻前端,而視頻解碼器的初始化主要通過IIC總線接口來完成。本文提出了用虛擬總線技術(shù)來模擬實(shí)現(xiàn)IIC總線功能,利用單片機(jī)的普通I/O口模擬IIC總線接口設(shè)計,從而實(shí)現(xiàn)單片機(jī)對SAA7111的初始化與控制的新方法?! ?.2.2控制SDRAM的讀寫  在基于FPGA的圖象采集顯示系統(tǒng)中,常常需要用到大容量、高速度的存儲器。本設(shè)計采用HY57V641620,分為控制,

5、地址,數(shù)據(jù)三類信號??刂菩盘栔饕校篊S(片選信號),CKE(時鐘使能信號),DQM(輸入、輸出使能信號),CAS、RAS、控制。  3MJPEG圖像壓縮的各模塊設(shè)計  3.1DCT變換的描述  二維DCT變換是先經(jīng)過一維列DCT變換后經(jīng)過一維行DCT變換,在進(jìn)行了一維列DCT變換后,再進(jìn)行一維行變換,就涉及到了數(shù)據(jù)的重新抽樣,如一維列變換后,再進(jìn)行一組DCT行變換的數(shù)據(jù)順序是1,9,17,25,33,41,49,57;這樣就涉及到了多過去或是對未來數(shù)據(jù)的直接調(diào)用,為了避免這個在流水線上很難解決的問

6、題,采用乒乓操作,采用兩塊由FPGA芯片自帶的嵌入的BRAM,當(dāng)一塊進(jìn)行存儲的時候,另一塊就進(jìn)行讀取,進(jìn)行行DCT變換。當(dāng)存儲完或讀取完(二者所需時間一致)后再交換總線,即就將8*8塊中所有的像素值進(jìn)行一維DCT列變換后存儲起來,等所有數(shù)據(jù)都存儲完成后再進(jìn)行抽樣,進(jìn)行一維DCT行變換,為了便于流水線操作,如此就保證了流水線操作?! ?.2量化及Z排序的描述  整個系統(tǒng)功能塊都在DCT變換后準(zhǔn)備好信號Q_rdy_in的使能下進(jìn)行,在Q_rdy_in使能情況下,64計數(shù)器在時鐘的作用下計數(shù),計數(shù)值輸出作

7、為ROM的地址,其中ROM就是上述中提到的存有變換后系數(shù)的BRAM塊,根據(jù)地址,ROM輸出對應(yīng)的系數(shù)值。其中亮色標(biāo)志是用來標(biāo)注是采用亮度量化存儲器還是色度量化存儲器。輸入的像素取其絕對值,同系數(shù)進(jìn)行相乘,乘后再除以256,賦上符號,就得出最終的量化輸出結(jié)果?! ?.3游程編碼  整個功能過程采用一個64位計數(shù)器作為基準(zhǔn)進(jìn)行控制。當(dāng)64計數(shù)器為0時,輸出直流DC,因?yàn)镈C差分過程在前一模塊已經(jīng)完成,所以這里只需直接輸出即可。當(dāng)64計數(shù)器為63的時候,就對輸入的AC系數(shù)進(jìn)行判斷,若AC為0,則直接輸出0

8、,用來表示EOB,即塊結(jié)束標(biāo)志。當(dāng)64計數(shù)器不為0的時候,若AC系數(shù)為0,則零游程計數(shù)器加1,不輸出。若AC系數(shù)不為0,則輸出零游程計數(shù)器中的值,并輸出AC系數(shù)。同時使零游程計數(shù)器清零?! ?.4huffman編碼  對于DC系數(shù),查表得出表示尾碼位數(shù)的huffman碼字后,再將其與表示DC的二進(jìn)制碼相連,即得出差分DC的huffman編碼,同時將DC的huffman碼字的碼長進(jìn)行記錄AC的huffman編碼較復(fù)雜一些,取出AC的用于表示AC尾碼的有效位數(shù)SSSS后,

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。