基于FPGA+ DSP的實(shí)時(shí)圖像處理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
出處:weekly 發(fā)布于:2011-01-19 14:57:38
摘 要: 針對(duì)圖像處理系統(tǒng)計(jì)算量大、實(shí)時(shí)性高和體積小的要求, 研制了一種以DSP為主處理器FPGA 為輔處理器的高性能實(shí)時(shí)圖像處理系統(tǒng)。利用這兩種芯片的各自特點(diǎn), 將算法分成兩部分分別交由FPGA 和DSP處理, 大大提高了算法的效率。系統(tǒng)具有結(jié)構(gòu)簡(jiǎn)單易于實(shí)現(xiàn)和運(yùn)用方便靈活的特點(diǎn), 加載上相應(yīng)的程序之后能實(shí)現(xiàn)對(duì)所獲取的圖像跟蹤、識(shí)別和匹配等處理方法。詳細(xì)說(shuō)明了系統(tǒng)的設(shè)計(jì)思路和硬件結(jié)構(gòu), 并在硬件系統(tǒng)上進(jìn)行了算法仿真及實(shí)驗(yàn)驗(yàn)證。實(shí)驗(yàn)結(jié)果表明: 該系統(tǒng)實(shí)時(shí)性高, 適應(yīng)性好, 能夠滿(mǎn)足設(shè)計(jì)要求。
1 引 言
圖像處理系統(tǒng)的處理算法復(fù)雜, 計(jì)算量大, 處理實(shí)時(shí)性要求高, 同時(shí)系統(tǒng)的體積也有嚴(yán)格的限制。
因此在設(shè)計(jì)系統(tǒng)時(shí)必須綜合考慮這些特點(diǎn), 合理選用芯片并保留一定的余度。通常的方法是以FPGA和DSP作為系統(tǒng)的處理器, 即由FPGA 承擔(dān)圖像預(yù)處理功能, DSP實(shí)現(xiàn)更復(fù)雜的圖像處理算法。在這樣一種結(jié)構(gòu)之上如何擴(kuò)展系統(tǒng)的應(yīng)用, 增加其靈活性并減少因前期設(shè)計(jì)不當(dāng)造成的風(fēng)險(xiǎn)是設(shè)計(jì)前需要重點(diǎn)考慮的問(wèn)題。
2 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)
實(shí)時(shí)圖像處理系統(tǒng)除了FPGA和DSP這兩個(gè)部分之外, 還應(yīng)該有圖像獲取模塊、圖像輸出模塊以及相應(yīng)的存儲(chǔ)部分及通信控制電路等組成。各個(gè)主要模塊的功能如下:
圖像獲取模塊: 將成像儀輸入的圖像進(jìn)行分離、放大, 并在FPGA 的控制下完成A /D 采樣, 將模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào), 并將數(shù)字信號(hào)輸入FPGA 模塊。
FPGA 模塊: 該模塊的主要功能是: 1產(chǎn)生系統(tǒng)所需要的邏輯控制信號(hào),2為各芯片提供時(shí)鐘信號(hào),3對(duì)輸入圖像進(jìn)行預(yù)處理。
DSP模塊: 對(duì)預(yù)處理后的圖像進(jìn)行目標(biāo)檢測(cè)、識(shí)別與跟蹤等復(fù)雜的圖像處理運(yùn)算。DSP模塊是整個(gè)系統(tǒng)的模塊。
圖像輸出模塊: 對(duì)處理后的數(shù)字圖像進(jìn)行D /A轉(zhuǎn)換, 并疊加同步信號(hào)后形成標(biāo)準(zhǔn)的視頻, 實(shí)現(xiàn)對(duì)處理結(jié)果的顯示。
實(shí)時(shí)圖像處理系統(tǒng)結(jié)構(gòu)如圖1所示。

