《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于DSP的數(shù)字圖像采集、壓縮系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
基于DSP的數(shù)字圖像采集、壓縮系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
李世軍,黃 鋒,屈喜龍,郭照南
摘要: 一種基于高速數(shù)字信號(hào)處理器TMS320VC5410DSP和CPLD的圖像采集、壓縮系統(tǒng),分析了系統(tǒng)設(shè)計(jì)時(shí)的各個(gè)關(guān)鍵技術(shù)環(huán)節(jié),介紹了JPEG圖像編碼算法的DSP的實(shí)現(xiàn),討論了圖像編碼中DCT變換的實(shí)現(xiàn)和優(yōu)化,利用DSP的乘法累加指令和雙字加/減法指令快速實(shí)現(xiàn)DCT。
關(guān)鍵詞: DSP JPEG DCT變換
Abstract:
Key words :

  摘 要: 一種基于高速數(shù)字信號(hào)處理器TMS320VC5410DSP和CPLD的圖像采集、壓縮系統(tǒng),分析了系統(tǒng)設(shè)計(jì)時(shí)的各個(gè)關(guān)鍵技術(shù)環(huán)節(jié),介紹了JPEG圖像編碼算法的DSP的實(shí)現(xiàn),討論了圖像編碼中DCT變換的實(shí)現(xiàn)和優(yōu)化,利用DSP的乘法累加指令和雙字加/減法指令快速實(shí)現(xiàn)DCT。
 關(guān)鍵詞: DSP;JPEG;DCT變換

 

  隨著計(jì)算機(jī)與圖像處理技術(shù)的日益發(fā)展,研究圖像采集、處理的實(shí)時(shí)實(shí)現(xiàn)具有重要的現(xiàn)實(shí)意義。而視頻圖像信號(hào)數(shù)據(jù)量較大、信號(hào)較為復(fù)雜,這就要求視頻圖像信號(hào)處理系統(tǒng)具有實(shí)時(shí)采集、大容量存儲(chǔ)和實(shí)時(shí)處理的特點(diǎn)。傳統(tǒng)的數(shù)字圖像處理系統(tǒng)多采用計(jì)算機(jī)加軟件、單片機(jī)或?qū)S肈SP等來實(shí)現(xiàn)。這些方法有的處理速度較慢,無法滿足現(xiàn)代圖像處理系統(tǒng)的實(shí)時(shí)性要求;有的專業(yè)性太強(qiáng),應(yīng)用受限制。基于以上各方面的考慮,本文提出一種基于DSP和CPLD的視頻圖像采集、壓縮系統(tǒng)。JPEG算法是一種數(shù)字圖像壓縮編碼算法,具有壓縮比例高、失真小的特點(diǎn),并已被確定為國(guó)際標(biāo)準(zhǔn)[1]。該標(biāo)準(zhǔn)被廣泛應(yīng)用于數(shù)碼相機(jī)、監(jiān)視系統(tǒng)、手機(jī)、可視電話等諸多方面。而實(shí)現(xiàn)JPEG算法一般有3種, 即純軟件實(shí)現(xiàn)法、專用集成電路實(shí)現(xiàn)法及基于DSP的軟硬件綜合實(shí)現(xiàn)法。純軟件實(shí)現(xiàn)法一般依賴PC機(jī)的支持,不適應(yīng)嵌入式應(yīng)用需要;專用集成電路實(shí)現(xiàn)法實(shí)時(shí)性好,但靈活性以及可擴(kuò)展性差;用DSP編程實(shí)現(xiàn)JPEG,其算法靈活,滿足嵌入式應(yīng)用需要,具有較好的交互能力,并且具有很好的可擴(kuò)展性、可升級(jí)性和易維護(hù)性。
