喬 羽,沈精虎,于 騰,安 帥,孫 愷
(1.青島大學 機電工程學院,青島 266071;2.青島大學 電子信息學院,青島 266071)
PCB的自動檢測在電子制造業(yè)的發(fā)展中起著重要的作用。最常用的檢查系統(tǒng)是AOI[1~3]系統(tǒng)和自動X射線檢查(AXI)[4~7]系統(tǒng)。PCB組件安裝技術包括表面貼裝技術(SMT)和通孔(TH)技術。迄今為止,對TH元件檢測的研究很少[8]。TH元件比SMT元件更難檢測,因為一些TH元件較大會覆蓋其他組件,并且一些元件的安裝變動范圍較大。PCB缺陷可分為裸板缺陷[9~11]、元件缺陷[12]、焊點缺陷[13~15]等。
CRISPIN等[16]提出了一種基于歸一化互相關模板匹配的遺傳算法,這種方法可以定位SMT元件的位置和角度,這種方法的速度是空間遍歷搜索的六倍。GANAVI等人[17]利用背景提取、模板匹配和小波變換實現(xiàn)了PCB缺陷的檢測和分類,缺點是它對模板和待測試圖像的對準精度要求很高。馮等人[18]提出了一種利用遺傳編程(GP)算法訓練GP檢測器的新方法,該方法不需要PCB元件的原始坐標,也不需要嚴格的照明系統(tǒng),并且可以在不同類型的板上工作而不需要再訓練。SunDaJ等人[19]提出了一種使用彩色背景提取判別缺陷的解決方案,雖然這種方法可以檢測較大面積的PCB,但它需要高分辨率的攝像機以及標準板和待測試板之間的理想對準。李[20]對PCB圖像的拼接算法進行了改進,并對權重檢測算法進行了研究,其優(yōu)點是檢測PCB元器件的速度快、精度高。目前所提出的檢測PCB缺陷的技術很大程度上依賴于嚴格的照明系統(tǒng)[21~23]。
本文主要研究TH元件的缺陷檢測。我們的方法是:首先采集一批標準PCB圖像,并對圖像進行對準,然后訓練模板元件,最后將模板元件與待測試的組件進行比較定位缺陷。該方法用較少的標準PCB對標準模板進行訓練,在實驗中使用了6個標準PCB,得到了理想的結果。事實上,使用其他數(shù)目的標準PCB也可能會得到理想的結果,需要通過實驗驗證。
我們的工作主要包括兩個核心部分,第一部分是訓練模板元件。第二部分是利用加權SSIM算法檢測丟失的元件和錯件。檢測大體過程如圖1所示。
圖1 整體流程圖
在進行PCB對準時,我們使用結構化邊緣檢測(SED)算法和Harris算法提取PCB的兩個特定點。根據PCB板的原始信息,將圖像調整到相應的位置和大小。這種方法可以在沒有嚴格的照明環(huán)境或者高分辨率工業(yè)相機的情況下達到高精度。
得到對準的PCB之后,提取標準元件和待檢測元件。通過訓練標準元件得到元件權重矩陣,并采用結構相似性指數(shù)(SSIM)算法來計算平均元件和待檢測元件的相似度矩陣,然后將相似度矩陣和權重矩陣相乘并通過歸一化處理,對于每個待檢測元件得到一個最終的相似度值。最后給通過給定的閾值判別元件是否存在缺陷。
下文第1節(jié)描述了PCB權重矩陣訓練方法。第2節(jié)討論了加權SSIM算法。第3節(jié)為實驗部分。第4節(jié)為結論和展望。
從六個標準PCB圖像中提取元件圖像如圖2所示,并根據它們計算元件平均圖,如圖3所示。訓練權重圖,訓練結果如圖4所示。
圖2 六個標準元件圖像
圖3 元件平均圖像
圖4 元件加權圖
訓練過程:首先,輸入六個標準元件灰度圖像。然后,將元件圖像的大小縮小四倍,以簡化計算過程,提高運算速度。最后,計算元件的方差和權重圖。
方差通過式(1)計算:
其中E(Xk(i,j)是前k幅圖在像素點(i,j)處的一階均值:
方差值反映了像素灰度值的變化。方差越小,樣本集(i,j)的灰度變化范圍越小,則該點可以更好地反映該點的特征,并且應該給予較大的權重。
本文用標準正態(tài)分布給出了權系數(shù),即:
圖像對比是AOI系統(tǒng)中常用的一種檢測方法。該技術的基本原理是比較標準模板和待測試元件之間的像素信息,然后根據預設的閾值判斷是否存在缺陷。傳統(tǒng)技術編程簡單,操作速度快,但假陽率高。本文在傳統(tǒng)技術的基礎上,進行了改進工作。提出了一種將權重矩陣與像素SSIM相似度矩陣相乘的新方法,較好地反映了兩元件圖像的相似度信息。
1)將圖4的六個元件的彩色圖像求平均得到如圖2(b)所示的均值圖像;
2)采用滑窗法,計算每個窗口位置的待檢測圖像和均值圖像的SSIM矩陣,滑窗的目的是為了匹配到TH元件的準確位置;
3)權重矩陣和SSIM矩陣相乘;
4)歸一化加權的SSIM矩陣,使矩陣的每一個元素的變動范圍為0~1;
5)對歸一化的加權SSIM矩陣求均值;
6)根據給定的閾值判別待檢測元件是否有缺陷。流程如圖5所示。
圖5 缺陷判斷流程
常用的相似度計算技術有:歐式距離、曼哈頓距離、閔可夫斯基距離余弦相似度、JACARD相似度、皮爾森相關系數(shù)等。SSIM在PCB檢查中很少使用,但是經過實驗發(fā)現(xiàn)SSIM算法較適合PCB元件的缺陷判斷。人類視覺系統(tǒng)對掌握結構信息具有良好的適應性。SSIM從亮度、對比度和結構三個方面估計圖像的視覺質量這和人類視覺系統(tǒng)相似。
對于SSIM算法,首先我們需要計算亮度對比參數(shù)L(x,y):
其中μx和μy是兩幅灰度圖像的均值。常數(shù)c1的設定是為了避免當接近0時候公式無意義。并且,c1=(k1.l)2,其中l(wèi)圖像的灰度值的取值范圍,并且l=255,k1=0.01。
對比度比較參數(shù)C以類似的方式計算:
其中σx和σy是灰度圖像的標準差。其中c2=(k2.l),并且k2=0.03。
S代表結構對比參數(shù):
其中σxy是灰度圖像的協(xié)方差。
SSIM值由下式得出:
其中α,β,γ>0,為了得到簡化形式,我們設定:α=β=γ=1,并且c3=c2/2。SSIM的最終形式如下:
本節(jié)分析了上述方法的實用性。首先搭建實驗環(huán)境,然后開發(fā)檢測系統(tǒng),進行實驗以及對比研究。
本實驗采用五百萬像素分辨率的CCD相機固定在測試平臺的中心頂部。為了解決照明不均勻問題,搭建了一個簡單的黑箱,該系統(tǒng)配備了統(tǒng)一的分布式白光LED燈。黑箱的要求不嚴格,只要它能隔絕大部分環(huán)境光?;赪indows 10操作系統(tǒng),該方法是在MATLAB 2016A環(huán)境下開發(fā)的,對PCB板進行了訓練和測試。
實驗結果如圖6(a)~圖6(c)所示。缺件和錯件的區(qū)域用紅色矩形標記。
接下來的實驗比較了加權和傳統(tǒng)SSIM滑動窗算法。選擇圖6所示PCB中的六個元件A、B、C、D、E、F分別計算缺件、錯件和無缺陷情況下的相似度值。
表1列出了傳統(tǒng)SSIM算法實驗數(shù)據。在我們的實驗中,前兩個待測PCB用正確的元件組裝起來。第三和第四個待測PCB在所有的A~F位置不組裝元件。第五個待測PCB裝配在A~F位置組裝錯誤的元件。
表2列出了加權SSIM算法的實驗結果。實驗手段類似于上一個實驗。唯一的區(qū)別是,這個測試使用的是加權SSIM算法,而不是傳統(tǒng)的SSIM算法。
為了對比實驗數(shù)據,根據表1和表2中的數(shù)據將實驗結果繪制成折線圖,如圖7和圖8所示。
通過試驗發(fā)現(xiàn)0.43是適當?shù)拈撝?。從這兩幅折線圖可以很明顯的得出結論,加權SSIM比傳統(tǒng)的SSIM算法判斷缺陷更準確。
圖6 實驗結果
表1 SSIM傳統(tǒng)SSIM算法的實驗數(shù)據
表2 SSIM加權SSIM算法的實驗數(shù)據
圖7 傳統(tǒng)SSIM實驗數(shù)據
本文提供了一種解決現(xiàn)有光學檢測技術局限性的解決方案,并提出了一種針對插件PCB的錯件和缺件的檢查方法。該檢測系統(tǒng)提出了一種一種PCB元件缺陷判斷算法——加權SSIM算法。這種方法的優(yōu)點如下:
1)只需要很少的標準的PCB完成訓練工作,在實際適用中,便于操作,節(jié)省編程時間。
2)該方法檢測錯件和漏件準確。
這種方法缺點是滑窗的缺點是運行速度較慢。本文只給出了錯件和漏件的檢測方案,其他類型的缺陷檢測(如字符檢測、SMT元件缺陷檢測、焊點缺陷檢測等)也可以嘗試用加權SSIM算法進行檢測。