孟銀娜,張云鵬
(河南機電職業(yè)學院智能工程學院,河南鄭州 450000)
缺陷檢測通常是指對物品表面缺陷的檢測,表面缺陷檢測系統(tǒng)采用了先進的機器視覺檢測技術(shù),對工件表面的斑點、凹坑、劃痕、色差、缺損等缺陷進行檢測[1]。啤酒瓶蓋表面缺陷種類繁多,其中出現(xiàn)最多的缺陷主要是字符缺失、多漆和劃痕等,目前針對啤酒酒瓶蓋表面印刷缺陷的檢測主要依靠人工篩選,容易造成視覺疲勞且檢測效率較低、對細微缺陷的檢出率低[2]。傳統(tǒng)的人工檢測已經(jīng)無法滿足現(xiàn)行市場的需求,因此,以瓶蓋檢測機為代表的機器視覺作為新興的檢測方式已經(jīng)逐漸代替人工?;跈C器視覺的瓶蓋表面不良無損檢測方式,可有效檢測出缺陷,也可提高生產(chǎn)率。
本文設計的啤酒瓶蓋缺陷檢測系統(tǒng)是基于康耐視VisionPro 機器視覺工具,在Visual Basic 圖形化編程環(huán)境上進行二次開發(fā)實現(xiàn)的。VisionPro 是基于PC架構(gòu)的新技術(shù),功能靈活、強大,主要應用于各種復雜的機器視覺領域[1]。它集成了用于定位、檢測、識別、測量和通信等任務的工具庫,還提供了對VB.NET、C#、VC++的支持。通過上述高級語言調(diào)用VisionPro 控件,能夠方便、靈活地開發(fā)出視覺應用程序。本文基于VisionPro 的工具庫和ToolBlock 高級腳本,進行視覺檢測系統(tǒng)的軟件開發(fā)。軟件總體設計如圖1 所示。
圖1 軟件總體設計
CogAcqFifoTool 用于圖像的加載[3],可以加載預先保存好的圖像,也可以連接相機實時采集圖像,實時處理。為了測試系統(tǒng)穩(wěn)定性,本系統(tǒng)采用包含啤酒瓶蓋印刷板表面字符缺失、多漆缺陷和劃痕缺陷的圖庫進行測試。因為在VisionPro中有些工具不能處理彩色圖像,所以必須將圖像轉(zhuǎn)換為8位灰度圖像才能正常工作。采用CogImageConvertTool工具進行圖像格式轉(zhuǎn)換,將16 位彩色圖像轉(zhuǎn)換為8 位灰度圖像。
CogHistogramTool 工具能對整張圖像或圖像中某一區(qū)域的像素分布情況進行統(tǒng)計分析,除了能夠生成灰度直方圖外,還能夠統(tǒng)計圖像的像素總數(shù)、平均灰度值、像素中值、出現(xiàn)概率最大的像素值、最大或最小像素值和像素的標準值等信息。利用灰度直方圖,可以為圖像二值化分割提供閾值參考,左側(cè)的峰值代表物體的灰度值,右側(cè)的峰值代表背景的灰度值,兩峰值的中間像素值可以很好地將物體和背景分割開。
啤酒瓶蓋缺陷定位的思路是選擇一組瓶蓋樣品,用CogHistogramTool 工具對樣品的圖像進行統(tǒng)計分析,不同的樣品會有不同的灰度直方圖和像素統(tǒng)計結(jié)果。經(jīng)過比對分析,合格品的平均值小于170,瑕疵品的平均值大于170,由此得出170 就是合格品和瑕疵品的分界線(圖2、圖3)。
圖2 統(tǒng)計信息(瑕疵品)
圖3 統(tǒng)計信息(合格品)
CogToolBlock 工具可以根據(jù)功能來組織視覺工具,創(chuàng)建重復利用的模塊,為復雜的視覺邏輯任務提供簡單的接口。同時提供了一項非常重要的功能——能夠在其中編寫腳本程序。其有4 種腳本可以選擇,分別是C#低級腳本、C#高級腳本、VB.NET 低級腳本、VB.NET 高級腳本。本系統(tǒng)利用CogHistogramTool 工具平均值的結(jié)果作為輸入接口,把判斷結(jié)果作為輸出接口,輸入接口的數(shù)據(jù)類型選擇INT,輸出接口的數(shù)據(jù)類型選擇String,編寫C#簡單腳本來完成合格品或瑕疵品的判斷(圖4)。
圖4 C#簡單腳本
CogCreateGraphicLabelTool 工具用于信息顯示,本系統(tǒng)把文字顯示自連接到原圖,將CogToolBlock 的res與文本顯示的text 類型連接,選擇器類型修改為text,適當字體顏色以及文字的顯示位置。
VisionPro 的4 種開發(fā)模式[4]是Quickbuild 視覺+向?qū)傻牟僮鹘缑?、Quickbuild 視覺+修改的操作界面(使用QuickBuild 互動開發(fā)視覺、輸入和輸出和工作控件,使用應用程序向?qū)刹僮鹘缑妫╒B 或C#),使用Visual Studio 定制生成的操作界面)、Quickbuild視覺+自定義的操作界面(使用QuickBuild 互動開發(fā)視覺、輸入和輸出和工作控件,使用Visual Studio 定制生成的操作界面)、自定義應用程序(使用VisionPro API 并利用Visual Studio 開發(fā)自定義應用程序)。本系統(tǒng)選擇Quickbuild 視覺+向?qū)傻牟僮鹘缑妗@肰isionPro 的ApplicationWizard 功能進行配置,應用程序命名為啤酒瓶蓋檢測應用程序(圖5)。
圖5 應用程序命名
對CogHistogramTool 工具中的Results.mean 等需要顯示在操作界面的參數(shù)進行相應配置(圖6)。
圖6 配置顯示參數(shù)
雙擊打開生成的啤酒瓶蓋檢測軟件,測試畫面如圖7 所示。單擊“單次運行”按鈕,在界面的左上角能看到產(chǎn)品是否合格,單擊“持續(xù)運行”,系統(tǒng)即可連續(xù)檢測瓶蓋的缺陷情況,從而判斷瓶蓋是否滿足合格品的條件。
圖7 測試畫面
啤酒酒瓶蓋制作表面圖案時,因為印刷板損壞和印刷工藝等問題,會出現(xiàn)字符缺失、多漆和劃痕等缺陷,影響瓶蓋的美觀。本文基于VisionPro 軟件的機器視覺檢測方法,研發(fā)一種非接觸式的瓶蓋表面缺陷檢測自動檢測系統(tǒng),實現(xiàn)了啤酒瓶蓋表面缺陷的簡單、快速、準確檢測。目前該系統(tǒng)僅能檢測啤酒瓶蓋的平面缺陷,對其他類型啤酒瓶蓋的缺陷檢測還需進一步研究。