1 系統(tǒng)硬件設(shè)計(jì)
選用TMS320VC5410DSP芯片作為系統(tǒng)主處理器,CPLD為協(xié)處理器。該嵌入式系統(tǒng)能完成視頻圖像信號(hào)的采集、處理、壓縮編碼、存儲(chǔ)等一系列功能。構(gòu)建的圖像處理系統(tǒng)由主處理器TMS320C5410DSP、1片256 K×16 bit Flash、2片4 M×16 bit SDRAM、外部存儲(chǔ)器接口EMIF(External Memory Interface)和其他通用外設(shè)接口,如RS-232、音頻接口等組成。另外采集模塊主要由視頻解碼A/D芯片、采集和顯示時(shí)序控制芯片IspLSI2064CPLD等[2]組成。系統(tǒng)結(jié)構(gòu)原理如圖1所示。

 


(1)CCD攝像頭用來采集模擬視頻圖像數(shù)據(jù)。
(2)視頻解碼A/D芯片Philips SAA7113將模擬視頻電視信號(hào)(本系統(tǒng)PAL制)數(shù)字化。輸出為符合CCIR.601標(biāo)準(zhǔn)的數(shù)字視頻碼流。
(3)FIFO AL422B作為A/D與VC5416DSP之間的數(shù)據(jù)緩沖,使A/D的轉(zhuǎn)換速度與DSP讀取A/D數(shù)據(jù)的速度匹配。
(4)TMS320C5410 DSP為主處理器,實(shí)現(xiàn)對(duì)視頻數(shù)據(jù)的壓縮編碼處理。在存儲(chǔ)FIFO、存儲(chǔ)SDRAM和壓縮碼流輸出SDRAM采用DMA方式進(jìn)行數(shù)據(jù)傳輸,可以提高數(shù)據(jù)傳輸?shù)乃俾省?br /> (5)CPLD采用Laitiice公司的IspLSI2064VE為系統(tǒng)協(xié)處理器,作為視頻A/D對(duì)FIFO進(jìn)行寫操作,DSP對(duì)FIFO進(jìn)行讀操作的時(shí)序控制。
(6)Flash 采用芯片256 K×16 bit的AM29LV400B,用于DSP上電或復(fù)位后的程序加載。
(7)SDRAM作為DSP的片外擴(kuò)展存儲(chǔ)器,用于存儲(chǔ)A/D的圖像數(shù)據(jù)、中間過程的部分?jǐn)?shù)據(jù)以及壓縮后的圖像數(shù)據(jù)。選用了4片ISSI公司的4 M×16 bit SDRAM芯片IS42S16400,構(gòu)成了一個(gè)8 M×32 bit的外部存儲(chǔ)器。
1.1 圖像采集與存儲(chǔ)關(guān)鍵問題與解訣方法
本設(shè)計(jì)中解碼CCD攝像頭的模擬視頻信號(hào)采用專用的模擬視頻信號(hào)解碼器SAA71113。SAA71113視頻解碼器是雙通道模擬預(yù)處理電路、自動(dòng)鉗位和增益控制電路、時(shí)鐘產(chǎn)生電路、數(shù)字多標(biāo)準(zhǔn)解碼器、亮度/對(duì)比度/飽和度控制電路、彩色空間矩陣的組合,是一款功能完善的視頻處理器。SAA71113只需要單一的3.3 V電源供電,與DSP的I/O電壓一致。SAA71113A接收CVBS(復(fù)合視頻)或S-video模擬視頻輸入,可以自動(dòng)將PAL、SECAM、NTSC模式的彩色視頻信號(hào)解碼為CCIR-60l/656兼容的彩色數(shù)字分量值,器件功能通過I2C接口控制。這樣圖像采集過程可以全部在后臺(tái)完成,基本上不需要CPU的干預(yù),可以節(jié)約大量的CPU時(shí)間。但是這樣設(shè)計(jì)有一個(gè)難點(diǎn):由模擬視頻信號(hào)解碼得出的數(shù)字視頻信號(hào)數(shù)據(jù)量非常大,而且由于是實(shí)時(shí)視頻信號(hào),所以數(shù)據(jù)輸出速率也非常高,但是DSP外部存儲(chǔ)器接口的讀出速率卻比較慢。為了解決這個(gè)問題,本設(shè)計(jì)采取高速FIFO對(duì)數(shù)據(jù)進(jìn)行暫存以緩解速度上的差異,即采用FIFO來暫存10行圖像數(shù)據(jù),視頻解碼器直接向FIFO中寫入圖像數(shù)據(jù)。當(dāng)FIFO中寫入了10行圖像數(shù)據(jù)后,由CPLD向DSP發(fā)出中斷INT0請(qǐng)求;同時(shí),DSP接到中斷請(qǐng)求后,啟動(dòng)DMA方式將10行圖像數(shù)據(jù)從FIFO中讀入到其外部SDRAM中存放。這樣在采集的同時(shí),DSP就可以讀取已采集的10行數(shù)據(jù),而不必等待一幀圖像數(shù)據(jù)采集完成,從而提高了DSP的處理效率。CPLD主要控制解碼器向FIFO中寫入數(shù)據(jù)以及DSP從FIFO中讀出數(shù)據(jù)。系統(tǒng)可以采集到一幀圖像的尺寸為640(點(diǎn)/行)×480(行),從SA71113輸出的是4:2:2的YcrCb數(shù)據(jù)格式,一個(gè)像素用2個(gè)字節(jié)表示,一個(gè)字節(jié)表示Y,另一個(gè)字節(jié)為Cb和Cr,總的數(shù)據(jù)量為640×480×2=600 KB。對(duì)于亮度信號(hào),每個(gè)像素Y占1B,一行共640 B,用640個(gè)存儲(chǔ)單元存儲(chǔ)一行的Y數(shù)據(jù)。對(duì)于色度信號(hào)Cb,一行共640點(diǎn),每?jī)蓚€(gè)像素共用一個(gè)色度信號(hào)Cb,占1 B,共320 B,用320個(gè)字節(jié)單元存放一行的數(shù)據(jù)。對(duì)于色度信號(hào)Cr,存儲(chǔ)格式與Cb一樣。這樣一幀圖像數(shù)據(jù)需要的的緩沖區(qū)大小為:640×480+320×480×2=600 KB。因此系統(tǒng)中對(duì)此擴(kuò)展了8 M×32 bit的SDRAM,而且用了具有3 Mbit緩沖的FIFO[3,5]。
2 JPEG壓縮編碼流程與優(yōu)化實(shí)現(xiàn)
JPEG壓縮編碼主要由圖像數(shù)據(jù)分塊、DCT變換、量化、Huffman編碼4個(gè)步驟[4]。先將原始YcbCr空間的二維圖像分成8×8的數(shù)據(jù)塊,然后將各數(shù)據(jù)塊按從左到右、從上到下的順序分別進(jìn)行DCT變換、量化、“之”字型(Zig-Zag)掃描和Huffman編碼(量化和Huffman編碼分別需要量化表和Huffman表的支持),其中DCT變換是JPEG算法的關(guān)鍵部分。
 DCT變換的快慢決定了整個(gè)JPEG算法的速度。8×8數(shù)據(jù)塊的DCT計(jì)算有直接計(jì)算法和行列法兩大類,但直接計(jì)算法較復(fù)雜,占用更多的DSP資源,因此一般使用行列法,將8×8數(shù)據(jù)塊的DCT計(jì)算轉(zhuǎn)換為16次一維8點(diǎn)DCT計(jì)算,只要提高一維DCT的運(yùn)算速度就可以提高二維DCT的運(yùn)算速度。本文應(yīng)用一種基于DSP乘法累加單元的DCT快速算法,DSP都具有乘法累加/減單元,能在單周期內(nèi)完成1次乘法運(yùn)算和1次累加運(yùn)算[4]。VC5410DSP具有多條乘法累加指令,其中2條雙操作數(shù)乘法累加指令如表1所列。

 


