《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 業(yè)界動(dòng)態(tài) > 基于DSP+FPGA結(jié)構(gòu)的小波圖像處理系統(tǒng)設(shè)計(jì)

基于DSP+FPGA結(jié)構(gòu)的小波圖像處理系統(tǒng)設(shè)計(jì)

2008-06-17
作者:陸海東,, 吳明贊

  摘 要: 介紹了一種基于DSP+FPGA結(jié)構(gòu)的小波" title="小波">小波圖像處理" title="圖像處理">圖像處理系統(tǒng)設(shè)計(jì)方案,,以高性能數(shù)字信號(hào)處理器ADSP-BF535" title="ADSP-BF535">ADSP-BF535作為核心,結(jié)合現(xiàn)場(chǎng)可編程門(mén)陣列FPGA,,實(shí)現(xiàn)了實(shí)時(shí)數(shù)字圖像處理,。
  關(guān)鍵詞: 數(shù)字信號(hào)處理 FPGA 圖像處理 小波變換


  小波分析是近年迅速發(fā)展起來(lái)的新興學(xué)科,與Fourier分析和Gabor變換相比,,小波變換" title="小波變換">小波變換是時(shí)間(空間)頻率的局部化分析,,它通過(guò)伸縮平移運(yùn)算對(duì)信號(hào)逐步進(jìn)行多尺度細(xì)化,最終達(dá)到高頻處時(shí)間細(xì)分和低頻處頻率細(xì)分,,能自動(dòng)適應(yīng)時(shí)頻信號(hào)分析的要求,,從而可聚焦到信號(hào)的任意細(xì)節(jié),解決了Fourier分析不能解決的許多問(wèn)題[1~2],。目前許多小波算法的軟件實(shí)現(xiàn)已經(jīng)很成熟了,,但是很難達(dá)到實(shí)時(shí)性的效果。而在硬件方面,,隨著數(shù)字信號(hào)處理器(DSP)和現(xiàn)場(chǎng)可編程門(mén)陣列器件(FPGA)的發(fā)展,,采用DSP+FPGA的數(shù)字硬件系統(tǒng)顯示出其優(yōu)越性,可以把二者的優(yōu)點(diǎn)結(jié)合在一起,,兼顧速度和靈活性,,因此DSP+FPGA結(jié)構(gòu)正愈來(lái)愈得到人們的重視,應(yīng)用的領(lǐng)域也越來(lái)越廣泛[1][3]。DSP+FPGA系統(tǒng)最大的優(yōu)點(diǎn)是結(jié)構(gòu)靈活,,有較強(qiáng)的通用性,適合于模塊化設(shè)計(jì),,從而能夠提高算法效率,;同時(shí)其開(kāi)發(fā)周期較短,系統(tǒng)容易維護(hù)和擴(kuò)展,,適合實(shí)時(shí)信號(hào)處理,。所以本文介紹的系統(tǒng)設(shè)計(jì)就是基于DSP+FPGA結(jié)構(gòu)的小波圖像處理系統(tǒng)。
1 圖像處理系統(tǒng)的組成
1.1 系統(tǒng)整體硬件構(gòu)架

  DSP+FPGA系統(tǒng)的核心由DSP芯片和現(xiàn)場(chǎng)可編程門(mén)陣列FPGA以及外圍的輔助電路,,如存儲(chǔ)器,、先進(jìn)先出(FIFO)器件及Flash ROM等組成。外圍電路輔助核心電路進(jìn)行工作,。DSP和FPGA各自帶有RAM,,用于存放處理過(guò)程所需要的數(shù)據(jù)及中間結(jié)果。Flash ROM中存儲(chǔ)DSP執(zhí)行程序和FPGA的配置數(shù)據(jù),。FIFO器件則用于實(shí)現(xiàn)信號(hào)處理中常用的一些操作,,如延時(shí)線、順序存儲(chǔ)等,。
  系統(tǒng)方案考慮了系統(tǒng)處理的實(shí)時(shí)性,、硬件系統(tǒng)的規(guī)模及系統(tǒng)調(diào)試的難度等因素,其整體框架如圖1所示,。


