項輝宇,劉倩倩,黃佳軍,孫 超
(北京工商大學 材料與機械工程學院;北京工商大學中國食品安全研究中心,北京 100037)
工業(yè)生產(chǎn)中,許多產(chǎn)品都包含有字符信息,而大量的自動化印刷導(dǎo)致字符出現(xiàn)印刷缺陷,進而降低產(chǎn)品的合格率,影響生產(chǎn)效率,因此控制字符的不合格率成為了急待解決的問題。流水線生產(chǎn)過程中,僅僅靠人工檢測不僅費時費力,而且很多細小的瑕疵不容易被發(fā)現(xiàn)。全自動化式的生產(chǎn)方式已逐漸成為主流,因此實現(xiàn)字符識別及缺陷檢測已成為必然的發(fā)展趨勢。字符缺陷主要是字符印刷不清晰,字符漏印,字符相對位置不合格等,本實驗實現(xiàn)了從圖像的獲取到判斷字符合格與否的全過程自動化。
基于機器視覺的字符識別及檢測需要對字符進行采集和處理,本實驗采用的檢測系統(tǒng)如圖1 所示。檢測系統(tǒng)包括攝像機、光源、圖像采集卡、圖像處理單元、旋轉(zhuǎn)試驗臺。
圖1 檢測系統(tǒng)Fig.1 Testing system
本實驗采用的旋轉(zhuǎn)試驗臺系統(tǒng)包括單片機、驅(qū)動器、步進電機、霍爾傳感器。利用單片機產(chǎn)生脈沖,經(jīng)過驅(qū)動器的分配和方向控制,控制步進電機帶動轉(zhuǎn)盤運轉(zhuǎn),可以實現(xiàn)步進電機的正轉(zhuǎn)、反轉(zhuǎn)、固定角度的轉(zhuǎn)動。本實驗利用VC++編程上位機界面控制步進電機的轉(zhuǎn)動。另外使用霍爾傳感器可以使實驗平臺轉(zhuǎn)到某一位置時觸發(fā)攝像機拍照,本實驗是利用霍爾開關(guān)觸發(fā)攝像機采集圖像,圖像顯示在HALCON 軟件的圖像窗口。
HALCON 是一功能強大的機器視覺軟件,它提供了一個全面的視覺處理庫,包含了所有標準和高級的圖像處理方法,覆蓋了從不同的硬件采集圖像到高級的模式匹配算法;提供了機器視覺應(yīng)用程序中通常所需要的一些工具,如文件處理、數(shù)據(jù)分析、算法操作或分類等。本文利用HALCON 機器視覺軟件來實現(xiàn)字符的識別及缺陷檢測。在線檢測時,霍爾開關(guān)產(chǎn)生觸發(fā)信號觸發(fā)攝像機抓取圖像,通過相機USB 接口傳輸?shù)紿ALCON 軟件中,利用軟件中的算子功能對圖像進行相應(yīng)的處理,判別圖像是否合格。
對于字符的識別,最有效地方法是模板匹配。首先將標準圖像中的標準字符選為模板,利用模板的一些特征作為篩選條件和待檢測的圖像進行匹配。
將模板圖像中模板字符的灰度信息存儲在模板里,比較待檢圖像與模板的灰度信息,根據(jù)兩者的相似度來判別是否匹配。但是基于灰度值的匹配只能進行單模板匹配,一次只能識別一個對象,而且容易受到光照、噪聲等因素的干擾。信息匹配的魯棒性不高。
將模板圖像中的模板字符的輪廓形狀特征存儲在模板里,比較待檢圖像與模板的形狀特征,根據(jù)兩者的相似度來判別是否匹配。此種匹配技術(shù)抗光照條件干擾的能力強,能有效地檢測出偏移、旋轉(zhuǎn)、縮放、部分覆蓋的目標對象,一個模板可以包含多個對象實現(xiàn)多模板匹配,但是無法檢測字符間的相對位置,在一些字符相對位置要求高的應(yīng)用中無法準確的檢測,如計算器、手機、鍵盤上的字符等。
基于組件的匹配原理與形狀匹配相同,在對于一個包含多個字符的目標對象的檢測上,此匹配技術(shù)將此種目標對象作為一個大模板,訓(xùn)練模板時允許各個字符間有相對的位置偏移、旋轉(zhuǎn)。在模板匹配過程中只需搜索到一個字符,根據(jù)模板中字符間的相對位置可以減少其他字符的搜索范圍,因此匹配速度較快。匹配結(jié)果為待檢對象各個字符的相對位置坐標、待檢字符相對于模板字符的旋轉(zhuǎn)角度及字符的相似度等信息。
本次實驗檢測的是字符的缺失及相對位置是否正確,基于上述三種模板匹配的特點,本實驗選擇的是基于組件的模板匹配。
字符識別及檢測的流程圖圖2 所示。一般在檢測的物體上有標準的對象存在,將此對象選作為匹配的基準。本實驗選擇 ‘0’ 作為匹配的基準、將3、4、5、9、A、F 六個字符作為待檢測對象,實現(xiàn)字符漏印,錯位兩方面的檢測。
圖2 檢測流程圖Fig.2 Testing flow chart
圖3 標準模板圖像Fig.3 Standard template
首先采集一幅標準的模板圖像如圖3 所示。利用HALCON 算子gen_rectangle1 選擇目標對象,并把對象添加到ComponentRegions 中,如圖4 所示。若模板中的字符可以有相對的偏移或旋轉(zhuǎn),則需要通過train_model_components 對不同位置的模板進行訓(xùn)練,通過訓(xùn)練的組件模板幾乎包含所有的組元相對位置,利用get_component_relations 算子可以觀察到組元位置、組元間相對位置。由于本實驗中待檢測的字符間相對位置關(guān)系已經(jīng)確定,因此不需要對多個模板進行訓(xùn)練。create_component_model (ModelImage, ComponentRegions:VariationRow,VariationColumn,VariationAngle, AngleStart, AngleExtent,ContrastLowComp, ContrastHighComp, MinSizeComp,Min-ContrastComp,MinScoreComp,NumLevelsComp, AngleStep-Comp,OptimizationComp,MetricComp,PregenerationComp:ComponentModelID,RootRanking)算子將ComponentRegions中的目標對象創(chuàng)建成模板。由于待檢物體的放置,攝像機位姿等因素的影響,需要對算子中的VariationRow,VariationColumn, VariationAngle 進行設(shè)置。經(jīng)過創(chuàng)建模板產(chǎn)生RootRanking(根組元索引)用于模板匹配。最后利用算子get_component_model_tree 得出模板關(guān)系和模板搜索樹,如圖5 所示。
圖4 Component regionsFig.4 Component regions
圖5 模板關(guān)系和搜索樹Fig.5 Template relations and search tree
利用霍爾傳感器可以實現(xiàn)攝像機在同一位置抓取圖像。圖像傳輸至HALCON 軟件中,進行模板匹配,算子find_component_model 實現(xiàn)模板的搜索過程。由create_component_model 產(chǎn)生的RootRanking 被用于模板的搜索過程,搜索過程是先在待檢圖像中找到RootRanking,然后根據(jù)模板中的組字符間的相對位置一一搜索其他的組件(中間組件),可以通過設(shè)置使用其中一個RootRanking 使用固定的搜索路線來檢測。在一些應(yīng)用中根組件有可能丟失,可以對find_component_mode 算子中的If-RootNotFound 進行設(shè)置解決根組件丟失問題。本實驗中‘0’ 為匹配基準,因此選擇 ‘0’ 為RootRanking,由可知搜索路徑為0-3-5-4-9-F-A。若3—F 中的任一中間組件丟失造成無法對其他組件進行搜索,可以對算子find_component_mode 中 的IfComponentNotFound 進行設(shè)置來動態(tài)適應(yīng)搜索順序。利用算子get_found_component_model 獲得檢測到的組元,通過dev_display(FoundComponents)將檢測到的組件顯示出來。最后根據(jù)一定的檢測條件判斷檢測對象是否合格,本實驗使用的篩選條件是組件是否被找到即ScoreCompInst [i] 是否為0.0,若ScoreCompInst [i] =0.0 則說明第i 個組件丟失,產(chǎn)品字符漏印,則該產(chǎn)品不合格。
該實驗的檢測結(jié)果如圖6 所示。結(jié)果中的1-7 即搜索字符的順序,分別代表0-3-5-4-9-F-A。
圖6 檢測結(jié)果Fig.6 Test Results
從結(jié)果中可以看出: ①沒有被設(shè)為檢測模板的字符即使有錯誤也不能被檢測出來;②對于字符漏印的產(chǎn)品,可以被準確的檢測出來,并且其他字符也能夠準確提取并顯示;③對于字符順序有錯的產(chǎn)品也能夠檢測出來。
實驗驗證基于組件的匹配可以較好地應(yīng)用到字符的檢測中。
實驗結(jié)果表明,本文提出的基于HALCON 的字符組件匹配技術(shù)可以準確的實現(xiàn)字符識別及缺陷檢測。與傳統(tǒng)的人工檢測方法相比較,基于組件的缺陷檢測使生產(chǎn)線上產(chǎn)品的質(zhì)量檢測有了進一步的進展。隨著工業(yè)自動化生產(chǎn)的發(fā)展,機器視覺在工業(yè)上的應(yīng)用將得到更廣泛的應(yīng)用和發(fā)展。然而試驗臺的轉(zhuǎn)速對攝像機的圖像抓取質(zhì)量會有較大的影響,本實驗中試驗臺的速度較低,在高速下的字符檢測還有待進一步的研究。
[1] Carsten Steger,Markus Ulrich,Christian Wiedemanm.機器視覺算法與應(yīng)用[M].北京:清華大學出版社,2008.
[2] 張瓊,沈海宏,沈民奮,劉長春.基于HALCON 的無印記印刷品圖像質(zhì)量檢測[J].汕頭大學學報,2011.
[3] 黃建榮,范彥斌,葉邦彥.基于Halcon 的STM-PCB 元件缺陷檢測[J].佛山科學技術(shù)學院學報(自然科學版),2008.
[4] 陳濤.基于HALCON 的表面貼裝電子組件檢測系統(tǒng)的研發(fā)[D].廣東:華南理工大學,2011.
[5] 李志強,項輝宇.OCR 在印刷字符實時檢測系統(tǒng)中的應(yīng)用[J].機電產(chǎn)品開發(fā)與創(chuàng)新,2013,5.
[6] 孫懷遠,廖躍華.基于HALCON 的藥品包裝瓶批號檢測技術(shù)研究[J].包裝工程,2008,4.