搗鼓這個(gè)東西1個(gè)多禮拜了。從開始連NI是啥都不知道,瞪著MAX不知編程界面在哪,到后來(lái)反復(fù)折騰VAS、LV、VDM安裝順序(剛開先裝VAS后裝LV找不到imaq的vi還不知道啥原因),然后看網(wǎng)上的教程,不知道各種圖標(biāo)是什么函數(shù),到現(xiàn)在終于把USB相機(jī)采集圖像的這個(gè)小玩意做出來(lái),中間走了不少?gòu)澛?。這里姑且把思路整理一下,重做一遍全當(dāng)復(fù)習(xí)之用,也適合毫無(wú)基礎(chǔ)的人看。
安裝軟件推薦(這里就不附上鏈接了)
1.安裝Labview中文版:
2.安裝Vision Acquisition Software (VAS)
我的理解這個(gè)東西的作用主要是提供硬件驅(qū)動(dòng)
3.安裝Vision Development Module (VDM)
我的理解這個(gè)東西的作用主要是提供機(jī)器視覺相關(guān)的函數(shù)(包括Labview與其他編程工具)
*注意:一定要先裝Labview,如果順序不對(duì),會(huì)出現(xiàn)LV中無(wú)IMAQ函數(shù)Vision控件等不良后果。以上組件安裝評(píng)估版后使用NI License Activator破解激活,自行網(wǎng)上搜索。
使用USB相機(jī)需要額外安裝以下兩個(gè)玩意兒!
4.安裝imaq USB,NI為USB相機(jī)做的補(bǔ)充包。
*注意:WIN7下安裝方法有所不同。
使用USB相機(jī)采集圖像
打開NI MAX看看是否可以識(shí)別相機(jī),能識(shí)別到就可以關(guān)掉NI MAX了。
打開Labview建立一個(gè)空白vi
Labview的編程界面有兩個(gè):前面板和程序框圖,如果只有前面板,請(qǐng)點(diǎn)擊窗口菜單下“顯示程序框圖”
先給沒用過(guò)Labview的人說(shuō)句題外話…LV編程有點(diǎn)象積木游戲…感覺就是把你需要的積木(控件、函數(shù))拿進(jìn)來(lái),然后合理地把他們拼起來(lái)(連接數(shù)據(jù)流)就行了。
在前面板添加image display控件(Vision菜單下),三選一,外觀不同而已。
添加一個(gè)取消按鈕(系統(tǒng)->布爾)標(biāo)簽和按鈕名按自己喜好改:
添加字符顯示控件:
前面板如圖
程序框圖里會(huì)出現(xiàn)對(duì)應(yīng)的控件
程序框圖中可以右鍵點(diǎn)控件圖標(biāo),取消“顯示為圖標(biāo)”可以簡(jiǎn)潔一些??丶秃瘮?shù)位置什么的自己根據(jù)編程需要隨便拖-U-。
控件這些就夠了,下面添加函數(shù)
首先枚舉計(jì)算機(jī)上USB相機(jī)設(shè)備:程序框圖中右擊空白處,視覺與運(yùn)動(dòng)->IMAQ USB->USB Enumerate。
這個(gè)函數(shù)輸出的是一維數(shù)組,所以要提取數(shù)組中的元素,使用數(shù)組->索引數(shù)組函數(shù)提取元素
添加USB相機(jī)初始化函數(shù):視覺與運(yùn)動(dòng)->IMAQ USB->IMAQ USB Init 添加完程序框圖上會(huì)有這些東西
把他們連起來(lái),方法是點(diǎn)一個(gè)函數(shù)邊框上的頭,然后點(diǎn)另外一個(gè) o =_.= o
這里可以打開vi的即時(shí)幫助
這樣當(dāng)你把鼠標(biāo)放在什么地方的時(shí)候他會(huì)告訴你一些有用的信息,比如某個(gè)輸入或輸出是何種數(shù)據(jù),何種格式。
初始化以后添加相機(jī)的USB snap,依然在IMAQ USB下,連接USB init和USBsnap的session
發(fā)現(xiàn)USB snap除session以外還需要image in輸入,實(shí)際上是需要圖像存儲(chǔ)的緩存。
使用IMAQ Create函數(shù)創(chuàng)建緩存:視覺與運(yùn)動(dòng)->Vision Utilities->Image Management
連上IMAQ Create和snap
這時(shí)可以看到程序框圖的運(yùn)行箭頭裂掉,說(shuō)明有錯(cuò)誤,點(diǎn)開以后可以看到錯(cuò)誤,提示IMAQ Create需要輸入。這是個(gè)會(huì)經(jīng)常用到的功能,幫你找到和修正錯(cuò)誤。
需要添加一個(gè)常量作為Image in輸入,這里有個(gè)便捷的方法:右擊IMAQ Create的紅色輸入端,點(diǎn)擊創(chuàng)建->常量
自己給常量改名,然后和IMAQ Create連接起來(lái)
添加USB Close函數(shù)(IMAQ USB下),將USB snap和image以及USB close連接起來(lái)。另外前面添加的數(shù)組索引和文本顯示控件也連接起來(lái)。
現(xiàn)在單擊運(yùn)行窗口應(yīng)該就可以執(zhí)行開啟USB相機(jī)->讀取相機(jī)名稱->顯示一幀圖像->關(guān)閉USB相機(jī)的功能。
接著使用while循環(huán)函數(shù)可間斷地顯示多幀圖像,在結(jié)構(gòu)結(jié)構(gòu)菜單下,框住如下部分
在框內(nèi)空白處添加延時(shí)函數(shù)
右擊延時(shí)函數(shù)左側(cè)輸入端,創(chuàng)建一個(gè)常量,改成一個(gè)時(shí)間,單位毫秒。同時(shí)連上TF和小紅圈,這個(gè)是點(diǎn)擊取消按鈕則停止循環(huán)的意思。
現(xiàn)在單擊運(yùn)行箭頭即可重復(fù)拍攝圖像,點(diǎn)擊停止按鈕中止。
下面添加一個(gè)Image dispose函數(shù)(與Image Create同路徑),用于釋放圖像緩存,放在循環(huán)框右側(cè),然后連上USB snap和Image dispose。
在對(duì)話框與用戶界面 菜單下添加簡(jiǎn)易錯(cuò)誤處理器與合并錯(cuò)誤兩個(gè)函數(shù),然后將相關(guān)的error in/out連接起來(lái)。
最后令USB Snap有錯(cuò)誤輸出時(shí),也中止循環(huán)。
由于error out是一個(gè)簇,需要從簇中提取單個(gè)status,因此需要添加一個(gè)簇解綁函數(shù)(在簇類與變體菜單下),再添加一個(gè)或函數(shù)(布爾菜單下)。將取消按鈕和錯(cuò)誤簇中解綁的status輸入至或函數(shù),或函數(shù)輸出與循環(huán)停止連接起來(lái)。
-
LabVIEW
+關(guān)注
關(guān)注
1975文章
3656瀏覽量
324602 -
機(jī)器視覺
+關(guān)注
關(guān)注
162文章
4396瀏覽量
120488 -
編程工具
+關(guān)注
關(guān)注
0文章
29瀏覽量
8588
原文標(biāo)題:厲害了!超強(qiáng)的LabVIEW圖像采集實(shí)戰(zhàn)總結(jié),大神們的操作就是不一般!
文章出處:【微信號(hào):vision263com,微信公眾號(hào):新機(jī)器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論