1.2 處理器簡(jiǎn)介
  ADSP-BF535(簡(jiǎn)稱BF535)是美國(guó)AD公司和Intel公司于2001年底聯(lián)合推出的一款定點(diǎn)DSP,,屬于Blackfin系列產(chǎn)品。BF535具有RISC指令結(jié)構(gòu),,運(yùn)作高效,,性能優(yōu)異,主頻最高工作在350MHz,,有兩個(gè)40位的乘加器和兩個(gè)32位的算術(shù)邏輯單元,,四個(gè)8位的視頻處理單元,十六個(gè)地址尋址單元,。DSP內(nèi)部集成了308KB的RAM,,并有豐富的外部接口,如SDRAM,、PCI,、USB、SPI,、同步和異步串口" title="串口">串口等,。芯片內(nèi)部設(shè)計(jì)了“看門(mén)狗”和多種定時(shí)器,可充分滿足軟件工程的穩(wěn)定性設(shè)計(jì)要求。而且BF535可動(dòng)態(tài)地控制電壓輸入,,調(diào)整運(yùn)行頻率,,減少芯片功耗,十分適合于移動(dòng)產(chǎn)品的設(shè)計(jì)[3],。
1.3 外部存儲(chǔ)器的設(shè)計(jì)
  Blackfin DSP的結(jié)構(gòu)體系將存儲(chǔ)器構(gòu)造成統(tǒng)一的4GB地址空間,,用32位地址尋址。包括內(nèi)部存儲(chǔ)器,、外部存儲(chǔ)器,、PCI地址空間和I/O控制寄存器在內(nèi)的所有資源,在這個(gè)統(tǒng)一的地址空間中獨(dú)自占據(jù)各自的一段[3][4],。
  外部存儲(chǔ)器通過(guò)外部接口總線進(jìn)行讀取,。該接口提供一個(gè)無(wú)縫連接,最多可接4個(gè)SDRAM和4個(gè)異步存儲(chǔ)裝置(Flash,、EPROM,、ROM、SRAM)及存儲(chǔ)映射I/O裝置,。
  存儲(chǔ)器的設(shè)計(jì)首先要考慮存儲(chǔ)器的速度,、類型、容量是否能滿足運(yùn)算要求以及性價(jià)比如何,。本系統(tǒng)中擴(kuò)展了外部存儲(chǔ)器,,用到了SDRAM(用來(lái)在算法運(yùn)算過(guò)程中對(duì)圖像數(shù)據(jù)的緩存)。與PC133兼容的SDRAM控制器最多可以設(shè)置為四個(gè)地址空間相連的SDRAM存儲(chǔ)塊,,每個(gè)存儲(chǔ)塊的大小可為16~128MB,,所以最高可訪問(wèn)512MB的RAM。每個(gè)存儲(chǔ)塊都可以獨(dú)立配置,,并且與鄰近塊連續(xù)而不必考慮存儲(chǔ)塊的大小和位置,。這使得內(nèi)核可以把所有SDRAM都看作有單一、連續(xù)的物理地址空間,。本系統(tǒng)中ADSP-BF535與SDRAM的接口如圖2所示,。


  異步存儲(chǔ)器接口選用了雙端口RAM作為圖像數(shù)據(jù)從FPGA到DSP之間的傳輸,通過(guò)對(duì)DMA控制寄存器的設(shè)定,,圖像數(shù)據(jù)以DMA方式向DSP傳輸,。選用Flash作為程序存儲(chǔ)器。BF535與Flash的接口如圖3所示,,系統(tǒng)上電后程序從Flash以DMA方式自舉到內(nèi)部程序RAM中,,應(yīng)用程序在內(nèi)部程序RAM全速運(yùn)行。


1.4 模/數(shù)轉(zhuǎn)換部分
  高速A/D變換對(duì)采集到的信號(hào)數(shù)字化后,,將模擬圖像信號(hào)轉(zhuǎn)換為數(shù)字圖像信號(hào),,存入圖像存儲(chǔ)器中,。A/D變換器采用AD9042,其最高采樣頻率可達(dá)40MHz,,精度為12位,,輸入信號(hào)范圍為±2V。