表1中2條指令都能在單周期內(nèi)完成讀出2個(gè)操作數(shù)、2個(gè)操作數(shù)相乘及乘法運(yùn)算結(jié)果,與源累加器相加后送給目的累加器不同的是,第二條指令能將加法結(jié)果四舍五入后再送給目的累加器,可見這2條指令的功能非常強(qiáng)大。引入DCT計(jì)算,將大大簡(jiǎn)化程序的復(fù)雜度,并減少DCT的時(shí)間。
(1)二維DCT正變換
二維DCT正變換的公式如下(8×8):
 

  將以上二維變換分解為一系列一維變換(行,列)進(jìn)行計(jì)算。即:

  從上述表達(dá)式可以看出,Y0~Y7都是乘法累加運(yùn)算,而S0~S7可由x0~x7經(jīng)過蝶形運(yùn)算得到。因此將DCT算法分成兩級(jí)運(yùn)算,即第一級(jí)蝶形運(yùn)算,第二級(jí)乘法累加運(yùn)算,減少了運(yùn)算級(jí)數(shù),也就減少了中間數(shù)據(jù)的存、取時(shí)間。這樣利用DSP的專用指令乘累加運(yùn)算大大優(yōu)化了DCT算法[4,5]。
(2)8點(diǎn)DCT的DSP實(shí)現(xiàn)
第一級(jí)運(yùn)算包括4個(gè)蝶形運(yùn)算,每個(gè)蝶形運(yùn)算包括1次加法運(yùn)算和1次減法運(yùn)算,可以采用DSP的雙字加減法指令。例如計(jì)算(x0+x7)、(x0-x7)、(x1+x6)及(x1-x6)的程序段,需要如下5條指令:
    DLD      *AR2+0,B      ;取x0、x1
    DADD     *AR3,B,A     ;計(jì)算(x0+x7)、(x1+x6)
    DSTA,   *AR4+          ;存儲(chǔ)(x0+x7)、(x1+x6)
    DSUB     *AR3-0,B,A   ;計(jì)算(x0-x7)、(x1-x6)
    DSTA,   *AR5-          ;存儲(chǔ)(x0-x7)、(x1-x6)