圖1 實(shí)時(shí)圖像處理系統(tǒng)結(jié)構(gòu)框圖
3 系統(tǒng)的具體實(shí)現(xiàn)方案
明確了系統(tǒng)的基本組成模塊之后需要做的工作是: 在滿(mǎn)足實(shí)時(shí)圖像處理算法各種要求的條件下如何將這幾個(gè)部分組合起來(lái), 使得系統(tǒng)易于實(shí)現(xiàn), 并具有較高的可靠性。同時(shí)還要對(duì)各模塊仔細(xì)分析加以改進(jìn)以擴(kuò)展系統(tǒng)的應(yīng)用范圍。以下是各模塊的具體組成。
3. 1 圖像獲取模塊
為擴(kuò)展系統(tǒng)應(yīng)用, 該模塊有兩路視頻輸入通道,可以根據(jù)實(shí)際的需要決定是一路還是兩路視頻輸入。當(dāng)將系統(tǒng)用于雙目成像系統(tǒng)時(shí)由于雙目視覺(jué)要求兩個(gè)成像儀同步, 所以在路視頻通道中經(jīng)EL4501分離出的復(fù)合同步信號(hào)接到第二路成像儀的同步輸入口, 以實(shí)現(xiàn)兩個(gè)成像儀的同步。因?yàn)槌上駜x輸出為模擬視頻信號(hào), 所以分離之后的視頻信號(hào)須經(jīng)A /D轉(zhuǎn)換才能進(jìn)入到FPGA中。A /D采樣過(guò)程由FPGA 控制, 由第二路視頻通道分離出來(lái)的場(chǎng)同步、行同步和奇偶幀指示信號(hào)直接進(jìn)入到FPGA,F(xiàn)PGA 將同步信號(hào)和奇偶幀指示信號(hào)作為中斷來(lái)控制采樣的開(kāi)始和停止。同時(shí)為防止系統(tǒng)其它電路對(duì)圖像獲取模塊的干擾, 在信號(hào)進(jìn)入到FPGA 之前應(yīng)該加上隔離芯片對(duì)信號(hào)進(jìn)行隔離。
3. 2 FPGA 模塊
FPGA 是系統(tǒng)中實(shí)現(xiàn)圖像采集、圖像預(yù)處理、產(chǎn)生各種控制邏輯和時(shí)鐘信號(hào)的芯片, 系統(tǒng)選用的XC4VSX35芯片是V4 系列中專(zhuān)為數(shù)字信號(hào)處理進(jìn)行了優(yōu)化的一款FPGA。該芯片支持主串、從串、主SelecMt AP、從SelecMt AP和JTAG 邊界掃描四種加載模式。本系統(tǒng)選用主串模式和JTAG 邊界掃描模式。FPGA使用一塊50MHz的晶振作為其全局時(shí)鐘輸入, 依靠V4的片內(nèi)數(shù)字時(shí)鐘管理器( DCM )可產(chǎn)生24MHz~ 500MH z的時(shí)鐘頻率。
在視頻信號(hào)輸入端, 由于PAL制式視頻采用了隔行掃描方式, 每幀圖像由奇、偶兩幀合成, 所以在FPGA 內(nèi)部需配置一個(gè)雙口RAM 以存儲(chǔ)奇幀的圖像, 等待偶數(shù)幀進(jìn)來(lái)之后再將兩場(chǎng)合成為一幀完整的圖像。雙口RAM 的大小及縱深比應(yīng)根據(jù)算法的實(shí)際需要來(lái)調(diào)整。作為系統(tǒng)的協(xié)處理器, 圖像的預(yù)處理也是由FPGA 來(lái)完成。FPGA 與DSP 的數(shù)據(jù)交換有多種方式。對(duì)于圖像處理系統(tǒng)來(lái)說(shuō), 其交換的數(shù)據(jù)量大, 視頻的像素速率高。所以使用一塊雙口RAM作為FPGA 與DSP數(shù)據(jù)交換的橋梁, 兩塊芯片各控制一端的讀寫(xiě)來(lái)完成數(shù)據(jù)的交換, 這樣既滿(mǎn)*換數(shù)據(jù)量大的要求, 又方便實(shí)現(xiàn)。雙口RAM 選用的是IDT70V631S, 存取周期12ns, 兩個(gè)端口有各自的地址總線(xiàn)、數(shù)據(jù)總線(xiàn)和讀寫(xiě)控制。DSP和FPGA可以在各自連接的端口對(duì)其進(jìn)行訪(fǎng)問(wèn)和控制。
圖像實(shí)時(shí)處理系統(tǒng)一般是一個(gè)控制平臺(tái)中的一部分, 圖像處理系統(tǒng)的終處理結(jié)果通過(guò)多通道緩沖串口由FPGA 轉(zhuǎn)接后傳至上位機(jī), 而上位機(jī)控制命令也由串口傳至DSP。串口通信控制可以由FPGA編程實(shí)現(xiàn), 也可以選用專(zhuān)門(mén)的芯片來(lái)實(shí)現(xiàn), 為節(jié)省FPGA 片內(nèi)資源, 串口通信控制使用串口通信控制芯片TL16CTL16C554實(shí)現(xiàn)。
3. 3 DSP模塊
DSP由于其計(jì)算高, 可完成結(jié)構(gòu)復(fù)雜的圖像處理算法, 所以在系統(tǒng)中是處理器。本系統(tǒng)選用的DSP 芯片是TI生產(chǎn)的TMS320C6416 (簡(jiǎn)稱(chēng)C6416), 其工作頻率達(dá)850MH z, 峰值處理速度達(dá)到了6800MSPS, 處理能力強(qiáng)大。DSP時(shí)鐘可通過(guò)設(shè)置CLKMODE0、1兩個(gè)引腳( pin)電位的高低來(lái)改變, 總共有BYPASS( x1)、x6、x12和x20四種模式。DSP 與FPGA 的數(shù)據(jù)交換通過(guò)雙口RAM( DPRAM)。雖然C6416片內(nèi)集成了高達(dá)8M 位的片內(nèi)高速緩存, 但考慮到圖像處理算法必涉及到對(duì)前后幾幀圖像進(jìn)行處理, 為保證系統(tǒng)運(yùn)行時(shí)存儲(chǔ)容量不會(huì)成為整個(gè)系統(tǒng)的性能瓶頸( choke point), 在DSP模塊中額外擴(kuò)展存儲(chǔ)空間。由于EM IFA 口的數(shù)據(jù)寬度更大, 因此系統(tǒng)在EM IFA 的CE1 空間內(nèi)擴(kuò)展了兩片總共128M 位的同步存儲(chǔ)器。C6416的引導(dǎo)方式有三種, 分別是: 不加載, CPU 直接開(kāi)始執(zhí)行地址0 處的存儲(chǔ)器中的指令; ROM 加載, 位于EM IFB CE1空間的ROM 中的程序通過(guò)EDMA被搬入地址0處, ROM 加載只支持8 位的ROM 加載; 主機(jī)加載, 外部主機(jī)通過(guò)主機(jī)接口初始化CPU的存儲(chǔ)空間, 包括片內(nèi)配置寄存器。本系統(tǒng)采用的是ROM 加載方式。C6416 片內(nèi)有三個(gè)多通道緩沖串口, 經(jīng)DSP處理的終結(jié)果將通過(guò)DSP的多通道緩沖串口傳送至FPGA。
3. 4 圖像輸出模塊
該模塊的功能是將DSP 處理后的圖像數(shù)據(jù)進(jìn)行數(shù)模轉(zhuǎn)換, 并與字符信號(hào)合成后形成VGA 格式的視頻信號(hào)。這里選用的數(shù)模轉(zhuǎn)換芯片為ADV7125。
這是AD I公司生產(chǎn)的一款三通道(每通道8 位)視頻數(shù)模轉(zhuǎn)換器, 其數(shù)據(jù)吞吐率330MSPS, 輸出信號(hào)兼容RS- 343A /RS - 170。由FPGA 產(chǎn)生的數(shù)字視頻信號(hào)分別進(jìn)入到ADV7125的三個(gè)數(shù)據(jù)通道, 經(jīng)數(shù)模轉(zhuǎn)換后輸出模擬視頻信號(hào)并與原來(lái)的同步信號(hào)、消隱信號(hào)疊加后便可以在顯示器上顯示處理的結(jié)果了。和圖像獲取部分一樣, 為避免其它電路的干擾, 圖像輸出部分也需要加上數(shù)據(jù)隔離芯片。
4 系統(tǒng)仿真驗(yàn)證
圖像處理算法可分為預(yù)處理算法和后期的復(fù)雜算法。預(yù)處理算法主要包括圖像的校正、增強(qiáng)和簡(jiǎn)單的分割等, 主要作用就是加強(qiáng)圖像的特征, 消除干擾和提取有用信息。這一類(lèi)算法的特點(diǎn)是算法簡(jiǎn)單但運(yùn)算量大, 適合于FPGA 來(lái)完成。預(yù)處理后的圖像一般為二值圖像, 這樣一來(lái)圖像的冗余量就大大減少, 這樣后期的復(fù)雜算法在對(duì)圖像進(jìn)行匹配、識(shí)別、跟蹤等操作時(shí)數(shù)據(jù)量就大大減少, 增加了算法的可行性。為驗(yàn)證本硬件系統(tǒng)的有效性, 進(jìn)行了大量仿真測(cè)試試驗(yàn), 圖2~ 圖5為橋梁識(shí)別的試驗(yàn)結(jié)果。
其中, 圖3、圖4是FPGA 模塊上進(jìn)行圖像增強(qiáng)與分割等預(yù)處理的測(cè)試結(jié)果。圖5 是基于DSP 的目標(biāo)識(shí)別結(jié)果。

