李漢雄,孫明革
(吉林化工學院 信息與控制工程學院,吉林 吉林 132022)
近年來,LabVIEW視覺在各行各業中得到了廣泛的應用[1-4]。LabVIEW是一種圖形化編程語言,其中包含許多內置和擴展的函數庫,如數學矩陣運算、信號處理以及視覺圖像處理等函數庫。這些函數庫里的函數都以圖像化編程語言的形式進行展示,讓開發人員能夠更加快速地構建機器視覺自動化系統,并根據客戶要求快速提供完整的解決方案。這種語言特性讓語言更加易于理解和操作。針對焊縫表面的缺陷數據,樊巖松等人利用LabVIEW中ADO技術對其進行研究與分析,從而實現焊縫表面的缺陷檢測[5]。蔡湘云等人使用金牌匹配模板方法,對段碼式LCD屏進行缺陷檢測[6]。鄭中華等人使用灰度化和模板匹配等技術,對SIM卡槽進行缺陷檢測[7]。陳守恒等人先使用模板匹配的燈座定位方法,對燈座進行定位,然后使用灰度均值,對燈座缺陷進行檢測[8]。王雪晴等人使用模板匹配的方式,對玻璃存在的缺陷進行檢測[9]。王永泉等人使用LabVIEW軟件開發了一套GIS聲振聯合檢測系統[10]。王建沖等人使用改進的Canny邊緣檢測等算法,對SOP芯片引腳進行缺陷檢測[11]。然而,在IC產業鏈中,基于LabVIEW視覺的IC插座插孔缺陷檢測是一種新的嘗試。
本文基于LabVIEW軟件,設計了IC插座插孔缺陷檢測平臺,其中工作流程如下:使用CCD相機采集IC插座圖像,對圖像進行灰度化、增強和其他處理[9],利用顆粒分析法對IC插座的插孔進行檢測和分析。實驗證明,該檢測平臺具有良好檢測效果,極大提高了工業檢測的效率和檢測精度。
系統硬件組成包括計算機、工業相機以及光源等部分。目前流行的機器視覺相機,主要是CCD相機和CMOS相機。通過對比,最終選擇MV-SI608GC型號的海康工業相機(CCD相機),該款相機IO口豐富,可接入多路輸入輸出信號,與現場工業設備對接良好,并支持擴展,完全滿足IC插座插孔缺陷檢測的需求。系統硬件檢測裝置示意圖如圖1所示。

圖1 硬件檢測裝置示意圖
系統軟件設計主要由圖像處理模塊和圖像檢測模塊組成[11]。系統軟件整體設計示意如圖2所示。具體過程為先對采集的IC插座圖像進行圖像灰度化、圖像增強和圖像去除陰影等一系列處理,然后通過顆粒分析手段獲取插孔數目信息,最后進行缺陷檢測。

圖2 系統軟件整體設計示意圖
目前使用的多數相機為彩色相機,但彩色相機圖像信息量過大,需要對彩色圖像進行灰度化處理[12]。灰度化處理后,整幅圖像的每個像素點色彩信息都可以用0~255像素值表示[13]。灰度化常用方法主要有最大值法,平均值法和加權平均值法[14]。通過對比,加權平均值法達到的效果最好。加權平均值法原理:按照一定的權重,對原圖像RGB的值分別進行加權平均值[12],如式(1)所示。
(1)
式(1)中ωR、ωG、ωB分別是R、G、B三個值的權值,必須滿足ωG>ωR>ωB,根據經驗選取ωR、ωG、ωB的值分別為0.299、0.587、0.114[12]。這里以MV-SI608GC型號工業相機采集的樣本圖像為例,其中圖像灰度化效果如圖3所示。

圖3 彩色圖像灰度化效果圖
通過使用LabVIEW Vision中的Brightness函數,對圖像陰影進行去除。Brightness函數參數如下:亮度值(Brightness)、對比度值(Contrast)和伽馬值(Gamma)。以上述相機所采集的樣本為例,經過不同的參數對比,亮度值、對比度值和伽馬值分別取160±1.00,65±1.00,0.4參數值時,效果最好。圖像去除陰影后效果如圖4所示。

圖4 灰度圖像去陰影效果圖
2.3.1 閾值分割概述
經過去陰影處理后的灰度圖像,需要分割成背景和目標兩部分圖像。以圖像的灰度直方圖為參考,進行圖像的灰度閾值分割,這里的閾值根據需要選擇。若原始圖像為f(x,y),選擇的閾值為T,則圖像分割方法用簡化公式(2)表示。
(2)
式(2)中g(x,y)為分割后的圖像;T為分割閾值;f(x,y)為原始圖像的灰度值。
2.3.2 閾值分割法分類
常見的圖像閾值分割法包括全局手動閾值分割法、全局自動閾值分割法和局部閾值分割法。上述閾值分割法的特性如表1所示。