1.5 通信接口部分
  BF535的UART是與PC機(jī)的標(biāo)準(zhǔn)異步串口兼容的全雙工外設(shè),,它有兩個(gè)相互獨(dú)立的UART,,UART在串行和并行格式之間轉(zhuǎn)換數(shù)據(jù),通信接口部分由一個(gè)RS422和一個(gè)RS232串口組成,。中心控制器通過(guò)串口發(fā)送指控指令,實(shí)時(shí)數(shù)字圖像處理系統(tǒng)對(duì)目標(biāo)處理數(shù)據(jù)進(jìn)行修正和規(guī)范化處理,,并送出符合規(guī)定格式的處理數(shù)據(jù),。
1.6 FPGA在系統(tǒng)中的使用
  系統(tǒng)采用Xilinx公司的SpartanⅡ系列的FPGA芯片,并且用FPGA實(shí)現(xiàn)FIFO及擴(kuò)展串口的功能,。時(shí)序控制由現(xiàn)場(chǎng)可編程門(mén)陣列FPGA實(shí)現(xiàn),,其實(shí)現(xiàn)的主要功能有: (1)產(chǎn)生DSP訪問(wèn)的地址譯碼與控制。(2)產(chǎn)生DMA端口訪問(wèn)DSP所需的控制信號(hào),。(3)產(chǎn)生DSP的復(fù)位信號(hào),。(4)產(chǎn)生A/D轉(zhuǎn)換器的轉(zhuǎn)換控制時(shí)序,包括SCLK(串行時(shí)鐘)和CONV(轉(zhuǎn)換控制),。(5)產(chǎn)生串口的接收幀同步信號(hào),。
  系統(tǒng)使用FPGA可以減少外圍芯片的數(shù)量,而且可以比較方便地修改設(shè)計(jì)方案,,為以后系統(tǒng)的擴(kuò)展提供了空間,。
2 二維小波分析在圖像處理中的應(yīng)用
  數(shù)字圖像處理的目的就是對(duì)數(shù)字化后的圖像進(jìn)行某些運(yùn)算或處理,以提高圖像的質(zhì)量或達(dá)到人們所要求的預(yù)期結(jié)果,。小波變換用于圖像處理是小波變換應(yīng)用比較多的領(lǐng)域之一,。由于圖像是二維信號(hào),因此,,應(yīng)用的小波分析工具是二維小波變換,。小波變換在圖像處理上的應(yīng)用主要是將空間或時(shí)間域上的信號(hào)(數(shù)據(jù))變換到小波域上,成為多層次的小波系數(shù),。然后根據(jù)小波基的特性,,分析小波系數(shù)特點(diǎn),針對(duì)不同需求,,結(jié)合常規(guī)的圖像處理方法或更符合小波特點(diǎn)的方法來(lái)處理小波系數(shù),,再對(duì)處理后的小波系數(shù)進(jìn)行逆變換,得到所需的目標(biāo)圖像,。
2.1 二維離散小波變換的一般形式
  二維離散小波變換的一般形式可以表達(dá)為:


2.2 二維圖像的小波分解與重構(gòu)
  從一幅N×N的圖像開(kāi)始,,N是2的冪。若j=0,尺度2j=20=1,,即為原始圖像的尺度,,j的值每次增大都使尺度加倍,而使分辨率減半,。圖像可以依據(jù)二維小波按如下方式擴(kuò)展:在變換的每一層次上,,圖像都被分解為四個(gè)1/4大小的圖像,這四個(gè)圖像中的每一個(gè)都是由原圖與一個(gè)小波基圖像的內(nèi)積后,,再經(jīng)過(guò)在x1,、x2方向都進(jìn)行了兩倍的間隔抽樣后而生成的。
  圖4為分解的實(shí)際計(jì)算框圖,,圖中cA為低頻系數(shù),,cD(h)、cD(v),、cD(d)為高頻系數(shù),,LD為低通分解濾波器,HD為高通分解濾波器,,向下的箭頭表示隔行或隔列抽樣,,保留偶數(shù)行或列,行列以0開(kāi)始,。


  重構(gòu)的過(guò)程是分解的逆過(guò)程,,與分解的過(guò)程類似。圖5為DWT圖像重構(gòu)的實(shí)際計(jì)算框圖,,其中向上的箭頭表示列插樣或行插樣,,即在奇數(shù)列或奇數(shù)行插入0值。


