強(qiáng)大的多功能圖像采集及處理平臺系統(tǒng)方案,提供軟硬件詳解
一.項目概述
本文引用地址:http://www.ex-cimer.com/article/201808/387137.htm1.1 項目背景
數(shù)字圖像處理自從出現(xiàn)以來,就一直是前沿的研究學(xué)科,經(jīng)久不衰,同時隨著數(shù)字化時代的到來,市場對于數(shù)字圖像處理的需求也越來越大。因此,本項目------基于FPGA的多功能數(shù)字圖像采集及處理平臺主要是為各種需要進(jìn)行數(shù)字圖像處理的設(shè)備和應(yīng)用而設(shè)計的, 例如, 醫(yī)學(xué)上的CT, X-ray等圖像增強(qiáng)及處理; 各種需要支持圖像優(yōu)化的數(shù)碼設(shè)備等。 同時此平臺也可用于數(shù)字圖像處理相關(guān)課程的設(shè)計參考及教學(xué)演示。
1.2 項目優(yōu)勢
基于FPGA的多功能數(shù)字圖像采集及處理平臺是一個多用途,多功能的數(shù)字處理平臺, 相比于其他同類設(shè)計,有以下優(yōu)勢:
1 采用可編程的FPGA進(jìn)行設(shè)計,便于設(shè)計的更新,減少因此帶來的升級費用;
2 本平臺采用硬件實現(xiàn),相比于采用DSP的軟件實現(xiàn)方法,處理的速度更快;
3 各模塊之間相互獨立,便于設(shè)計的復(fù)用,經(jīng)過簡單處理后即可用于其它項目;
二.需求分析
2.1 功能分析
根據(jù)本項目的設(shè)計目標(biāo),本設(shè)計需要完成的功能有:
(1) 可以對輸入的數(shù)字圖像進(jìn)行基本的圖像增強(qiáng),圖像平滑,圖像銳化,直方圖均衡化,直方圖標(biāo)準(zhǔn)化等操作,也可以進(jìn)行頻域相關(guān)的巴特沃思濾波,高斯濾波等操作。
(2) 可以通過組合各種不同的基本圖像處理過程,完成諸如圖像邊沿檢測等高級處理。
(3) 可以輸入CMOS傳感器轉(zhuǎn)換的YCrCb格式圖像數(shù)據(jù),并轉(zhuǎn)換為RGB格式。
(4) 可以通過USB接口提供數(shù)字圖像處理器的圖像數(shù)據(jù)進(jìn)行處理。
(5) 可以將處理過的圖像保存在Flash中,并且能夠通過VGA顯示處理過程中生成的圖像。
三.方案設(shè)計
3.1 系統(tǒng)功能實現(xiàn)原理
本設(shè)計采用Xilinx公司的Nexys 3 Spartan-6 FPGA Board開發(fā)板,利用其上的Xilinx Spartan®-6 FPGA (XC6LX16-CS324) 的大容量邏輯資源完成各個模塊。本設(shè)計總體硬件框圖如圖一所示。從圖一中可以清楚地知道系統(tǒng)主要由USB設(shè)備控制單元,顏色空間轉(zhuǎn)換單元,用戶控制輸入單元,總體控制單元,雙口RAM控制單元,F(xiàn)lash控制單元,顯示控制單元和圖像處理單元組成。
系統(tǒng)的工作原理如下所述:總體控制單元根據(jù)用戶控制輸入單元選擇雙口RAM輸入端的數(shù)據(jù)源,然后圖像處理單元讀出數(shù)據(jù)根據(jù)用戶控制輸入單元輸出信號對圖像進(jìn)行相關(guān)的處理并輸出到顯示RAM中,由顯示控制單元顯示到VGA上,并根據(jù)用戶輸入是否保存到Flash中。各單元模塊的具體說明請參考
3.2 硬件平臺及資源配置
3.2 硬件平臺及資源配置
3.2.1 USB控制單元
USB控制單元是整個系統(tǒng)數(shù)據(jù)來源方式之一,在系統(tǒng)中占據(jù)重要位置。首先讓我們看一下其組成框圖,如圖二所示。
由上圖可知,USB控制單元主要由USB Packet Assemble/Dissemble,USB PL,USB FSM,EP Buffer組成。其中USB FSM主要實現(xiàn)USB功能設(shè)備,和Host Computer通信;USB Packet Assemble/Dissemble主要完成USB數(shù)據(jù)包的解包和打包,USB PL(USB Protocol Layer)實現(xiàn)USB協(xié)議;另外和USB PHY通信的模塊未畫出。
3.2.2 顏色空間轉(zhuǎn)換單元
顏色空間轉(zhuǎn)換單元完成將CMOS輸入YCrCb格式數(shù)據(jù)轉(zhuǎn)換成RGB數(shù)據(jù)的操作,其組成框圖如圖三所示。
由YCrCb轉(zhuǎn)換成RGB的格式如下:
R = Y + 1.371 * (Cr - 128);
G = Y - 0.698 * (Cr - 128) - 0.336 * (Cb - 128);
B = Y + 1.732 * (Cb - 128);
由于硬件實現(xiàn)特殊性,上式改為:
R = Y + 1403 * ( Cr - 128 ) /1024;
G = Y - 714* ( Cr - 128 ) /1024 - 344 * ( Cb - 128 ) /1024 ;
B = Y + 1773 * ( Cb - 128 ) /1024;
3.2.3 圖像處理單元
圖像處理單元是本系統(tǒng)中最重要的單元,主要完成數(shù)字圖像處理相關(guān)的工作,如直方圖均衡化,圖象銳化,以及頻率濾波等操作。其框圖如圖四所示:
圖像處理單元有基本的數(shù)字圖像處理模塊如直方圖均衡化,圖象銳化,以及頻率濾波等組成,可以根據(jù)用戶的選擇進(jìn)行不同的組合來完成特定的任務(wù)或目的(如圖像邊沿檢測等)。
3.2.4 其它控制單元
其他控制單元如總體控制單元,用戶輸入控制單元,雙口RAM控制單元,F(xiàn)lash控制單元主要完成系統(tǒng)運(yùn)行過程中的控制和流程控制等操作。
3.3 系統(tǒng)流程圖
由以上系統(tǒng)各模塊的分析,各模塊功能及系統(tǒng)總體架構(gòu)已經(jīng)有整體了解,現(xiàn)在就介紹一下系統(tǒng)整體的運(yùn)行流程情況。
系統(tǒng)整體流程圖如圖五所示:
上圖是簡化了的系統(tǒng)流程圖,可以看出系統(tǒng)中數(shù)據(jù)流經(jīng)的主要路徑。上電初始化后,根據(jù)用戶控制輸入單元選擇雙口RAM輸入端的數(shù)據(jù)源,然后圖像處理單元讀出數(shù)據(jù)根據(jù)用戶控制輸入單元輸出信號對圖像進(jìn)行相關(guān)的處理并輸出到顯示RAM中,由顯示控制單元顯示到VGA上,并根據(jù)用戶輸入是否保存到Flash中。
評論