當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]LabVIEW應(yīng)用于實(shí)時(shí)圖像采集及處理系統(tǒng)

     摘 要:本文在LabVIEW和NI-IMAQ Vision軟件平臺(tái)下,利用通用圖像采集卡開(kāi)發(fā)一種圖像實(shí)時(shí)采集處理虛擬儀器系統(tǒng)。通過(guò)調(diào)用動(dòng)態(tài)鏈接庫(kù)驅(qū)動(dòng)通用圖像采集卡完成圖像采集,采集圖像的幀速率達(dá)到25幀每秒。利用NI-IMAQ Vision視頻處理模塊,進(jìn)行圖像處理,以完成光電探測(cè)器的標(biāo)定。該系統(tǒng)具有靈活性強(qiáng)、可靠性高、性價(jià)比高等優(yōu)點(diǎn)。

  1.引言

  美國(guó)國(guó)家儀器(NI)公司的虛擬儀器開(kāi)發(fā)平臺(tái)LabVIEW,使用圖形化編程語(yǔ)言編程,界面友好,簡(jiǎn)單易學(xué),配套的圖像處理軟件包能提供豐富的圖像處理與分析算法函數(shù),極大地方便了用戶,使構(gòu)建圖像處理與分析系統(tǒng)容易、靈活、程序移植性好,大大縮短了系統(tǒng)開(kāi)發(fā)周期。在推出應(yīng)用軟件的基礎(chǔ)上,NI公司又推出了圖像采集卡,對(duì)于NI公司的圖像采集卡,可以直接使用采集卡自帶的驅(qū)動(dòng)以及LabVIEW中的DAQ庫(kù)直接對(duì)端口進(jìn)行操作。

  但由于NI公司的圖像采集卡成本很高,大多用戶難以接受,因此硬件平臺(tái)往往采用通用圖像采集卡,軟件方面的圖像處理程序仍采用LabVIEW以及視頻處理模塊編寫。本文正是基于這樣的目的,提出了一種在LabVIEW環(huán)境下驅(qū)動(dòng)通用圖像采集卡的方案,在TDS642EVM高速DSP視頻處理板卡的平臺(tái)下,完成實(shí)時(shí)圖像采集及處理。

  在圖象處理的工作中主要完成對(duì)CCD光電探測(cè)器的輻射標(biāo)定。由于探測(cè)器在自然環(huán)境下獲取圖像時(shí),會(huì)受到來(lái)自大氣干擾,自身暗電流,熱噪聲等影響,使CCD像元所輸出信號(hào)的數(shù)值量化值與實(shí)際探測(cè)目標(biāo)輻射亮度之間存在差異,所以要得到目標(biāo)的精確圖像就必須對(duì)探測(cè)器進(jìn)行輻射標(biāo)定。

  2.圖像采集卡簡(jiǎn)介

  聞亭公司TDS642EVM(簡(jiǎn)稱642)多路實(shí)時(shí)視頻處理板卡是基于DSP TMS320DM642芯片設(shè)計(jì)的*估開(kāi)發(fā)板。計(jì)算能力可達(dá)到4Gips,板上的視頻接口和視頻編解碼芯片Philips SAA7115H相連,實(shí)現(xiàn)實(shí)時(shí)多路視頻圖像采集功能,支持多種PAL,NTSC和SECAM視頻標(biāo)準(zhǔn)。本系統(tǒng)通過(guò)642的PCI接口與主機(jī)進(jìn)行數(shù)據(jù)交換。PCI支持“即插即用(PnP)”自動(dòng)配置功能,使圖像采集板的配置變得更加方便,其一切資源需求的設(shè)置工作在系統(tǒng)初啟時(shí)交由BIOS處理, 無(wú)需用戶進(jìn)行繁瑣的開(kāi)關(guān)與跳線操作。PCI接口的海量數(shù)據(jù)吞吐,為其完成實(shí)時(shí)圖像采集和處理提供保證。

  3.系統(tǒng)組成及工作原理