表1 閾值分割法特性表
根據表1可知,對經過去除陰影處理后的圖像,使用全局自動閾值分割法效果較好。LabVIEW中NI Vision支持5種全局自動閾值分割方法,包含聚類法(Clustering)、最大類間方差法(Inter-Class Variance)[15]、最大熵法(Entropy)、最小均勻性度量法(Metric)、矩保持法(Moments Preserving)。下面重點介紹矩保持法(Moments Preserving)。
矩保持法又稱為矩守恒閾值法,它適合處理對比度較差的圖像。矩保持法認為圖像經過采集過程中的電噪聲或輕微散光,會導致圖像模糊,但是只要能找到閾值,使分割前后圖像的矩保持不變,則該閾值就是最佳閾值。一幅圖像的k階矩mk通過公式(7)計算得到[16]。
(3)
式(3)中N表示圖像中像素總數;i表示灰度級;ik表示k階灰度級,表示灰度級對應像素數。通過對比發現,選擇矩保持法能夠使設計達到最佳效果,如圖5所示。

圖5 矩保持法二值化效果圖
2.4.1 邊界顆粒的形態學處理
二值化處理后得到的圖像,存在無法區分與圖像邊界相連的孔洞是顆粒還是背景的情況。針對這種情況,可以使用高級形態學函數IMAQ Reject-Border,依據4連通或8連通原則,定位邊界顆粒的像素,并進行置0處理,將圖像邊界顆粒移除,獲得的效果如圖6所示。

圖6 移除邊界顆粒圖
經過高級形態學處理后,圖像中可能存在凸起毛刺、凹坑、細小毛刺和一些離散噪聲點等問題。針對上述問題,使用一些初級形態學函數進行處理。初級形態學函數,主要包括腐蝕運算、膨脹運算、擊中-擊不中運算、開運算、閉運算以及適當開與適當閉等基本運算。高級形態學處理后的圖像再進行膨脹運算。膨脹運算的用途:填充圖像中顆粒內部的孔洞或連接裂縫;擴展目標的輪廓;消除圖像中孤立于顆粒內部的孔洞;為了擴展亮的目標區域和收縮暗的背景,將像素灰度值調整為其鄰域內像素的灰度最大值。膨脹運算前后對比圖如圖7所示。

圖7 膨脹運算前后效果圖
2.4.2 封閉不完整顆粒的形態學處理
圖像經過膨脹運算處理后,可能存在一些封閉不完整的顆粒,可以使用高級形態學函數IMAQ Convex Hull來處理這種情況。IMAQ Convex Hull函數用于填充二值圖像中的凸殼,獲得完整封閉的顆粒圖像。數學上對離散點集的凸殼有嚴格的定義,它是指歐幾里得幾何平面或者幾何空間中,能夠包含有該點集的最小凸集,而凸集是指集合中任意兩點直線上的點仍能落在集合內的集合,如圖8所示。

圖8 凸集與凸殼
膨脹運算后的圖像,經過高級形態學IMAQ Convex Hull函數處理后的效果,如圖9所示。

圖9 高級形態學前后結果
圖像經過二值化處理以及一系列形態學處理后,仍然可能存在一些細小噪聲。細小噪聲不經過處理,可能會影響最終的判斷結果。為了更加便捷地篩選出關鍵顆粒,需要去除細小噪聲。可以使用LabVIEW Vision中IMAQ Particle Filter函數,篩選出指定參考范圍內的關鍵顆粒,從而去除細小噪聲干擾。具體效果如圖10所示。

圖10 顆粒濾波去除小顆粒圖
在視覺開發過程中,常會通過對采集的圖像進行一系列處理,再從中分割或提取出要檢測的目標,這種被提取出的目標就是顆粒。顆粒是指圖像中相互連通的一組非0或灰度較高的像素所構成的區域。顆粒的常見屬性參數包括面積、等效橢圓、孔洞、凸殼、角度、求和與矩等。所謂顆粒分析,是指依據顆粒相關屬性參數信息獲取相關結果。
對顆粒濾波處理后的圖像進行顆粒分析,獲取的結果是IC插座插孔的數目信息,將其與合格的IC插座插孔的數目信息做對比,從而判斷IC插座插孔是否合格。這里,檢測合格的IC插座插孔數目信息為16個。合格的IC插座插孔二值圖如圖11所示。

圖11 合格的IC插座插孔二值圖
IC插座插孔的缺陷檢測設計具體過程為IC插座圖像經過一系列處理后,再使用缺陷檢測算法,對IC插座插孔圖像進行檢測判斷。當所含插孔顆粒數目等于16,則判斷合格;當所含插孔顆粒數目小于16時,則判斷不合格。
本文使用兩種不同類型的IC插座插孔樣本,分別是16孔和24孔的IC插座插孔樣本。通過上述檢測方法,分別對16孔和24孔的IC插座各取100張圖像進行檢測驗證。取具有代表性圖像進行說明。檢測結果如圖12所示。

圖12 檢測結果
經過測試,該檢測平臺對IC插座插孔檢測,其檢測正確率能達到96%以上,檢測效率為每秒平均能檢測36張圖片,能夠滿足工業需要。該缺陷檢測平臺的可視化頁面,如圖13所示。

圖13 可視化頁面
基于LabVIEW視覺的IC插座插孔缺陷檢測平臺,是在NI公司的LabVIEW視覺模塊基礎上進行開發的。該平臺所采用的設計方法,能夠準確地判斷IC插座插孔是否存在缺陷,解決了現有檢測平臺效率慢和精度低的缺點。實驗證明,該平臺具有一定的可實施性和推廣性,能夠滿足工業生產對IC插座插孔的檢測要求。而且,該平臺所采用的設計方法能為缺陷檢測領域的研究提供一定的借鑒。