LabVIEW紋理分析(基礎(chǔ)篇—9)
紋理(Texture)是物體表面固有的特征之一。目前對(duì)于紋理尚無(wú)正式的定義,但一般認(rèn)為它是由許多相互連接且常周期性重復(fù)的單元構(gòu)成。與灰度特征不同,紋理不是基于單個(gè)像素點(diǎn)的特征,它通常與圖像的尺度關(guān)系密切,且具有區(qū)域性和統(tǒng)計(jì)特征。
通常來(lái)說(shuō),在放大后的圖像上可以觀察到目標(biāo)表面的紋理。而且一般來(lái)說(shuō),紋理特征需要在包含多個(gè)像素點(diǎn)的圖像區(qū)域中進(jìn)行灰度統(tǒng)計(jì)才能獲得。紋理特征的這種區(qū)域性可使特征匹配過(guò)程不會(huì)因局部的偏差而失敗。因此通過(guò)紋理分析,可對(duì)物體表面尺寸和形狀的變化進(jìn)行檢測(cè),如劃痕(Scratch)、裂紋(Crack)和污漬(Stain)等。
紋理分析常用于對(duì)具有不規(guī)則紋理圖案的目標(biāo)表面進(jìn)行檢測(cè),如瓷磚、紡織品、木材、紙張、塑料或玻璃的表面等。
多數(shù)基于紋理分析的機(jī)器視覺(jué)應(yīng)用使用紋理分類器(Texture Classifier)進(jìn)行檢測(cè)。紋理分類器可通過(guò)對(duì)無(wú)缺陷的標(biāo)準(zhǔn)樣本目標(biāo)進(jìn)行學(xué)習(xí)獲得,其中包含樣本的紋理特征信息。檢測(cè)時(shí),算法會(huì)將被測(cè)目標(biāo)中的紋理特征與紋理分類器中的特征信息進(jìn)行匹配,并將不能接受的區(qū)域標(biāo)識(shí)為缺陷。
通常來(lái)說(shuō),紋理分析過(guò)程會(huì)以目標(biāo)的表面圖像為輸入,并以二進(jìn)制大顆粒(Binary Large OBjects,BLOB)的形式輸出檢測(cè)結(jié)果。獲得缺陷部分的BLOB后,可以進(jìn)一步使用顆粒分析工具對(duì)其屬性、尺寸等進(jìn)行分析。
適用性強(qiáng)的紋理分析檢測(cè)過(guò)程不僅應(yīng)對(duì)于噪聲有較強(qiáng)的抵抗能力,還應(yīng)具有平移不變(Shift-Invariant)、旋轉(zhuǎn)不變(Rotate-Invariant)和尺度不變(Scale-Invariant)的性質(zhì)。也就是說(shuō),相較于紋理分類器中的紋理特征而言,即使被測(cè)目標(biāo)中的紋理特征垂直或水平移動(dòng),在平面內(nèi)旋轉(zhuǎn)或有一定比例的縮放,紋理分析檢測(cè)過(guò)程仍能繼續(xù)正確地識(shí)別它們。一般的紋理檢測(cè)過(guò)程都具有平移不變的性質(zhì),且能支持±5°的旋轉(zhuǎn)和±10°的縮放。
若要支持更大范圍的旋轉(zhuǎn)不變和尺度不變性,則要通過(guò)學(xué)習(xí)和訓(xùn)練過(guò)程,創(chuàng)建包含各個(gè)方向和比例紋理特征信息的紋理分類器。此外,還應(yīng)注意在紋理匹配過(guò)程的執(zhí)行速度與旋轉(zhuǎn)不變和尺度不變性范圍之間進(jìn)行平衡。
由于紋理特征與圖像的尺度、區(qū)域及灰度統(tǒng)計(jì)數(shù)據(jù)具有密切聯(lián)系,因此NI Vision使用離散小波變換和統(tǒng)計(jì)的方法來(lái)提取紋理特征并對(duì)其進(jìn)行分類檢測(cè)。一般的紋理檢測(cè)過(guò)程如下圖所示,主要包括以下步驟:
Nl Vision使用位于LabVIEW的視覺(jué)與運(yùn)動(dòng)→lmage Processing→Texture函數(shù)選板中的VI對(duì)上述過(guò)程進(jìn)行封裝,如下圖所示:
函數(shù)說(shuō)明及使用可參見(jiàn)幫助手冊(cè):
其中:
IMAQ Extract Wavelet Bands可執(zhí)行小波變換從紋理圖像中提取各種子帶圖像;
IMAQ Cooccurrence Matrix能計(jì)算圖像的共生矩陣和Haralick特征;
IMAQ Extract Texture Feature對(duì)子帶提取、共生矩陣計(jì)算和Haralick特征提取與連接進(jìn)行了集成,可直接返回計(jì)算得到的紋理特征;
IMAQDetect Texture Defect不僅集成了整個(gè)紋理特征的提取過(guò)程,還集成了按照紋理分類器對(duì)紋理進(jìn)行分類的過(guò)程,它能以二值圖像輸出檢測(cè)到的紋理缺陷。
通過(guò)一個(gè)墻壁紋理或缺陷檢測(cè)的實(shí)例,了解紋理分析的實(shí)現(xiàn)方法,程序設(shè)計(jì)思路如下所示:
程序一開(kāi)始先由IMAQ Read ClassifierFile從分類器文件Texture.clf中讀取事先訓(xùn)練好的紋理特征信息,并為后續(xù)處理分配內(nèi)存;
循環(huán)結(jié)構(gòu)中的代碼,逐一從文件夾中取出被測(cè)圖像,在用清除無(wú)損圖層后,由IMAQ Detect Texture Defect根據(jù)分類器對(duì)紋理進(jìn)行分類;
Nl Vision分類過(guò)程使用范圍為0~1000的識(shí)別得分(ldentification Score)來(lái)判別被測(cè)特征與某一類別的相似程度,當(dāng)紋理與合格的特征信息差別越大時(shí),說(shuō)明其越接近缺陷;
由此,程序中設(shè)置了最小缺陷分類識(shí)別得分為200,分類時(shí)任何得分等于或大于該閾值的像素均被識(shí)別為紋理缺陷。
程序設(shè)計(jì)如下所示:
*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。