圖1. 圖像采集及實(shí)時(shí)處理系統(tǒng)框圖

  圖像采集的過(guò)程也就是圖像采集板卡對(duì)來(lái)自CCD的標(biāo)準(zhǔn)視頻信號(hào)(PAL制式)進(jìn)行模數(shù)轉(zhuǎn)換的過(guò)程,將量化后的數(shù)據(jù)通過(guò)PCI總線傳入計(jì)算機(jī)內(nèi)存,然后通過(guò)編制的應(yīng)用程序讀取顯示。

  如圖1所示, 彩色CCD相機(jī)輸出的視頻模擬信號(hào)經(jīng)解碼器SAA7115轉(zhuǎn)換為數(shù)字信號(hào)并輸入到642芯片中, 642將處理好的實(shí)時(shí)數(shù)字圖像信號(hào)輸出到編碼器, 由編碼器將數(shù)字信號(hào)轉(zhuǎn)化為標(biāo)準(zhǔn)的PAL制式Y(jié)CbCr視頻信號(hào)輸出到LCD上, 與此同時(shí), 輸出的Y-Cb-Cr格式數(shù)字視頻信號(hào)經(jīng)過(guò)視頻端口的內(nèi)部FIFO緩沖后,由642通過(guò)EDMA將數(shù)據(jù)傳送到片外同步動(dòng)態(tài)存儲(chǔ)器芯片SDRAM中,其中包括四組數(shù)據(jù),分別是Sem_標(biāo)志變量(8bit);Y: Cb: Cr(4:1:1)圖像信號(hào):Y(720*574*8bit)數(shù)組,Cb(360*287*8bit)數(shù)組,Cr(360*287*8bit)數(shù)組,分別存儲(chǔ)在SDRAM中的0x80003804,0x8102E000,0x81092E80,0x810AC280地址,以供應(yīng)用程序使用。

  視頻采集應(yīng)用程序由LabVIEW編制完成。在需要進(jìn)行圖像采集時(shí),LabVIEW發(fā)送讀取SDRAM中存儲(chǔ)的YCbCr格式圖像數(shù)據(jù)的請(qǐng)求,642獲得請(qǐng)求后,開(kāi)始采集圖像并將采集到的YCbCr數(shù)值存儲(chǔ)到相應(yīng)的內(nèi)存地址,在642完成整一幀的圖像采集之后,將SDRAM中的標(biāo)志變量Sem設(shè)定為0,LabVIEW在這個(gè)過(guò)程中循環(huán)讀取標(biāo)志變量的值,當(dāng)為0時(shí),則從SDRAM中獲得圖像數(shù)據(jù),也就是Y, Cb, Cr三個(gè)數(shù)組的數(shù)據(jù),然后將其轉(zhuǎn)化為L(zhǎng)abVIEW能夠顯示的標(biāo)準(zhǔn)RGB格式輸出該圖像。[!--empirenews.page--]

  4.圖像采集及圖像處理

  4.1調(diào)用動(dòng)態(tài)鏈接庫(kù)驅(qū)動(dòng)圖像采集卡

  NI公司針對(duì)自己生產(chǎn)的圖像采集卡附帶有卡的驅(qū)動(dòng)和管理程序,對(duì)于普通的I/O卡,還不能直接被LabVIEW所應(yīng)用,必須采取其他方法。LabVIEW提供了4種調(diào)用外部程序代碼的途徑:端口直接操作、調(diào)用庫(kù)函數(shù)節(jié)點(diǎn)(Call Library Function Node即CLFN)調(diào)用DLL(Dynamic Link Library動(dòng)態(tài)連接庫(kù))、使用CIN(Code Interface Node,外部代碼節(jié)點(diǎn)),調(diào)用Active X控件。其中端口直接操作,利用PortIn.Vi和PortOut.vi功能,此法應(yīng)用簡(jiǎn)單,但無(wú)法實(shí)現(xiàn)較復(fù)雜的接口功能。而采用動(dòng)態(tài)鏈接庫(kù),可以根據(jù)具體需要編寫適當(dāng)?shù)某绦颍`活利用LabVIEW的各項(xiàng)功能。較其余三種具有明顯的優(yōu)勢(shì)。用戶可以調(diào)用Windows標(biāo)準(zhǔn)的動(dòng)態(tài)連接庫(kù)(DLL),也可以調(diào)用用戶自己編制的DLL,實(shí)現(xiàn)LabVIEW與硬件的連接。

  建立一個(gè)DLL需要的文件有:①h函數(shù)聲明文件(可選,可包含在c源文件里);②c源文件(必需);③def模塊定義文件(如果是使用標(biāo)準(zhǔn)調(diào)用或函數(shù)輸出必需添加關(guān)鍵字__declspec (dllexport) 函數(shù)名)。H文件的作用是聲明DLL要實(shí)現(xiàn)的函數(shù)原型,供DLL編譯使用,同時(shí)還提供應(yīng)用程序編譯使用。C文件是實(shí)現(xiàn)具體文件的源文件,它有一個(gè)入口點(diǎn)函數(shù),在DLL被初次調(diào)用的運(yùn)行,做一些初始化工作。一般情況下,用戶無(wú)須做什么初始化工作,只需保留入口點(diǎn)函數(shù)框架即可。def文件是DLL項(xiàng)目中比較特殊的文件,它用來(lái)定義該DLL項(xiàng)目將輸出哪些函數(shù),只有該文件列出的函數(shù)才能被應(yīng)用函數(shù)調(diào)用。要輸出的函數(shù)名列在該文件EXPORTS關(guān)鍵字下面。

  本系統(tǒng)在LabVIEW平臺(tái)下調(diào)用動(dòng)態(tài)鏈接庫(kù)實(shí)現(xiàn)圖像數(shù)據(jù)的采集主要分為五步:1.初始化并打開(kāi)設(shè)備(DM642圖像采集卡); 2.讀取標(biāo)志信號(hào)位,看是否初始化為默認(rèn)值3.寫入標(biāo)志信號(hào)位,進(jìn)行圖像數(shù)據(jù)采集;4.對(duì)SDRAM中所存儲(chǔ)的圖像數(shù)據(jù)進(jìn)行讀取;5.關(guān)閉句柄并釋放端口資源。主要調(diào)用動(dòng)態(tài)鏈接庫(kù)sd_pci64.dll的目標(biāo)函數(shù)有PCI64_Open,PCI64_MemRead32和PCI64_Close,函數(shù)功能如下表所示:

  函數(shù)的具體參數(shù)如下:

  ①PCI64_API INT32 PCI64_Open( int BoardNum, PCI64_HANDLE * pHndl );

  BoardNum板口號(hào)(0-3),* pHndl 返回句柄的無(wú)符號(hào)指針,當(dāng)返回值為0時(shí),表示打開(kāi)端口成功,非0時(shí),表示失敗。

 ?、赑CI64_API INT32 PCI64_MemRead32( PCI64_HANDLE Hndl, UINT32 Taddr, UINT32 Count , UINT32 * pData );

  獲取由PCI64_Open傳遞的句柄指針,對(duì)目標(biāo)地址存儲(chǔ)的數(shù)據(jù)進(jìn)行讀取,需注意的是目標(biāo)地址的尋址空間在4M之內(nèi),必須初始化一個(gè)所需目標(biāo)數(shù)據(jù)大小的無(wú)符號(hào)32位數(shù)組空間。同樣返回值為0時(shí),表示成功,非0表示失敗。

 ?、跴CI64_API INT32 PCI64_Close( PCI64_HANDLE Hndl );

  需要注意的是,在每次調(diào)用PCI64_MemRead32完成讀取后,都要將端口關(guān)閉,釋放地址空間。

  具體的調(diào)用過(guò)程如下:首先在新建的VI的Block Diagram中,F(xiàn)unction> Advanced子菜單中添加Call Library Function Node控件,然后對(duì)其進(jìn)行配置,添加該節(jié)點(diǎn)后進(jìn)行配置的對(duì)話框如下圖2所示:

圖2調(diào)用CLFN配置框圖[!--empirenews.page--]

  分別對(duì)DLLs文件名稱及存放路徑,函數(shù)調(diào)用方式,需要調(diào)用的目標(biāo)函數(shù)的名稱,參數(shù)個(gè)數(shù),每個(gè)參數(shù)的類型,數(shù)據(jù)類型及返回值類型進(jìn)行設(shè)置。設(shè)置完成后單擊“OK”返回LabVIEW 的設(shè)計(jì)面板(diagram)中。此時(shí),Call Library Function已經(jīng)根據(jù)剛才配置好的參數(shù)個(gè)數(shù)和類型設(shè)置好了輸人輸出端口,和其它的LabVIEW節(jié)點(diǎn)圖標(biāo)一樣,只需要將其對(duì)應(yīng)的參數(shù)連線即可。

  程序調(diào)用sd_pci64.dll的目標(biāo)函數(shù)PCI64_Open,PCI64_MemRead32和PCI64_Close完成對(duì)指定地址空間0x8102E000化為十進(jìn)制21*49280,103320大小的數(shù)據(jù)讀取,最后將讀取的數(shù)據(jù)存儲(chǔ)在無(wú)符號(hào)32位pData數(shù)組里面。

  在LabVIEW中利用CLFN節(jié)點(diǎn)可以較容易地實(shí)現(xiàn)訪問(wèn)動(dòng)態(tài)連接庫(kù)(DLL)。由于DLL是一個(gè)外部模塊,提高了程序的開(kāi)發(fā)效率,而且在購(gòu)買普通數(shù)據(jù)采集卡的時(shí)候,廠商一般會(huì)給用戶提供動(dòng)態(tài)連接庫(kù)(DLL),所以研究在LabVIEW平臺(tái)下通過(guò)調(diào)用動(dòng)態(tài)鏈接庫(kù)功能來(lái)驅(qū)動(dòng)普通圖像采集卡實(shí)現(xiàn)圖像采集的方法,成為值得推廣的方法,具有重要意義。

  4.2 CCD圖象標(biāo)定

  完成CCD圖像數(shù)據(jù)的標(biāo)定,數(shù)字圖象處理是該標(biāo)定過(guò)程的關(guān)鍵,NI公司提供的圖象處理模塊IMAQ Vision為L(zhǎng)abVIEW平臺(tái)提供了完整的圖像處理函數(shù)庫(kù),如各類邊緣檢測(cè)算子、自動(dòng)閾值處理、各種形態(tài)學(xué)算法、濾波器、FFT等,該庫(kù)包含大量當(dāng)前證明成功的理論算法,使用戶無(wú)需專業(yè)編程經(jīng)驗(yàn),即可迅速開(kāi)發(fā)完成優(yōu)秀的、適合本專業(yè)的圖像處理與分析系統(tǒng)。

  在本系統(tǒng)中,對(duì)CCD光電探測(cè)器相對(duì)輻射定標(biāo)的步驟如下:分別在標(biāo)準(zhǔn)光源照射和普通定標(biāo)環(huán)境下各采集10幅圖像,經(jīng)過(guò)自動(dòng)閾值處理和二值化,消除暗電流熱噪聲等因素的影響,取處理完得到的10幅圖像的均值作為主標(biāo)準(zhǔn)圖像和主參考圖像。對(duì)圖像上每個(gè)像素的灰度值,通過(guò)比對(duì)校正,完成CCD像元的不均勻響應(yīng)校正,求出各自的標(biāo)定系數(shù),繪出灰度直方圖。具體程序的前面板如圖3所示:


圖3 程序前面板

  5.結(jié)論

  本文使用TDS642EVM圖像采集卡在LabVIEW平臺(tái)上開(kāi)發(fā)出一個(gè)穩(wěn)定可靠、經(jīng)濟(jì)靈活的實(shí)時(shí)圖像采集及處理系統(tǒng)。通過(guò)調(diào)用動(dòng)態(tài)鏈接庫(kù),驅(qū)動(dòng)圖像采集卡完成圖像采集;利用NI-IMAQ Vision提供的強(qiáng)大的圖像處理功能通過(guò)實(shí)時(shí)圖像處理完成對(duì)CCD光電探測(cè)器的輻射標(biāo)定。LabVIEW的開(kāi)放性,高度的編程靈活性和良好的界面,使高級(jí)復(fù)雜的應(yīng)用開(kāi)發(fā)變得簡(jiǎn)單;動(dòng)態(tài)鏈接庫(kù)機(jī)制使LabVIEW在對(duì)通用圖像采集卡的支持上有了一個(gè)通用可行的途徑。

  本文作者創(chuàng)新點(diǎn):設(shè)計(jì)一種在LabVIEW平臺(tái)完成對(duì)普通圖像采集卡的實(shí)時(shí)圖像采集及光電探測(cè)器的輻射標(biāo)定系統(tǒng)。


 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