2.3 小波算法在BF535上的實(shí)現(xiàn)
  圖像處理的小波算法在BF535上實(shí)現(xiàn),。AD公司提供了一套完整的ADSP-BF535軟硬件開(kāi)發(fā)工具,,包括仿真器、評(píng)估板和Visual DSP++開(kāi)發(fā)環(huán)境,。小波算法在BF535上實(shí)現(xiàn)的主要步驟如下:
  (1) 用C語(yǔ)言編程實(shí)現(xiàn)算法,。
  (2) 使用Visual DSP++的C/C++編譯器,將C源程序編譯成目標(biāo)文件,。
  (3) 根據(jù)產(chǎn)生的目標(biāo)文件,,分析結(jié)果及源程序結(jié)構(gòu),并優(yōu)化源代碼,。
  (4) 應(yīng)用ADSP-BF535評(píng)估板進(jìn)行運(yùn)算時(shí)間評(píng)估,。
  (5) 重復(fù)上述步驟,直至達(dá)到系統(tǒng)實(shí)時(shí)性的要求為止,,然后下載到目標(biāo)板,。
  在實(shí)驗(yàn)中,,用小波算法對(duì)256×256像素的圖像進(jìn)行邊緣特征提取、增強(qiáng),、融合,、銳化、平滑等處理,,算法分析結(jié)果如表1所示,。可得出結(jié)論,,使用BF535可以實(shí)現(xiàn)小波圖像算法,,并且其速度滿足實(shí)時(shí)性的要求。


2.4 小波變換在數(shù)字圖像處理中的應(yīng)用
  小波變換在圖像處理中的應(yīng)用主要有圖像壓縮,、圖像的去噪,、圖像的增強(qiáng)、圖像分割,、圖像特征描述和圖像重建等 [4]
  本文介紹了應(yīng)用數(shù)字信號(hào)處理器ADSP-BF535和現(xiàn)場(chǎng)可編程門(mén)陣列FPGA,,設(shè)計(jì)了小波圖像處理系統(tǒng),,并用ADSP-BF535實(shí)現(xiàn)了小波算法。分析DSP片上資源和運(yùn)行時(shí)間的結(jié)果表明,,其速度可滿足實(shí)時(shí)性的要求,,可以在本系統(tǒng)中使用小波算法來(lái)處理實(shí)時(shí)圖像信號(hào),為硬件系統(tǒng)的設(shè)計(jì)提供了保證,。小波分析由于具有良好的時(shí)頻局部化性能,,已經(jīng)在信號(hào)分析、圖像處理,、語(yǔ)音合成,、故障診斷、地質(zhì)勘探等領(lǐng)域取得一系列重要應(yīng)用,。而且各種快速有效的算法也促進(jìn)了小波分析在實(shí)際系統(tǒng)中的應(yīng)用,。由于DSP速度越來(lái)越快,成本越來(lái)越低,,F(xiàn)PGA的容量越來(lái)越大,,使得DSP+FPGA組成的系統(tǒng)成為解決系統(tǒng)設(shè)計(jì)的重要選擇方案之一,應(yīng)用領(lǐng)域非常廣泛,。
參考文獻(xiàn)
1 陳武凡.小波分析及其在圖像處理中的應(yīng)用.北京:科學(xué)出版社,,2003
2 虞湘賓,董 濤,,畢光國(guó).小波變換的快速算法研究及其在圖像處理中的應(yīng)用.電路與系統(tǒng)學(xué)報(bào),,2002,;7(2)
3 陳 峰.Blackfin系列DSP原理及系統(tǒng)設(shè)計(jì).北京:電子工業(yè)出版社,2004
4 AD Inc. ADSP-BF535 Blackfin DSP Hardware Reference.2002
5 戴逸民.DSP+FPGA數(shù)字硬件系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn). 半導(dǎo)體設(shè)計(jì),2002;(4)
6 朱 明,,魯劍鋒.基于DSP+FPGA結(jié)構(gòu)圖像處理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).計(jì)算機(jī)測(cè)量與控制,2004;12(9)

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn),。轉(zhuǎn)載的所有的文章,、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失,。聯(lián)系電話:010-82306118,;郵箱:[email protected]