目錄
1、原理
2、實踐
1、原理
色彩定位(Color Location)是指通過對色彩匹配功能進行增強和擴展,以快速定位影像中特定顏色區域的程序,
色彩匹配通常將模板色彩與某一已知影像區域的顏色進行對比,與色彩匹配不同,色彩定位可以從影像中搜索與模板顏色相同或相近的區域,它將顏色匹配的功能擴展到被測物件位置未知的場合,與色彩匹配的實作程序類似,色彩定位也包括學習和搜索兩個程序,
- 學習程序提取要搜索的模板影像色譜;
- 搜索程序則會在采集到的影像中快速搜索與模板顏色匹配的區域,并回傳匹配區域的匹配度,
一般的搜索程序會從左到右、從上到下在影像中逐像素移動模板,對于每次移動,都使用色彩匹配演算法將模板與其覆寫區域的色譜進行比較,并最終根據計算得到的匹配度來確定與模板顏色相同或相近的區域,
然而,在影像中逐像素移動模板搜索匹配區域的程序計算量很大且非常耗時,因此還需要對搜索程序進一步進行優化,才能實作色彩的快速定位,
不難想到使用由粗到細(Coarse-to-Fine)的方法來優化搜索程序,具體來說,就是先通過下采樣和步進搜索的方法快速確定可能的候選匹配位置,然后再對各個候選區域進行精細色彩匹配,以最終確定最佳色彩匹配位置,
- 下采樣方法是指在影像中移動模板到某一位置時,僅用模板所覆寫的影像區域中的部分像素顏色資訊與模板的色譜進行比較;
- 步進搜索是指搜索程序中,模板并非逐像素在影像中移動,而是每次移動都會根據設定的步長跳過多個像素才進行色彩匹配,
基于下采樣和跳躍搜索快速匹配后,可先得到所有可能的候選區域,有時候這些區域的分值甚至具有很低的匹配分值,然而,在后續的精細匹配程序中,這些候選區域的匹配度會再次根據原影像資訊逐像素被更新,從而最終確定最佳匹配區域,下圖顯示了色彩定位的程序:

基于色彩定位的顏色識別應用,可以從影像中搜索所有與模板顏色匹配的區域,并為其分配標記,在實際應用中,很多被測件都含有用顏色編碼的標記,只要預先知道標記的種類,并為各種標記找一個模板影像,就能從影像中識別各種標記的類別,例如,模具彈簧在生產程序中會根據荷重指標的不同被標記為黃色、藍色、紅色、綠色、棕色等不同的顏色,因此,可以通過色彩定位在影像中找到出現的顏色標記,并使用此資訊來確定彈簧的荷重型別,
若將色彩定位和機械手臂或電機結合,還可以實作基于顏色的目標分類應用,例如,在彩色鉛筆生產程序中,可以監測生產線上的鉛筆顏色,由機械手臂挑選出同一顏色的鉛筆,此外,在制藥和塑料加工行業中,也常對膠囊和塑料工件按顏色進行分類,
2、實踐
NI Vision使用位于LabVIEW的視覺與運動→Machine Vision→Searching & Matching函式選板中的IMAQ Setup LearnColor Pattern、lMAQ Learn Color Pattern、IMAQ Setup Match Color Pattern和IMAQ Match Color Pattern封裝了色彩定位和色彩模式匹配的學習和搜索程序,使用這些函式可創建基于色彩定位的顏色識別、顏色分類(Color Sorting)和顏色檢測機器視覺應用,

函式說明及使用可參見幫助手冊:

色彩定位用于進行質量檢測時,一般通過統計影像中待測彩色目標的數量并與預期的數量進行對比來判定檢測結果,
通過一個使用色彩定位進行膠囊包裝質量檢測的實體,它可搜索綠色膠囊的總數,并通過與預期數量對比來判斷包裝的藥品質量是否合格,了解色彩定位的使用方法,程式設計思路如下所示:
- 程式一開始先將包含綠色膠囊的模板影像讀入記憶體,在呼叫IMAQ Setup LearnColor Pattern配置了學習模板的顏色資訊的方式后,由IMAQ Learn Color Pattern完成學習程序;
- IMAQ Setup Match Color Pattern對色彩定位程序的各種引數進行配置后,While回圈會逐一將待測影像檔案夾中的影像讀入記憶體,并呼叫IMAQ Match ColorPattern定位其中顏色與模板相同的12個膠囊;
- 當所封裝的膠囊中含有不同顏色的其他藥品或膠囊被漏裝時,顏色定位程序回傳的結果將不會是12個;
- 因為膠囊的確切位置對檢測結果并不重要,因此,通過色彩定位回傳的匹配數即可判斷所包裝的藥品是否合格,
程式實作如下所示:

程式運行效果如下所示:
程式資源下載請參見:https://download.csdn.net/download/m0_38106923/20715423
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/292142.html
標籤:其他