故4個(gè)蝶形運(yùn)算共需要10條指令。
計(jì)算一個(gè)DCT系數(shù)需要4次乘法累加運(yùn)算和1次存儲(chǔ)操作,共5條指令,被乘數(shù)是蝶形運(yùn)算結(jié)果,乘數(shù)是已知常數(shù)(事先計(jì)算好系數(shù)并存放在DSP的內(nèi)部存儲(chǔ)器中)。乘法累加運(yùn)算的程序段如下:
MAC     *AR4+,*AR5+0%,B,A  ;乘法累加
    MAC     *AR4+,*AR5+0%,A     ;乘法累加
    MAC     *AR4+,*AR5+0%,A     ;乘法累加
    MACR    *AR4+,*AR5+0%,A     ;乘法累加
    STHA,  *AR2-0                ;存儲(chǔ)結(jié)果
    其中,AR4、AR5分別指向被乘數(shù)和乘數(shù),累加器B事先被清零,因此,第二級(jí)運(yùn)算共需要40條指令,計(jì)算一個(gè)8點(diǎn)DCT要50條指令,實(shí)際編程時(shí)還要加幾條輔助指令,最后以54條指令和非常簡(jiǎn)潔的程序結(jié)構(gòu)實(shí)現(xiàn)了8點(diǎn)DCT[4-7]。
本文以上述算法和流程為基礎(chǔ),設(shè)計(jì)了基于DSP實(shí)現(xiàn)JPEG的編碼算法,并進(jìn)行了優(yōu)化。與基于ASIC的方法相比,本方案具有通用性強(qiáng)、靈活高效的特點(diǎn)。圖2(CCS界面顯示)為采集的640×480×16 bit的本人彩色視頻頭像進(jìn)行JPEG標(biāo)準(zhǔn)壓縮后復(fù)原的圖像,相應(yīng)的壓縮編碼指標(biāo)在表2中列出。

 


  從上面的結(jié)果可以看出,整個(gè)壓縮系統(tǒng)基本上可以實(shí)現(xiàn)對(duì)視頻圖像壓縮編碼。對(duì)本算法進(jìn)行適當(dāng)修改,可以應(yīng)用到數(shù)碼相機(jī)、手機(jī)等多種嵌入式系統(tǒng)中。同時(shí),該壓縮系統(tǒng)可以通過PCI總線控制,將壓縮后的碼流通過JPEG文件的形式傳輸給PC機(jī)。另外,該壓縮系統(tǒng)可以成為一個(gè)通用的視頻圖像采集壓縮處理平臺(tái),在該平臺(tái)上可以實(shí)現(xiàn)JPEG2000、H.264、MPEG-4等多種視頻壓縮。


