LabVIEW彩色图像分割(基础篇—14)
基于目標顏色的彩色圖像分割常包括色彩閾值處理(Color Threshold)和色彩分割(Color Segmentation)兩種方法。
色彩閾值處理可以對圖像在色彩空間中的3個分量分別進行閾值處理,并返回一個8位的二值圖像。色彩分割則通過對比圖像中各像素的色彩特征與其周圍像素的色彩特征,或對比其與經訓練得到的色彩分類器信息,將圖像按色彩分割成不同的標記區域。
色彩閾值處理常用于從圖像中分割僅有一種顏色的目標,色彩分割則常用于從雜亂的背景中標記出具有多種顏色的目標,并對其進行機器視覺檢測或計數。
色彩分割過程主要包括色彩分類器訓練、色彩區域分割和分割區域后處理3個階段。
1、基于色彩樣本進行色彩分類器訓練;
2、確定檢測窗口大小(行列大小一般為奇數),在待測圖像上按設定的步長移動該窗口,計算檢測窗口所覆蓋區域的色彩特征,并將該值作為窗口中心像素(Pivot Pixel)的色彩特征值;
3、計算檢測窗口所覆蓋區域和與其相鄰的幾個窗口所覆蓋區域的色彩特征距離,并選取特征距離最短的窗口進行以下處理:
若最短特征距離小于預先設定的最大距離(Maximum Distance)閾值參數,就將該窗口中心像素的類別標簽賦值給檢測窗口的中心像素。
否則,基于色彩分類器對檢測窗口區域進行分類。若分類的識別可信度分值(ldentificationScore)大于預先設定的最小識別可信度分值(Minimum ldentification Score)閾值參數,就使用分類得到的類別標簽對檢測窗口中心像素進行標記,否則不對中心像素進行標記。
4、按照預先設定的尺寸參數,濾除不符合尺寸要求的區域,即可得到對各顏色區域的標記圖像(可以為8位、16位無符號類型或16位整型)。
整個過程按照下述流程執行:
上述過程中使用的最大距離閾值參數Dmax由訓練得到的色彩分類器信息確定。它是指可以被接受的相同類標簽窗口中心像素色彩特征間距的最大值,可通過下式計算:
最大距離閾值參數越大,意味著允許使用相鄰窗口的顏色類別標簽的像素越多。這可避免頻繁使用色彩分類器,并提高色彩分割的速度。但是,提高該參數值卻會犧牲色彩分割的準確性。
在實際應用中,常使用該參數的保守(Conservative)或激進(Aggressive)值。保守值將兩個距離最接近的訓練類別的間距定義為各類中樣本間距的最小值,激進值則將兩個距離最近的訓練類別的間距定義為各類中樣本間距的中間值。
此外,也可以通過為檢測窗口的移動設定步長或降低色彩特征的分辨率來提高色彩分割過程的整體速度。相對于逐像素在圖像中移動檢測窗口,以一定步長在圖像中移動檢測窗口的計算量會極大地減少。采用較低分辨率的色彩特征,也會減少計算量,提高色彩分割過程的實時性。
NI Vision提供了封裝色彩分割過程的函數IMAQ Color Segmentation Supervised和IMAQ Get Color Segmentation Distance,它們位于LabVIEW的視覺與運動→lmage Processing→Color Processing函數選板中,如如圖所示:
其中IMAQ Color Segmentation Supervised用于實現色彩分割過程,IMAQ Get ColorSegmentation Distance則用于基于色彩分類器計算色彩分割過程要用到的最大距離閾值參數Dmax。
函數的說明和使用可參見幫助文檔:
通過一個色彩分割的實例:根據餅干不同部分顏色的區別,分割出巧克力、烘焙程度較好和欠烘焙的區域,了解其使用方法,程序設計思路如下所示:
- 程序一開始先從色彩分類器文件Cookie.clf中讀取訓練得到的顏色類別等信息,并返回顏色分類器會話;
 - 隨后調用IMAQ Get Color Segmentation Distance基于分類器會話計算可以被接受的相同類標簽窗口中心像素色彩特征間距的最大值Dmax,并由IMAQ Color Segmentation Supervised完成色彩分割;
 - 分割過程采用大小為15×15的檢測窗口、10個像素大小的步長,并規定區域不能小于10個像素(最大為整個圖像);
 - 為了增強色彩分割過程輸出的標記圖像顯示效果,程序還為不同顏色類別指定了標記灰度值。
 
程序實現如下所示:
分割過程結束后,For循環統計所有符合要求的區域的灰度標記值,然后調用IMAQLabelToROI將這些標記區域轉換為ROI,并由IMAQ Group ROls將得到的ROl組合后交由IMAQ Overlay ROI以圖層的方式顯示在原圖像中。
觀察下圖顯示的程序運行結果,可以發現,餅干中的巧克力、烘焙程度較好和欠烘焙的區域已經被用不同的灰度值在輸出的圖像中進行了標記。不難想到,對標記圖像進行閾值化處理和顆粒分析,即可得到各種類型區域占整個餅干的比例。而基于此比例值,就能判斷生產線上餅干的質量是否合格。
上述實例中所使用的色彩分類器文件Cookie.clf可事先由NI色彩分類訓練器對餅干中不同部分的色彩進行訓練得到,可參見博文:LabVIEW色彩分類識別。
項目資源下載請參見:https://download.csdn.net/download/m0_38106923/20890565
總結
以上是生活随笔為你收集整理的LabVIEW彩色图像分割(基础篇—14)的全部內容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: LabVIEW实现PCB电路板元器件匹配
 - 下一篇: Python Qt GUI设计:将UI文