目前,紅外熱像儀在軍事和民用領(lǐng)域應(yīng)用廣泛,但市面多數(shù)紅外熱像儀隨機(jī)附帶的圖像處理功能較單一,不能進(jìn)行復(fù)雜運(yùn)算,而具有多功能的熱像儀價(jià)格昂貴。因此,文中提供了另一種解決方案,采用FPGA和USB2.0技術(shù)完成紅外視頻圖像的采集,再利用通用微型計(jì)算機(jī)完成圖像存儲(chǔ)及復(fù)雜圖像處理,此方法較靈活、方便,可建立起圖像數(shù)據(jù)庫(kù)為后續(xù)的研究工作提供數(shù)據(jù)支持。該系統(tǒng)包括圖像采集、存儲(chǔ)及提取模塊,其體積小、功耗低、速度快、適應(yīng)性強(qiáng),能夠滿足日常紅外圖像處理應(yīng)用。
1 系統(tǒng)構(gòu)成及原理
硬件平臺(tái)首先要考慮數(shù)據(jù)的吞吐率,市面上大部分的紅外熱像儀均支持PAL制式的視頻圖像輸出,幀頻為25幀/s,以720列×576行×25幀/s為例,720列×520行×16 bit×25幀/s≈166 Mbit/s,約為20 MB/s。據(jù)此指標(biāo)初步設(shè)定方案,如圖1所示。
1.1 視頻解碼芯片SAA7114
SAA7114是Philips公司生產(chǎn)的可編程視頻處理器,該芯片集A/D與解碼功能于一身,片內(nèi)附有鎖相、自動(dòng)鉗位、自動(dòng)增益控制、時(shí)鐘產(chǎn)生、多制式解碼等電路。而且SAA7114還可對(duì)亮度、對(duì)比度和飽和度進(jìn)行控制,既支持PAL電視制式又支持NTSC和SECAM電視制式。該芯片主要有以下特點(diǎn):
(1)具有六路模擬輸入和內(nèi)部模擬信號(hào)源選擇,如6×CVBS或者(2×Y/C和2×CVBS)或者(1×Y/C和4×CVBS);(2)具有兩路模擬預(yù)處理通道和兩路模擬抗混疊濾波器;(3)對(duì)選擇的CVBS或Y/C通道可編程為靜態(tài)增益控制或自動(dòng)增益控制;(4)可進(jìn)行白峰控制;(5)內(nèi)含兩個(gè)9位的A/D轉(zhuǎn)換器,數(shù)字CVBS或Y/C信號(hào)可通過擴(kuò)展接口輸入;(6)片內(nèi)行鎖定時(shí)鐘發(fā)生器符合“ITU 60l”標(biāo)準(zhǔn);(7)具有數(shù)字PLL,可用來對(duì)所有的標(biāo)準(zhǔn)和非標(biāo)準(zhǔn)制式的視頻源(例如消費(fèi)級(jí)磁帶錄像機(jī))進(jìn)行同步處理和時(shí)鐘發(fā)生;(8)所有的制式標(biāo)準(zhǔn)只需要同一頻率的晶振32.1l MHz或者24.576 MHz;(9)可進(jìn)行行場(chǎng)同步信號(hào)的探測(cè);(10)自動(dòng)進(jìn)行50/60 Hz場(chǎng)頻的檢測(cè),自動(dòng)進(jìn)行標(biāo)準(zhǔn)PAL制式和NTSC制式之間的轉(zhuǎn)換;(11)可對(duì)各種制式的視頻信號(hào)的亮度和色度進(jìn)行處理,這寫制式包括PAL BGDHIN,PAL N,PAL M,NTSC M,NTSC-Japan,NTSC4.43和SECAM;(12)自適應(yīng)的2/4路梳狀濾波器進(jìn)行二維的亮度或色度的分離,——增加了亮度和色度的帶寬以支持所有的PAL和NTSC制式標(biāo)準(zhǔn),——減少了串色和亮度失真;(13)PAL行延遲校正了相位錯(cuò)誤;(14)獨(dú)立的亮度對(duì)比度和飽和度調(diào)節(jié);(15)用戶可編程銳度調(diào)節(jié);(16)獨(dú)立的可對(duì)原始數(shù)據(jù)進(jìn)行獲取和偏移調(diào)節(jié);(17)可進(jìn)行行場(chǎng)縮放以適應(yīng)窗口大?。?18)支持4:2:2,4:1:1,4:2:0,4:1:0 YUV格式的輸出;(19)支持8位灰度圖像和原始CVBS數(shù)據(jù)的輸出;(20)支持軟件控制省電待機(jī)模式;(21)可通過I2C總線接受外部控制器的控制,速率可達(dá)400 kB/s。
本設(shè)計(jì)采用一路模擬輸入,輸入是PAL制式信號(hào),輸出是16位寬度的數(shù)字視頻圖像,可兼容8位寬度的數(shù)字視頻圖像,圖像尺寸大小可縮放。SAA7114通電后并非立即對(duì)輸入的視頻信號(hào)進(jìn)行A/D轉(zhuǎn)換,輸出數(shù)字視頻信號(hào),而是要對(duì)其內(nèi)部的寄存器進(jìn)行設(shè)置才能夠進(jìn)行正常工作。本設(shè)計(jì)采用I2C總線對(duì)片內(nèi)的寄存器進(jìn)行設(shè)置。
1.2 存儲(chǔ)單元
經(jīng)過A/D轉(zhuǎn)化過的數(shù)字視頻圖像,采用YUV格式輸出時(shí),需用2 bit表示,在圖像處理領(lǐng)域,通常只用1 bit表示黑白圖像,為了兼容彩色圖像采集模式,數(shù)據(jù)存儲(chǔ)空間按照彩色圖像的數(shù)據(jù)量進(jìn)行設(shè)計(jì)。每幀圖像為720×576×1*05 000 bit×16 bit,存儲(chǔ)器可采用雙口FIFO、雙口SRAM,但考慮到圖像的數(shù)據(jù)量及成本,采用兩片SRAM構(gòu)成乒乓式存儲(chǔ)結(jié)構(gòu)。雙緩存結(jié)構(gòu)常用于高速大容量數(shù)據(jù)傳輸中。因此采用兩片容量為512 kbit×16 bit的SRAM構(gòu)成乒乓存儲(chǔ)單元。這里只截取640×480像素圖像,因此采用512 000 bit×16 bit的SRAM是可以完成圖像的存儲(chǔ)與傳輸。
1.3 數(shù)據(jù)傳輸
本設(shè)計(jì)采用Cypress公司的USB2.O控制器芯片CY7C68013,該片集成有包含8.5 kB RAM增強(qiáng)型8051微處理器,4 kB的FIFO存儲(chǔ)器,通用可編程接口(GPIF),串行接口引擎(SIE)和USB2.0收發(fā)器。
芯片工作在Slave FIFO的接口方式下,在該模式下外部邏輯直接控制接口芯片內(nèi)部的FIFO。其工作過程是,當(dāng)USB設(shè)備接入計(jì)算機(jī)時(shí),計(jì)算機(jī)和USB設(shè)備之間產(chǎn)生枚舉過程,計(jì)算機(jī)檢測(cè)到有設(shè)備接入,自動(dòng)發(fā)出查詢請(qǐng)求,USB設(shè)備回應(yīng)請(qǐng)求,返回設(shè)備的Verdor ID和Product ID,計(jì)算機(jī)據(jù)此裝載相應(yīng)的驅(qū)動(dòng)程序,完成重枚舉過程。計(jì)算機(jī)通過USB發(fā)出采集指令后,啟動(dòng)A/D和FPGA,紅外圖像的一幀經(jīng)過SAA7114處理送到SRAM,然后通過USB芯片上傳給計(jì)算機(jī)。在上傳過程中,兩片SRAM分別存儲(chǔ)一幀圖像的奇偶場(chǎng),當(dāng)一片用于存儲(chǔ)時(shí),另一片用于傳輸已存儲(chǔ)的圖像,如此往復(fù)完成實(shí)時(shí)視頻圖像采集。
1.4 現(xiàn)場(chǎng)可編程門陣列單元
FPGA完成的邏輯功能包括:對(duì)SAA7114進(jìn)行配置,將A/D轉(zhuǎn)換后的數(shù)字視頻流變換成固定分辨率的圖像視頻流及行場(chǎng)使能信號(hào),控制USB芯片及SRAM存儲(chǔ)芯片的讀寫時(shí)序。采用FPGA實(shí)現(xiàn)這些功能降低了PCB板的復(fù)雜程度,而且提高了系統(tǒng)的靈活性。
2 軟件設(shè)計(jì)
本系統(tǒng)的軟件由以下3部分組成。
2.1 固件程序設(shè)計(jì)
開發(fā)USB接口的應(yīng)用系統(tǒng)最重要的是USB驅(qū)動(dòng)程序和固件程序的編制。Cypress公司的開發(fā)包中提供專門的開發(fā)系統(tǒng),為開發(fā)固件提供了便利條件。在Cypress的主頁(yè)上有。EZ-USB開發(fā)工具包下載,提供了控制面板程序(ControlPanel)和KeilC51套裝軟件。在Keil uVision2環(huán)境下在Periph.c和Dscr.a(chǎn)5l文件中加入用戶代碼程序即可實(shí)現(xiàn)特定的功能,加快開發(fā)進(jìn)度。固件程序設(shè)計(jì)主要包括初始化、處理標(biāo)準(zhǔn)USB設(shè)備請(qǐng)求以及USB掛起時(shí)的電源管理,初始化FIFO及USB端點(diǎn)。CY7C68013具有軟配置的特性,當(dāng)設(shè)備與主機(jī)連接后,可裝載不同的固件使設(shè)備呈現(xiàn)不同的特性,方便外設(shè)固件的在線升級(jí)。
設(shè)置CY7C68013內(nèi)部相應(yīng)的寄存器,使其工作在USB2.0方式下,由固件程序應(yīng)答USB的傳輸,而不是USB內(nèi)核。芯片工作在Slave FIF0接口模式下。
框架函數(shù)分為3大類:任務(wù)分配器(以TD為字首)、標(biāo)準(zhǔn)設(shè)備請(qǐng)求分析(以DR為字首)和USB中斷處理(以ISR為字首)。
void TD_Init(void)
該函數(shù)在框架初始化期間調(diào)用,函數(shù)中可設(shè)置整體狀態(tài)變量的初始值,規(guī)定各種資源的使用及配置外圍接口的輸入/輸出等。
Void TD_poll(void)
設(shè)備工作期間,該函數(shù)重復(fù)調(diào)用,包含一個(gè)執(zhí)行外設(shè)功能的狀態(tài)機(jī)。
BOOL TD_Suspend(void)
該函數(shù)包含使設(shè)備進(jìn)入低功耗狀態(tài)的程序,然后返回True。返回False時(shí),阻止設(shè)備進(jìn)入掛起狀態(tài)。
void TD_Resume(void)
此函數(shù)使設(shè)備恢復(fù)到正常操作方式。
設(shè)備請(qǐng)求主要完成的任務(wù)是確定新的配置接口和端點(diǎn)。USB中斷完成用戶定義的中斷請(qǐng)求服務(wù)。本設(shè)計(jì)中使用的是SLAVE FIFO工作模式。
2.2 FPGA的程序設(shè)計(jì)
SAA7114不僅輸出了數(shù)字視頻流,還輸出了場(chǎng)同步信號(hào)、行同步信號(hào)、奇偶場(chǎng)信號(hào)和像素時(shí)鐘信號(hào),F(xiàn)PGA根據(jù)這些同步信號(hào)以及SRAM的片選、寫選通信號(hào)等來控制視頻數(shù)據(jù)流的時(shí)序,完成圖像采集、緩存和上傳。
2.3 上位機(jī)驅(qū)動(dòng)程序設(shè)計(jì)和應(yīng)用程序設(shè)計(jì)
利用VC++6.O對(duì)Cypress提供的GPD重新擴(kuò)充生成定制的驅(qū)動(dòng)程序。應(yīng)用程序是通過I/O控制調(diào)用訪問USB設(shè)備完成紅外視頻的采集、處理、顯示及存儲(chǔ)。
3 結(jié)束語
該系統(tǒng)能夠完成圖像的采集、傳輸、存儲(chǔ)等要求,達(dá)到了設(shè)計(jì)的數(shù)據(jù)傳輸要求。系統(tǒng)具有集成度高、靈活性好、即插即用與自動(dòng)配置等優(yōu)點(diǎn)。但圖像在高分辨率的情況下數(shù)據(jù)量較大,當(dāng)PC連接有多個(gè)USB高速設(shè)備時(shí)對(duì)帶寬的要求較高,可先將數(shù)據(jù)壓縮后再上傳。
-
FPGA
+關(guān)注
關(guān)注
1646文章
22053瀏覽量
618764 -
usb
+關(guān)注
關(guān)注
60文章
8193瀏覽量
273160 -
總線
+關(guān)注
關(guān)注
10文章
2961瀏覽量
89797
發(fā)布評(píng)論請(qǐng)先 登錄
DSP+FPGA+ASIC設(shè)計(jì)的實(shí)時(shí)紅外圖像處理系統(tǒng)
用單片機(jī)實(shí)現(xiàn)USB2.0通訊的全數(shù)字圖像的實(shí)時(shí)采集
怎么設(shè)計(jì)多DSP紅外實(shí)時(shí)圖像處理系統(tǒng)?
如何設(shè)計(jì)多DSP紅外實(shí)時(shí)圖像處理系統(tǒng)?
USB2.0 接口和DSP 構(gòu)成的高速數(shù)據(jù)采集系統(tǒng)
基于USB2.0 的CMOS圖像采集系統(tǒng)的實(shí)現(xiàn)
基于USB2.0的高速圖像傳輸系統(tǒng)設(shè)計(jì)
基于USB2.0與FPGA技術(shù)的高速數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)

基于USB2.0的紅外數(shù)據(jù)傳輸系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

基于DSP和USB2.0高速數(shù)據(jù)采集處理系統(tǒng)
一種基于USB2.0的視頻圖像處理芯片設(shè)計(jì)

基于LabVIEW與USB2.0的DSP數(shù)據(jù)采集與處理系統(tǒng)
基于USB2.0的CMOS圖像采集系統(tǒng)的設(shè)計(jì)
如何使用FPGA和PCI總線實(shí)現(xiàn)天文圖像實(shí)時(shí)采集與處理系統(tǒng)的設(shè)計(jì)

評(píng)論