參考文獻(xiàn)
[1] PENNEBAKER W B,MITCH1L J L.JPEG still image data compression standard.VNR 115 fifth Avenue,New York,NY 10003,1993.
[2] 劉政,葉漢民.CPLD在DSP多分辯率圖像采集系統(tǒng)中的應(yīng)用[J].微計(jì)算機(jī)信息,2007(29).
[3] 馮琪,裴海龍.視頻采集與實(shí)時(shí)傳輸系統(tǒng)的軟件實(shí)現(xiàn)方法研究[J].計(jì)算機(jī)應(yīng)用研究,2005(7).
[4] 齊美彬.基于DSP的視頻圖象壓縮系統(tǒng)的研究.合肥工業(yè)大學(xué)碩士學(xué)位論文,2001.
[5] 王元中,胡瑞繁.整數(shù)DCT變換中變換基的通用生成算法[J].中國(guó)圖像圖形學(xué)報(bào),2008(6).
[6] 魯昌華,石洪源.基于FPGA+DSP的實(shí)時(shí)圖像處理平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2007(12).
[7] 須文波,陳玉萍.基于DSP圖像壓縮系統(tǒng)設(shè)計(jì)與算法研究[J].計(jì)算機(jī)工程與應(yīng)用,2007(43).

 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久精品国产77777蜜臀| 国产精品免费一区二区三区在线观看| 国产视频一区在线| 91久久久亚洲精品| 国产精品狼人久久影院观看方式| 西瓜成人精品人成网站| 欧美另类久久久品| 久久精品国产一区二区电影| 欧美日韩一区二区精品| 欧美在线啊v一区| 欧美午夜精品一区二区三区| 亚洲视频久久| 亚洲经典自拍| 欧美亚洲第一页| 欧美亚洲综合另类| 亚洲香蕉网站| 亚洲一区在线观看免费观看电影高清| 亚洲韩国日本中文字幕| 欧美插天视频在线播放| 亚洲精品美女久久久久| av成人免费在线观看| 国产精品欧美日韩一区| 久久国产66| 亚洲精品视频啊美女在线直播| 亚洲精品国产品国语在线app| 欧美日韩一区二区三区在线| 久久gogo国模啪啪人体图| 激情综合自拍| 久久久91精品国产一区二区三区 | 国产精品激情电影| 亚洲午夜精品国产| 日韩视频不卡中文| 欧美成人激情视频| 亚洲色诱最新| 国产女人18毛片水18精品| 午夜在线观看欧美| 亚洲女性裸体视频| 国产日韩欧美日韩| 久久综合亚洲社区| 日韩一级片网址| 9久草视频在线视频精品| 国产精品久久亚洲7777| 西西裸体人体做爰大胆久久久| 亚洲一区欧美一区| 国内外成人免费激情在线视频网站| 美国十次成人| 在线视频一区二区| 一区二区欧美日韩| 国产日韩欧美在线看| 欧美a级理论片| 午夜精品成人在线| 亚洲国产精品成人久久综合一区| 亚洲福利视频三区| 国产精品九九久久久久久久| 欧美日精品一区视频| 亚洲欧美在线磁力| 亚洲一区国产| 亚洲免费在线精品一区| 91久久夜色精品国产九色| 亚洲在线一区| 亚洲一区二区三区四区视频| 91久久久久久国产精品| 国产亚洲一区在线| 亚洲免费在线观看| 亚洲一区二区三区高清不卡| 亚洲区在线播放| 亚洲高清123| 亚洲第一精品久久忘忧草社区| 午夜精品网站| 午夜精品99久久免费| 性色一区二区三区| 午夜欧美精品| 欧美一区二区三区在线视频| 亚洲欧美在线一区| 香蕉精品999视频一区二区| 亚洲天堂av电影| 亚洲一区免费网站| 亚洲欧美电影在线观看| 亚欧成人在线| 久久精品免费| 99这里有精品| 亚洲资源av| 羞羞漫画18久久大片| 久久国产精品亚洲va麻豆| 免费成人网www| 欧美国产精品中文字幕| 欧美午夜国产| 国产午夜精品美女毛片视频| 亚洲成人原创| 一本色道久久综合一区| 亚洲在线不卡| 亚洲国产另类久久精品| 亚洲视频 欧洲视频| 久久亚洲欧美国产精品乐播| 欧美日本三级| 激情文学综合丁香| 亚洲在线中文字幕| 亚洲午夜精品网| 欧美精品少妇一区二区三区| 国产在线精品成人一区二区三区| 一区二区动漫| 一区二区电影免费观看| 麻豆av一区二区三区久久| 欧美日在线观看| 尤物精品国产第一福利三区| 在线视频精品| 亚洲国产1区| 夜夜躁日日躁狠狠久久88av| 亚洲一区二区三区在线播放| 久久国产免费| 欧美三级网页| 国语精品中文字幕| 亚洲日本视频| 亚洲第一二三四五区| 国产亚洲高清视频| 亚洲国产精品99久久久久久久久| 狠狠干综合网| 最新69国产成人精品视频免费| 亚洲激情一区| 亚洲专区免费| 亚洲精品在线视频| 亚洲一区二区三区视频| 久久黄色小说| 欧美日韩国产综合新一区| 国产一区二区三区日韩| 亚洲国产精品久久久久久女王| 一区二区高清在线观看| 136国产福利精品导航网址| 亚洲欧美成人| 免费视频一区| 亚洲国产精品视频| 亚洲三级视频| 久久精品一区二区三区四区| 亚洲欧美在线看| 日韩网站在线看片你懂的| 鲁鲁狠狠狠7777一区二区| 国产真实精品久久二三区| 性欧美xxxx视频在线观看| 午夜精品免费视频| 国产一区二区三区丝袜| 久久精品视频免费观看| 久久综合色88| 最近中文字幕日韩精品 | 亚洲手机在线| 制服丝袜亚洲播放| 亚洲综合清纯丝袜自拍| 国产精品入口尤物| 欧美日韩四区| 国产精品区一区二区三区| 欧美人妖在线观看| 欧美日本成人| 欧美日本一道本在线视频| 欧美日韩国产综合网| 国产精品一区二区你懂得| 国产精品免费一区二区三区在线观看| 国产精品网站在线观看| 国产精品夜色7777狼人| 狠狠色综合网| 一区二区日本视频| 亚洲黄色av| 亚洲欧美一区二区激情| 免费不卡中文字幕视频| 欧美日韩综合视频网址| 国产日产欧美a一级在线| 在线激情影院一区| 亚洲女女女同性video| 亚洲电影免费在线观看| 一本色道久久综合狠狠躁篇怎么玩 | 国内偷自视频区视频综合| 国产精品v亚洲精品v日韩精品 | 欧美成人精品三级在线观看| 韩国一区二区三区在线观看| 亚洲福利一区| 欧美大学生性色视频| 亚洲精品欧美日韩专区| 亚洲自拍偷拍麻豆| 国产日韩亚洲| 亚洲国产精品第一区二区三区| 欧美成人精品不卡视频在线观看| 亚洲精品自在久久| 亚洲视频自拍偷拍| 国产一区二区在线观看免费播放| 亚洲经典自拍| 欧美色精品天天在线观看视频| 亚洲欧美日韩人成在线播放| 久热精品视频在线| 日韩视频免费| 久久国产66| 亚洲欧洲免费视频| 欧美专区在线观看| 亚洲国产精品免费| 香蕉av777xxx色综合一区| 国产一区在线播放| 夜夜爽夜夜爽精品视频| 国产精品一国产精品k频道56| 欧美自拍偷拍午夜视频| 欧美日韩国产成人在线观看| 午夜精品亚洲| 午夜一区不卡| 99在线精品免费视频九九视|