圖2 原始圖像 圖3 FPGA 圖像增強(qiáng)結(jié)果 圖4 FPGA圖像分割結(jié)果 圖5 基于DSP的目標(biāo)識(shí)別結(jié)果
5 結(jié) 論
實(shí)時(shí)圖像處理系統(tǒng)以DSP和FPGA 為基本結(jié)構(gòu), 并在此結(jié)構(gòu)的基礎(chǔ)上進(jìn)行了優(yōu)化, 增加了視頻輸入通路。同時(shí)所有的數(shù)據(jù)交換都通過(guò)了FPGA, 后期的調(diào)試過(guò)程證明這樣做使得調(diào)試非常方便, 既可以監(jiān)視數(shù)據(jù)的交換又方便修正前期設(shè)計(jì)的錯(cuò)誤。整個(gè)系統(tǒng)結(jié)構(gòu)簡(jiǎn)單, 各個(gè)模塊功能清晰明了。經(jīng)后期大量的系統(tǒng)仿真驗(yàn)證: 系統(tǒng)穩(wěn)定性高, 處理速度快,能滿(mǎn)足設(shè)計(jì)要求。
參考文獻(xiàn):
[1]. EL4501 datasheet http://www.hbjingang.com/datasheet/EL4501_295909.html.
[2]. XC4VSX35 datasheet http://www.hbjingang.com/datasheet/XC4VSX35_1550901.html.
[3]. IDT70V631S datasheet http://www.hbjingang.com/datasheet/IDT70V631S_832680.html.
[4]. 12ns datasheet http://www.hbjingang.com/datasheet/12ns_2105238.html.
[5]. ROM datasheet http://www.hbjingang.com/datasheet/ROM+_1188413.html.
[6]. VGA datasheet http://www.hbjingang.com/datasheet/VGA+_2568786.html.
[7]. ADV7125 datasheet http://www.hbjingang.com/datasheet/ADV7125_125136.html.
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫(kù)電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫(kù)電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫(kù)電子市場(chǎng)網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類(lèi)作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問(wèn)題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- EDA技術(shù)工具鏈與全流程設(shè)計(jì)運(yùn)維指南2026/1/5 10:28:51
- PLC程序現(xiàn)場(chǎng)疑難問(wèn)題排查與深度優(yōu)化指南2025/12/24 14:36:36
- PLC程序現(xiàn)場(chǎng)調(diào)試與優(yōu)化實(shí)操指南2025/12/24 14:29:57
- 工業(yè)PLC模擬量信號(hào)采集:調(diào)理技術(shù)與抗干擾工程方案2025/12/15 14:39:08
- PLC設(shè)備如何選型2025/9/5 17:15:14
- 編碼器的工作原理及作用1
- 超強(qiáng)整理!PCB設(shè)計(jì)之電流與線(xiàn)寬的關(guān)系2
- 三星(SAMSUNG)貼片電容規(guī)格對(duì)照表3
- 電腦藍(lán)屏代碼大全4
- 國(guó)標(biāo)委發(fā)布《電動(dòng)汽車(chē)安全要求第3部分:人員觸電防護(hù)》第1號(hào)修改單5
- 通俗易懂談上拉電阻與下拉電阻6
- 繼電器的工作原理以及驅(qū)動(dòng)電路7
- 電容單位8
- 跟我學(xué)51單片機(jī)(三):?jiǎn)纹瑱C(jī)串口通信實(shí)例9
- 一種三極管開(kāi)關(guān)電路設(shè)計(jì)10
- 高速PCB信號(hào)完整性(SI)設(shè)計(jì)核心實(shí)操規(guī)范
- 鎖相環(huán)(PLL)中的環(huán)路濾波器:參數(shù)計(jì)算與穩(wěn)定性分析
- MOSFET反向恢復(fù)特性對(duì)系統(tǒng)的影響
- 電源IC在惡劣環(huán)境中的防護(hù)設(shè)計(jì)
- 連接器耐腐蝕性能測(cè)試方法
- PCB電磁兼容(EMC)設(shè)計(jì)與干擾抑制核心實(shí)操規(guī)范
- 用于相位噪聲測(cè)量的低通濾波器設(shè)計(jì)與本振凈化技術(shù)
- MOSFET在高頻開(kāi)關(guān)中的EMI問(wèn)題
- 電源IC在便攜式設(shè)備中的設(shè)計(jì)要點(diǎn)
- 連接器結(jié)構(gòu)設(shè)計(jì)常見(jiàn)問(wèn)題分析









