付興勇 任德均 嚴扎杰 陳儒俠 高永勛
摘 要:模板匹配是圖像處理中最基本與常用的匹配方法。為解決印刷、燙金字符與圖案在使用模板匹配方法檢測透明盒缺陷時,大量產品因字符、圖案邊緣效應干擾出現(xiàn)誤檢的問題,采用HALCON軟件編寫用于去除字符與圖案邊緣效應干擾的算法及透明盒缺陷檢測算法。經過生產流水線上的實際驗證,該算法可以有效避免因字符、圖案邊緣效應產生的誤檢問題,實現(xiàn)對透明盒缺陷快速、精確的自動化檢測,并剔除缺陷產品。
關鍵詞:模板匹配;HALCON;邊緣干擾;透明盒;缺陷檢測
DOI:10. 11907/rjdk. 181990
中圖分類號:TP317.4文獻標識碼:A文章編號:1672-7800(2019)003-0187-04
0 引言
根據(jù)國外調研機構 MarketsandMarkets 預測,2020 年全球機器視覺市場規(guī)模將達到 125 億美元,2025 年全球市場規(guī)模將超過 192 億美元,機器視覺技術未來發(fā)展空間巨大[1]。隨著全球制造中心向中國轉移,中國機器視覺市場開始成為繼北美、歐洲和日本之后,國際機器視覺廠商的重要目標市場[1-2]。
隨著數(shù)字圖像處理分析理論的逐步完善,機器視覺技術在工業(yè)在線檢測[3-4]及測量[5-6]方面的應用也越來越廣泛。在對模板匹配算法的研究中,浙江大學的孫煉杰、樊臻[7]對基于模板匹配的光纖收發(fā) PCB 板目標檢測進行研究;山東大學的丁筱玲等[8]對基于模板匹配的目標識別算法進行改進;河海大學的錢俞好等[9]通過檢測印刷碼改進模板匹配算法;華北計算技術研究所的蔣昭穎、郝福珍[10]使用模板匹配算法對傷票進行識別與定位;廣西科技大學的李厚君[11]對基于梯度模板匹配的眉毛識別方法進行研究;江蘇大學的安宗權、王勻[12]通過線激光與模板匹配方法對工件表面平坦度進行測量。模板匹配算法還可應用于車牌識別[13]、玉米螟識別[14]等眾多領域。
然而以上對于模板匹配算法的研究并不能實現(xiàn)對透明盒缺陷的檢測。針對透明盒特點以及字符、圖案印刷邊緣效應會對模板匹配產生干擾的問題,本文自主設計了一套將內外打光相結合的打光方案,并采用HACLON軟件編寫可用于去除邊緣效應干擾的算法與缺陷檢測算法,從而實現(xiàn)對透明盒缺陷快速、精確的檢測。
1 檢測系統(tǒng)組成與檢測流程
基于模板匹配的透明盒缺陷檢測系統(tǒng)需要實現(xiàn)對圖像的采集與處理,以及將處理后的結果發(fā)送給剔除模塊,剔除不合格產品,從而提高產品質量。硬件部分由多個模塊組成,主要包括:產品輸送模塊、圖像采集模塊、圖像處理模塊、電器控制模塊以及剔除模塊。產品首先由輸送帶運送到圖像采集模塊,當透明盒觸發(fā)傳感器擋板,氣缸伸出擋住透明盒;面光源在高速氣缸帶動下插入透明盒內部點亮,相機進行拍照;拍照結束后擋板氣缸與高速氣缸縮回,同時圖像處理模塊對獲取的圖像進行處理;當檢測出透明盒存在缺陷時,剔除模塊對產品進行剔除。硬件結構簡圖如圖1所示。
2 檢測算法與軟件
本系統(tǒng)采用HALCON圖像處理軟件對圖像進行處理,HALCON是世界公認具有最佳效果的機器視覺處理軟件[15]。目前常用的圖像處理方法有模板匹配法[16-17]與基于人工神經網(wǎng)絡的算法[18-19],系統(tǒng)采用二值化與模板匹配相結合的方法對采集圖像進行處理。
模板匹配主要包括:基于灰度值的匹配、基于形狀的匹配與基于組件的匹配。基于形狀的匹配一般包括4種情況: 一般形狀匹配模板、線性變形匹配模板、局部可變形模板與比例縮放模板。由于本系統(tǒng)屬于在線檢測,無法保證每次拍攝圖片位置不變,因此圖像存在小范圍的線性變形。根據(jù)基于形狀模板的特點,選用線性變形匹配模板。
3 基于模板匹配的圖像處理
圖像處理流程如下:①相機首先在線抓取待檢測透明盒圖像,篩選出合格產品圖像作為透明盒檢測的模板圖像;②然后畫出待檢測區(qū)域的ROI,建立待檢測區(qū)域的線性變形匹配模板,對模板進行訓練并將其保存在相應文件夾中;③在相機抓取的待檢測產品圖像中找到與訓練模板相匹配的區(qū)域,對匹配區(qū)域進行比較;④最后去除匹配結果的邊緣干擾,進行相應算法處理,判斷透明盒是否存在缺陷。圖像處理流程如圖2所示。
3.1 模板創(chuàng)建與訓練
人工選取合格產品并對其進行在線圖像采集,篩選效果較好的圖像作為模板圖像。首先選取一張圖像,利用HALCON中的算子gen_rectangle1獲取需要檢測的ROI字符區(qū)域;通過rgb1_to_gray算子將三通道圖像轉換成單通道圖像,再通過create_planar_uncalib_deformable_model與create_variation_model算子創(chuàng)建字符模板;利用find_planar_uncalib_deformable_model從篩選圖像中找到與第一張圖像匹配度較高的圖像,即從find_planar_uncalib_deformable_model中輸出參數(shù)Score數(shù)值較高的圖像。由于是在線采集圖像,拍攝物品相對位置必然會發(fā)生變動,因此需要采用2D仿射變換算子對找到的圖像進行位置變換,并將變換后的圖像轉換成單通道圖像,然后通過train_variation_model算子對圖像選定的ROI區(qū)域進行模板訓練;最后通過get_variation_model(:Image,VarImage:ModelID:)獲取訓練后的模板,并通過write_variation_model將訓練得到的模板Image與變化模板VarImage保存到相應文件夾中。與此同時,用convert_image_type(VarImage,VarImage1,‘byte)將變化后的模板轉換成byte類型并加以保存。創(chuàng)建的模板圖像與變化模板圖像如圖3、圖4所示。
3.2 透明盒在線檢測
產品在流水線生產與運輸過程中,通過觸發(fā)傳感器伸出擋板氣缸,基本可以實現(xiàn)使相機在同一位置抓取圖片。將相機抓取的圖片傳輸?shù)接蒆ALCON和C#編寫的圖像檢測軟件中,實現(xiàn)對透明盒缺陷的檢測。
首先從保存模板的文件夾中獲取訓練好的模板,將相機抓取的圖像轉換成單通道圖像,采用find_planar_uncalib_deformable_model(Image : : ModelID, AngleStart, AngleExtent, ScaleRMin, ScaleRMax, ScaleCMin, ScaleCMax, MinScore, NumMatches, MaxOverlap, NumLevels, Greediness, ParamName, ParamValue : HomMat2D, Score)算子找到與模板匹配的區(qū)域。算子中的MinScore、Greediness即最小匹配度及貪婪度的值,可根據(jù)實際需要進行設置,其值域為[0,1]。MinScore、Greediness的值越大,圖像與模板匹配速度越快,但容易漏掉與模板匹配度不高的圖像。如果可預期圖像永遠不被遮擋,MinScore可設置高達0.8甚至0.9,在多數(shù)情況下,可變形模型的貪婪性多為0.9。算子中的NumLevels即圖像金字塔層級,圖像金字塔是圖像多尺度表達的一種,是一種以多分辨率解釋圖像、有效但概念簡單的結構。一幅圖像的金字塔是一系列以金字塔形狀排列、分辨率逐步降低,且來源于同一原始圖的圖像集合。其通過梯次向下采樣獲得,直到達到某個終止條件才停止采樣。將一層層圖像比喻成金字塔,層級越高,則圖像越小,分辨率越低[20-21]。因此,可通過選擇NumLevels的大小確定圖像分辨率,NumLevels越大,圖像分辨率越低,圖形與模板匹配速度越快。根據(jù)實際需要,將系統(tǒng)MinScore、Greediness和NumLevels分別設置為0.6、0.9和5。
然后用compare_ext_variation_model(Image : Region : ModelID,Mode:)將處理后的圖像與模板進行比較,得到模板與圖像的不同區(qū)域Region,再對Region進行二值化等處理,并根據(jù)相應區(qū)域特征對透明盒缺陷進行檢測。但印刷字符、圖案受印刷機印刷壓力、印刷速度等多方面因素影響,會產生邊緣效應,導致圖像上的字符、圖案與模板匹配時,在字符、圖案邊緣會產生許多不同的小區(qū)域(見圖5)。
由于無法判定圖像上的字符、圖案與模板對比后產生的不同小區(qū)域是由字符、圖案的邊緣效應產生的,還是由于字符、圖案的缺陷產生的,因而將嚴重影響對透明盒缺陷的檢測結果。為了解決字符邊緣效應問題,本文采用get_variation_model( : Image, VarImage1 : ModelID : )算子獲取保存的變化模板圖像VarImage1,用閾值算子threshold處理得到Region1;通過邊緣算子獲取模板圖像的Image邊緣,對其邊緣進行閾值、形態(tài)學等一系列處理得到Region2;取Region1和 Region2的交集得到Region3,也即字符邊緣易干擾區(qū)域,如圖6所示;對compare_ext_variation_model(Image : Region : ModelID, Mode : )中的Region進行相應的形態(tài)學處理得到Region4,取Region3、Region4的交集得到Region5;取Region4和Region5的差集得到Region6,Region6則是去除了邊緣干擾的缺陷區(qū)域。
最后跟據(jù)實際需要與缺陷區(qū)域特征,采用select_shape對缺陷區(qū)域進行篩選,計算篩選后得到的區(qū)域面積,根據(jù)面積大小是否為0判斷產品字符是否合格,并通過disp_message算子顯示出來。當檢測透明盒字符無缺陷時,則會在窗口上顯示“ok”,且字體為綠色,如圖7所示;當檢測透明盒字符有缺陷時,則會在窗口顯示缺陷面積,且字體為紅色,如圖8、圖9所示,原始效果見圖10。圖9中的缺陷面積只有9個像素,即“酒”字上的缺陷,肉眼幾乎無法發(fā)現(xiàn)。檢測結果表明,系統(tǒng)檢測精度非常高,且精度可以根據(jù)用戶需求進行調節(jié)。系統(tǒng)可以檢測透明盒上的諸多缺陷,例如字體殘缺、砂眼、字體筆畫粗細、少印、多印、印刷錯誤、黑點、字體傾斜、劃痕、偏膜等,由于篇幅有限,不再一一列舉。
4 結語
針對透明盒存在的諸多缺陷問題,本文提出一種基于模板匹配的透明盒缺陷檢測方法。由于字符、圖案存在邊緣效應,在匹配過程中會對字符、圖案的缺陷檢測產生干擾,本文編寫的可去除邊緣效應干擾的算法與缺陷檢測算法,能夠實現(xiàn)對產品字符進行高速、精確地檢測,并能準確且無損壞地剔除不合格產品。系統(tǒng)查準率高達99.5%以上,漏檢率低于0.2%,可以很好地代替人工實現(xiàn)自動化生產檢測。
參考文獻:
[1] 馬梅彥. 智能裝備與系統(tǒng)產業(yè)發(fā)展動態(tài)與趨勢[J]. 科技中國,2018(4):61-66.
[2] 《智能機器人》編輯部. 機器視覺時代,最好的時代[J]. 智能機器人,2018(2):1.
[3] JIA H B,MURPHEY Y L,SHI J J. An intelligent real time vision systern for surface defect detection[C]. Proceedings of the 17th International Conference on Pattern Recognition,2004:239-242.
[4] PENG X Q,CHEN Y P,YU W Y. An online defects inspection method for float glass fabrication based on machine vision[J]. International Journal of Advanced Manufacturing Technology,2008,39(11):1180-1189.
[5] BU X Z,LI G J,YANG B,et al. Fast unwrapping of panoramic annularimage with center deviation[J]. Optics and Precision Engineering,2012,20(9):2103-2109.
[6] 李鶴. 基于神經網(wǎng)絡的零件缺陷機器視覺識別系統(tǒng)[J]. 計算機測量與控制,2017,25(11):248-256.
[7] 孫煉杰,樊臻. 基于模板匹配的光纖收發(fā) PCB 板目標檢測[J]. 計算機應用與軟件,2018,35(1):128-131.
[8] 丁筱玲,趙強,李貽斌,等. 基于模板匹配的改進型目標識別算法[J]. 山東大學學報,2018,48(2):1-7.
[9] 錢俞好,周軍,田勝,等. 基于機器視覺檢測印刷碼的改進模板匹配算法研究[J]. 機電工程,2018, 35(4):442-446.
[10] 蔣昭穎,郝福珍. 基于改進模板匹配算法的傷票識別與定位[J].? 電子設計工程,2018, 26(3):175-179.
[11] 李厚君. 基于梯度模板匹配的眉毛識別方法[J]. 廣西科技大學學報,2018, 29(3):62-70.
[12] 安宗權,王勻. 基于線激光與模板匹配的工件表面平坦度測量[J]. 控制工程,25(2):341-345.
[13] 張俊峰,尚振宏,劉輝. 基于顏色特征與模板匹配的車牌識別系統(tǒng)設計與實現(xiàn)[J]. 軟件導刊,2018,17(1):212-215.
[14] 劉博藝,唐湘滟,程杰仁. 基于多生長時期模板匹配的玉米螟識別方法[J]. 計算機科學,2018, 45(4):106-111.
[15] 郭佳寅,岳秀江,吳雙,等. 基于HALCON的乳制品箱體噴碼字符識別方法研究[J]. 制造業(yè)自動化,2013(3):21-22.
[16] 項輝宇,劉倩倩,黃佳軍,等. 基于HALCON的字符識別及缺陷檢測[J]. 機電產品開發(fā)與創(chuàng)新,2014,27(2):77-79.
[17] 李志強,項輝宇,李哲. OCR 在印刷字符實時檢測系統(tǒng)中的應用[J]. 機電產品開發(fā)與創(chuàng)新,2013,26(3):129-130.
[18] 張銀蘋,葛廣英. 基于HALCON的車牌識別研究[J]. 現(xiàn)代電子技術,2014,37(16):92-95.
[19] 朱正禮. 基于三層BP神經網(wǎng)絡的字符識別系統(tǒng)的實現(xiàn)[J]. 現(xiàn)代計算機,2006(10):93-95.
[20] GARY BRADSKI,ADRIAN KAEHLER. 學習OpenCV(中文版)[M]. 北京:清華大學出版社,2009:150-154.
[21] RAFAEL C GONZALEZ,RICHARD E WOODS. Digital image processing(third edition)[M]. 北京:電子工業(yè)出版社,2011:290-292.
(責任編輯:黃 ?。?/p>