博客專欄

EEPW首頁(yè) > 博客 > LabVIEW輪廓分析與比較(基礎(chǔ)篇—8)

LabVIEW輪廓分析與比較(基礎(chǔ)篇—8)

發(fā)布人:美男子玩編程 時(shí)間:2022-06-22 來(lái)源:工程師 發(fā)布文章

輪廓(Contour)是指可以在圖像中勾勒出目標(biāo)外形的一組相互連接的曲線(Curve)這些曲線由一系列目標(biāo)物的邊緣點(diǎn)組成。由曲線構(gòu)成的輪廓通常會(huì)勾勒出被測(cè)目標(biāo)的外形(Shape)。因此,基于提取的目標(biāo)輪廓,不僅可實(shí)現(xiàn)圖像分割,還能實(shí)現(xiàn)尺寸測(cè)量、缺陷檢測(cè)以及目標(biāo)的輪廓分析、匹配和輪廓分類(lèi)等機(jī)器視覺(jué)應(yīng)用。


例如,可以將觀測(cè)目標(biāo)的輪廓與輪廓模板或擬合的曲線進(jìn)行對(duì)比,以判斷目標(biāo)是否存在或?qū)ζ滟|(zhì)量進(jìn)行檢測(cè)。也可以通過(guò)檢測(cè)目標(biāo)輪廓的周長(zhǎng)、半徑、曲率和角度等關(guān)鍵尺寸信息來(lái)判定其是否合格。此類(lèi)應(yīng)用的實(shí)現(xiàn)過(guò)程常涉及目標(biāo)的輪廓提取、輪廓匹配以及分類(lèi)等技術(shù)。


圖片


Nl Vision為輪廓提取、輪廓比較和輪廓分析分類(lèi)提供了專門(mén)的函數(shù)集,這些VI位于LabVIEW的視覺(jué)與運(yùn)動(dòng)→Machine Vision→Contour Analysis函數(shù)選板中,如下圖所示:


圖片


函數(shù)說(shuō)明及使用可參見(jiàn)幫助手冊(cè): 


圖片


IMAQ Extract Contour封裝了輪廓提取過(guò)程,包括種子點(diǎn)搜索、曲線追蹤、曲線連接和輪廓選擇幾個(gè)步驟。經(jīng)IMAQ Extract Contour可選出離搜索起點(diǎn)最近、長(zhǎng)度最長(zhǎng)或平均梯度最強(qiáng)的3類(lèi)目標(biāo)輪廓,被提取出的輪廓信息會(huì)被附加在內(nèi)存中的圖像之后供后續(xù)處理過(guò)程使用。


輪廓可以參與兩種比較運(yùn)算,一種是與基于輪廓像素點(diǎn)擬合得到的理想曲線進(jìn)行比較,另一種是與輪廓模板進(jìn)行比較。無(wú)論何種情況下進(jìn)行輪廓比較,都逐點(diǎn)比較輪廓與曲線或模板上對(duì)應(yīng)點(diǎn)之間的距離,并根據(jù)設(shè)定的距離范圍來(lái)判斷被測(cè)目標(biāo)輪廓的偏離。


通過(guò)比較易拉罐的輪廓與基于輪廓像素?cái)M合得到的圓形曲線,并根據(jù)它們之間的最大距離來(lái)判斷易拉罐的質(zhì)量的案例,了解NI Vision自帶的輪廓與擬合曲線比較的使用方法,程序設(shè)計(jì)思路如下所示:

  • 程序一開(kāi)始先從指定的文件夾中讀取待測(cè)圖像文件,然后使用IMAQ ExtractContour提取出環(huán)形ROI中最長(zhǎng)的易拉罐輪廓;

  • IMAQ Fit Contour則從文件中讀取出輪廓信息,并基于這些點(diǎn)擬合出圓形曲線。

    該圓形曲線作為判斷合格易拉罐的參照標(biāo)準(zhǔn)被保存在內(nèi)存中的圖像之后,供后續(xù)過(guò)程使用;

  • IMAQ Compute Contour Distances可以從內(nèi)存圖像數(shù)據(jù)中提取出輪廓和曲線信息,并計(jì)算它們之間的距離;

  • For循環(huán)檢查各個(gè)對(duì)應(yīng)點(diǎn)之間的距離是否超出設(shè)定的最大限度,并顯示距離曲線。

    若有任何兩點(diǎn)之間的距離超限,就將測(cè)試結(jié)果設(shè)置為Fail;

  • IMAQ Overlay Contour和Overlay Point withUser Specified Size.vi在圖像中通過(guò)無(wú)損圖層的形式顯示出輪廓,并標(biāo)出距離超限的輪廓點(diǎn)。


程序設(shè)計(jì)如下所示:


圖片


通過(guò)運(yùn)行程序,調(diào)整While循環(huán)的延時(shí),可以觀察程序的運(yùn)行結(jié)果,效果如下所示:圖片


因此在輪廓學(xué)習(xí)過(guò)程中,除了要收集標(biāo)準(zhǔn)位置的輪廓信息,還要基于標(biāo)準(zhǔn)的參考目標(biāo),計(jì)算縮放或旋轉(zhuǎn)情況目標(biāo)的輪廓信息,以支持視場(chǎng)中目標(biāo)輪廓的各種姿態(tài)。默認(rèn)情況下,Nl Vision可支持縮放量為原目標(biāo)的±25%,且在視場(chǎng)中360°旋轉(zhuǎn)的目標(biāo)。程序支持的旋轉(zhuǎn)角度和縮放比例越大,其執(zhí)行時(shí)間就會(huì)越長(zhǎng)。設(shè)計(jì)過(guò)程中,要根據(jù)實(shí)際情況盡可能限制旋轉(zhuǎn)角度和縮放比例,必要的時(shí)候還要與算法的速度進(jìn)行權(quán)衡取舍。


*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。



關(guān)鍵詞: LabVIEW

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