趙瑞祥 侯宏花 張鵬程 劉祎 田珠 桂志國
摘 要:針對在球柵陣列(BGA)氣泡檢測中,由于圖像干擾因素的多樣性導(dǎo)致焊球存在邊緣氣泡與背景之間灰度級接近,從而造成焊球氣泡分割結(jié)果不精確的問題,提出了一種結(jié)合全卷積神經(jīng)網(wǎng)絡(luò)(FCN)和K均值(K-means)聚類分割的焊球氣泡分割方法。首先根據(jù)所制作的BGA標簽數(shù)據(jù)集搭建FCN,通過訓練該網(wǎng)絡(luò)得到合適的網(wǎng)絡(luò)模型,再對待測BGA圖像進行預(yù)測處理得到圖像的粗分割結(jié)果;然后對焊球區(qū)域映射提取,通過同態(tài)濾波法提高氣泡區(qū)域辨識度,再使用K-means聚類分割對圖像進行細分割處理,得到最終分割結(jié)果圖;最后對原圖焊球及氣泡區(qū)域進行標注識別。將所提出的算法與傳統(tǒng)BGA氣泡分割算法進行對比,實驗結(jié)果表明,所提出的算法對復(fù)雜BGA焊球的邊緣氣泡分割精確,圖像分割結(jié)果與其真實輪廓高度匹配,準確度更高。
關(guān)鍵詞:全卷積網(wǎng)絡(luò);K均值聚類;球柵陣列;邊緣氣泡;缺陷分割
中圖分類號:TP391.7
文獻標志碼:A
Welding ball edge bubble segmentation for ball grid array based on full convolutional network and K-means clustering
ZHAO Ruixiang1,2, HOU Honghua1,2, ZHANG Pengcheng1,2, LIU Yi1,2, TIAN Zhu1,2, GUI Zhiguo1,2*
1.School of Information and Communication Engineering, North University of China, Taiyuan Shanxi 030051, China;
2.Shanxi Provincial Key Laboratory for Biomedical Imaging and Big Data (North University of China), Taiyuan Shanxi 030051, China
Abstract:
For inaccurate segmentation results caused by the existence of edge bubbles in welding balls and the grayscale approximation of background due to the diversity of image interference factors in Ball Grid Array (BGA) bubble detection, a welding ball bubble segmentation method based on Fully Convolutional Network (FCN) and K-means clustering was proposed. Firstly, a FCN network was constructed based on the BGA label dataset, and trained to obtain an appropriate network model, and then the rough segmentation result of the image were obtained by predicting and processing the BGA image to be detected. Secondly, the welding ball region mapping was extracted, the bubble region identification was improved by homomorphic filtering method, and then the image was subdivided by K-means clustering segmentation to obtain the final segmentation result. Finally, the welding balls and bubble region in the original image were labeled and identified. Comparing the proposed algorithm with the traditional BGA bubble segmentation algorithm, the experimental results show that the proposed algorithm can segment the edge bubbles of complex BGA welding balls accurately, and the image segmentation results highly match the true contour with higher accuracy.
Key words:
Full Convolutional Network (FCN); K-means clustering; Ball Grid Array (BGA); edge bubble; defect segmentation
0 引言
球柵陣列(Ball Grid Array, BGA)是近幾年發(fā)展十分迅速的一種電子器件封裝技術(shù)[1]。而BGA焊球內(nèi)存在氣泡是一種普遍并且難以避免的現(xiàn)象,焊球氣泡是錫膏中焊劑殘留和焊接面雜質(zhì)在焊球融化時未及時排除而存儲于其中形成的[2-3]。氣泡過大不僅會導(dǎo)致焊球強度的降低,還會使得錫球體積變大,加大短路的幾率,即使不形成短路等缺陷,也可能影響電氣連接,造成工業(yè)上的損失[3]。
目前X射線BGA空洞缺陷的檢測標準參照IPC-7095C發(fā)布的《BGA的設(shè)計及組裝工藝的實施》的標準來判別。具體規(guī)定為BGA焊球中氣泡的總面積不能超過焊球總面積的20%,單個氣泡的面積不能超過焊球面積的25%[4]。在傳統(tǒng)的BGA空洞缺陷檢測中,人工檢測依然是封裝檢測行業(yè)內(nèi)普遍使用的一種方式[5],檢測人員根據(jù)自身的視覺觀察對產(chǎn)品封裝的缺陷進行評估判定,但在長時間的檢測過程中也會因為疲勞和注意力下降而導(dǎo)致缺陷判定出現(xiàn)錯誤,所以,BGA空洞缺陷的自動檢測與評估系統(tǒng)的開發(fā)對于工業(yè)生產(chǎn)有重要的意義。BGA檢測的主要目的在于將BGA射線圖像中的焊球區(qū)域和焊球內(nèi)部氣泡區(qū)域自動進行分析提取并計算出單個焊球內(nèi)部氣泡占比度的大小,直接判定出焊球的合格情況。減少操作員的工作量,更有利于檢測不合格焊球,減少工業(yè)損失,提高產(chǎn)品質(zhì)量和生產(chǎn)效率。那么,在系統(tǒng)的自動檢測算法中焊球及焊球內(nèi)部氣泡的完整提取就尤為重要。
近年來,針對BGA焊球及其內(nèi)部氣泡的分割提取算法,主要集中于基于全局閾值分割[6]、基于偏微分方程[7]、基于BLOB(Binary Large OBject)濾波[8]、基于射線檢測[9]和基于直方圖分析[10]等方法。但是由于BGA圖像的干擾因素多樣,這些方法在精確分割焊球邊緣氣泡缺陷方面具有局限性。例如,張俊生等[11]提出了一種首先采用OTSU自適應(yīng)分割算法來提取焊球區(qū)域,然后用數(shù)學形態(tài)學開閉運算和頂帽變換來提取焊球的氣泡區(qū)域的方法。該算法根據(jù)整幅BGA射線圖像的灰度特性,計算前景和背景之間的類間方差,得出使得類間方差值最大的合適閾值來分割出焊球區(qū)域。然而,在圖像復(fù)雜度高的情況下,比如有邊界干擾、殘缺焊球、邊緣氣泡對比度低的情況下,該算法就無法準確地分割出完整的焊球,使得后續(xù)計算焊球內(nèi)部氣泡占比率出現(xiàn)誤差,造成過分割和欠分割的情況。
針對目前部分方法在對復(fù)雜背景干擾下的BGA圖像分割中,由于部分焊球存在邊緣氣泡像素級與背景像素級之間的分辨率差,導(dǎo)致分割結(jié)果出現(xiàn)過分割的問題,本文提出了一種結(jié)合全卷積神經(jīng)網(wǎng)絡(luò)(Fully Convolutional Network, FCN)[12]和基于同態(tài)濾波的K-means聚類分割[13]的焊球氣泡分割算法。首先,構(gòu)建符合BGA圖像數(shù)據(jù)集特點的FCN,通過對BGA焊球圖像進行像素級的分類,以焊球中每個像素的類別作為監(jiān)督信息,使用多層網(wǎng)絡(luò)在訓練過程中自主學習圖像多層次特征來獲取焊球的感興趣區(qū)域(Region Of Interest, ROI)區(qū)域分割結(jié)果,使得BGA圖像中復(fù)雜背景像素級的干擾完全去除,從而快速完整地提取出目標焊球區(qū)域;然后采用同態(tài)濾波算法提高焊球內(nèi)部氣泡辨識度,再使用K-means聚類分割算法將焊球與氣泡區(qū)域分別聚成不同的簇,使焊球內(nèi)部氣泡被分割提取出來;最后對原圖焊球及內(nèi)部氣泡區(qū)域進行標記識別。
1 FCN與K-means聚類分割
1.1 FCN
卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN)一般由輸入層、卷積層、激活層、池化層和全連接層組成,輸入為圖像的像素值,卷積層配合池化層,從低層到高層,隨著感受野的擴充,完成低級特征到高級特征的提取,在全連接層得到固定長度的特征向量來進行分類,將最終得到的前向傳播運算結(jié)果傳遞到損失層,損失層以真實類別作為監(jiān)督信息,以最小化分類誤差為目標,通過反向傳播來調(diào)整網(wǎng)絡(luò)各層的權(quán)值,完成模型的訓練[14]。
FCN是由UC Berkeley的Jonathan Long等提出來的,結(jié)構(gòu)與經(jīng)典的CNN基本相同,但是FCN將CNN中的全連接層全部替換為卷積層,通過對圖像進行像素級的分類,從抽象的特征中恢復(fù)出每個像素所屬的類別,從圖像級別的分類進一步延伸到像素級別的分類,實現(xiàn)的是像素級的識別,對輸入圖像的每一個像素在輸出上都有對應(yīng)的判斷標注,標明這個像素最可能是屬于一個什么類別或物體,從而解決語義級別的圖像分割問題。
相對于經(jīng)典的CNN而言,F(xiàn)CN可以接受任意尺寸的二維輸入圖像,經(jīng)過反卷積操作,對最后一個卷積層的輸出特征圖進行上采樣,使特征圖恢復(fù)到與原始圖像相同的尺寸,保留原始輸入圖像的空間信息;然后逐像素經(jīng)過Softmax層計算處理,對輸入圖像中每一個像素進行預(yù)測,形成pixel-to-pixel的監(jiān)督。與卷積神經(jīng)網(wǎng)絡(luò)(CNN)相比,F(xiàn)CN的優(yōu)點在于接受輸入圖像尺寸不一;并且解決了CNN存在的存儲開銷大、計算效率低下、感知區(qū)域受限等問題。
1.2 K-means聚類分割
K-means聚類算法是圖像劃分方法中較經(jīng)典的聚類算法之一。其基本思想是將選取的M個種子點特征和其周圍點的特征進行距離的測定,將圖像樣本聚成不同的簇,使得簇內(nèi)具有較高的相似度,而簇間的相似度較低,以得到緊湊且獨立的簇作為最終的聚類目標。
針對于BGA圖像來說,圖像中所有位置的像素值可以表示為一組數(shù)據(jù){x1,x2,…,xn},K-means聚類的任務(wù)就是將這些數(shù)據(jù)聚成K個簇,將背景、焊球、氣泡單獨分割出來。本文引入二值變量rnk∈{0,1}來表示像素數(shù)據(jù)點xn對于聚類簇k的歸屬情況(n=1,2,…,N, k=1,2,…,K),如果數(shù)據(jù)點xn屬于第k聚類,就將rnk值定為1,否則為0。根據(jù)此情況,定義損失函數(shù)J為:
J=∑Nn=1∑Kk=1rnk‖xn-μk‖2(1)
J函數(shù)表示每個像素點到其所選聚類中心μk的距離平方和,則聚類分割的問題就轉(zhuǎn)移到尋找使得損失函數(shù)J最小的像素數(shù)據(jù)點的歸屬值rnk和聚類中心μk。K-means算法通過一種迭代求解方法在每次的迭代優(yōu)化中求得最佳rnk和μk。具體步驟如下:
步驟1 求取可以使損失函數(shù)J最小的數(shù)據(jù)點的歸屬值rnk。由式(1)可以看出,損失函數(shù)J是rnk的線性函數(shù),給定xn和μk的值,并且xn之間相互獨立,則對于每一個像素n,只需將該像素分配到距離最近的聚類中心,即:
rnk=1, k=arg minj‖xn-μj‖2
0,其他(2)
步驟2 根據(jù)已求得的rnk,再求取使得損失函數(shù)J最小的聚類中心μk。損失函數(shù)J是μk的二次函數(shù),令J對μk的導(dǎo)數(shù)為0,可以得:
∑Nn=1rnk(xn-μk)=0(3)
則可以得出μk的取值為:
μk=(∑Nn=1rnkxn)/∑Nn=1rnk(4)
對于第k個聚類,rnk取1的個數(shù)就是屬于該聚類的點的個數(shù),因此μk屬于該聚類的點均值。重復(fù)迭代上述兩步驟直至收斂。
2 本文算法
2.1 算法流程
為了精確地分割出焊球中的氣泡區(qū)域,本文結(jié)合了全卷積神經(jīng)網(wǎng)絡(luò)(FCN)和K-means聚類分割方法。FCN絡(luò)通過深層卷積學習特征,來判定BGA焊球圖像中的像素所屬類別,可以粗略地分割出目的焊球區(qū)域;K-means聚類分割則在FCN分割基礎(chǔ)上進一步精確分割出焊球氣泡區(qū)域。
本文提出的算法主要包含兩個階段:粗分割階段和細分割階段。算法具體步驟如下:
1)粗分割階段。
①在訓練階段首先搭建FCN訓練環(huán)境,根據(jù)所制作的BGA數(shù)據(jù)集搭建好FCN;
②通過訓練該網(wǎng)絡(luò)得到適用于分割BGA焊球的網(wǎng)絡(luò)模型;
③在測試階段將待測圖像經(jīng)由該網(wǎng)絡(luò)模型得到BGA圖像的粗分割結(jié)果并優(yōu)化。
2)細分割階段。
①首先對優(yōu)化后的BGA粗分割結(jié)果圖進行輪廓提取和原圖映射操作,并將所提輪廓附加映射圖用來增強焊球的邊緣;
②用同態(tài)濾波算法提高所提取出的焊球區(qū)域氣泡辨識度;
③再采用K-means聚類分割方法對增強圖像進行分割處理并優(yōu)化,得到最終分割圖后對原圖焊球及氣泡區(qū)域進行標記識別,得到最終標記效果圖。
2.2 粗分割階段
根據(jù)所制作的BGA標簽數(shù)據(jù)集的特點搭建合適的FCN全卷積網(wǎng)絡(luò),為了可以在保證特征提取效果的同時減少參數(shù)數(shù)量,使計算代價更小、收斂速度更快,所以網(wǎng)絡(luò)全部采用3×3的卷積核來進行網(wǎng)絡(luò)層卷積操作。而VGG[15]的所有結(jié)構(gòu)都可以近似為3×3卷積核CNN的一個遍歷,并且在所有VGG11-19層的結(jié)構(gòu)中,網(wǎng)絡(luò)深度的增加會使得訓練過程中特征提取得更精確,圖像top-1和top-5錯誤率下降得也更明顯(top-N錯誤率是指圖像識別算法給出的前N個答案中有一個是錯誤的概率),所以本文所搭建的FCN采用VGG19基礎(chǔ)網(wǎng)絡(luò)模型。由于BGA射線圖像大小不一,單個焊球包含像素大小的分布范圍大,所以本文搭建的FCN保留全部的網(wǎng)絡(luò)層結(jié)構(gòu),即在經(jīng)典的VGG19的基礎(chǔ)上,把VGG19網(wǎng)絡(luò)最后的3層全連接層全部去掉,換成3個卷積層,保留原始圖像的空間特征。
本文最終所搭建的FCN結(jié)構(gòu)如圖1所示,圖1網(wǎng)絡(luò)層中不同的顏色代表不同的操作,操作模塊分為卷積、池化、反卷積、裁剪和融合這5部分。
網(wǎng)絡(luò)對輸入圖像尺寸沒有要求,通過輸入圖像和標簽數(shù)據(jù),最終也得到預(yù)測圖像的二維數(shù)據(jù),且大小與輸入圖像大小相同,實現(xiàn)語義分割的目的。經(jīng)由FCN初始網(wǎng)絡(luò)多次卷積和池化以后,輸出的圖像會變得越來越小,分辨率也變得越來越低,會得到一個粗略的圖像,為了將這個分辨率低的粗略圖像恢復(fù)到原始的分辨率,需要對卷積池化后圖像進行上采樣操作。本文所搭建的FCN中BGA圖像經(jīng)過5次組卷積和池化以后,圖像的分辨率依次縮小至原來的1/2、1/4、1/8、1/16和1/32,則對于最后輸出的圖像,就需要進行32倍的上采樣,來恢復(fù)到和原圖一樣的大小。由于直接對第5層卷積池化后結(jié)果進行32倍的上采樣會導(dǎo)致圖像細節(jié)大量丟失,分割結(jié)果不精確,所以本文采用融合方法,每一次的融合操作都是對反卷積結(jié)果進行補充細節(jié)特征的過程:首先對第5次卷積池化輸出結(jié)果圖像進行2倍反卷積操作,再將其與第4次池化卷積結(jié)果相融合,再對所得結(jié)果進行2倍反卷積操作后與第3次卷積池化結(jié)果相融合,然后對所得結(jié)果直接進行8倍反卷積操作,這樣得到的結(jié)果圖像與原始輸入圖像尺寸相同,并且兩次的融合操作所提取的圖像細節(jié)特征,已經(jīng)滿足了焊球區(qū)域分割精度的需求。
通過訓練上述全卷積網(wǎng)絡(luò)得到適合分割焊球的BGA網(wǎng)絡(luò)模型,再對待測圖像進行預(yù)測分割,得到的預(yù)測分割圖像分為焊球區(qū)域和背景區(qū)域兩部分,由于本次實驗對殘缺焊球不考慮識別,所以通過計算焊球區(qū)域面積均值法將殘缺焊球區(qū)域剔除;由于原圖焊球拖尾的影響使得粗分割出來的拖尾焊球區(qū)域有微小雜點干擾,本文采用數(shù)學形態(tài)學開運算方法進行去除,得到最終焊球圖像區(qū)域,為細分割階段打下基礎(chǔ)。
2.3 細分割階段
細分割階段主要采用了K-means聚類分割算法對所提取出的焊球圖像進行分割操作。為了在保證氣泡分割準確性的同時減少聚類操作的運行時間,本文經(jīng)過多次實驗最終確定K-means聚類參數(shù)中聚類個數(shù)K設(shè)為4,迭代次數(shù)設(shè)為3,精度設(shè)為1.0;聚類初始中心的選取方式采用K-means++中心初始化算法選?。↘MEANS_PP_CENTERS);聚類的特征選取方式為計算樣本與聚類中心之間的歐氏距離,距離越近,相似性越大;迭代終止的條件為達到最大迭代次數(shù)或者達到所選精度值(CV_TERMCRIT_ITER+CV_TERMCRIT_EPS)。
圖2表示了細分割階段的主要過程,首先對FCN的粗分割結(jié)果圖2(a)進行輪廓提取和原圖映射操作,再將所提輪廓附加映射圖用來增強焊球的邊緣,得到圖2(b),這樣就將各個焊球從BGA原始射線圖像中完整地提取出來,為后面氣泡缺陷的提取分割去除了背景雜點、殘缺焊球和焊球拖尾等因素的干擾;然后再采用同態(tài)濾波法增強圖2(b)中氣泡區(qū)域辨識度,使用K-means聚類分割算法對增強后圖2(b)中的焊球、氣泡和背景區(qū)域分別進行聚類操作,得到初始聚類分割圖2(c);最后對聚類分割圖進行二值化處理,得到最終分割圖像。
圖3表示了對K-means聚類分割圖像后處理的優(yōu)化步驟,因為制作BGA數(shù)據(jù)集時Label標簽是圍繞焊球周圍來標注,所以二值化后的初始分割圖像會出現(xiàn)焊球邊界與輪廓之間有微小空隙存在。以單個焊球為例,本文采用數(shù)學形態(tài)學膨脹腐蝕操作對其進行優(yōu)化,得到焊球a;雖去除了空隙但也使得焊球中部分氣泡缺陷分割點也被去除,所以采用對原始焊球
去除輪廓后進行區(qū)域生長操作,將內(nèi)部氣泡區(qū)域單獨提取出來,得到焊球b;最后將焊球a與焊球b相加,得到最終的焊球氣泡分割圖像。
2.4 標記
根據(jù)最終分割結(jié)果圖像對BGA焊球氣泡缺陷進行標記,紅色輪廓標記焊球區(qū)域,綠色部分覆蓋焊球內(nèi)部氣泡區(qū)域,并且計算出焊球內(nèi)部氣泡缺陷與焊球之間的占比大小,在當前焊球左上角進行標注,標記結(jié)果如圖4所示,可以非常直觀地看出當前BGA射線圖像中各個焊球的合格情況。
3 數(shù)據(jù)集及其預(yù)處理
3.1 數(shù)據(jù)集
本文搭建的FCN網(wǎng)絡(luò)所采用的數(shù)據(jù)集是由自己標注BGA數(shù)據(jù)圖像所得,可用的圖像有612張BGA射線圖像,包含上萬個焊球樣本。訓練集圖像格式保存為.jpg格式,位深度為24位,對應(yīng)的標簽圖像保存為.png格式,位深度為8位。BGA數(shù)據(jù)集中的圖像平均尺寸是860×680。在所有圖像的長寬中,最大的圖像大小為1600×1200,最小的為200×200,變化范圍很大。
3.2 標簽制作
對于FCN的數(shù)據(jù)集標簽而言,本文制作標簽使用的工具是Labelme軟件,Labelme是一個開源的圖像輔助工具,能夠幫助用戶創(chuàng)建定制化標注任務(wù)或可執(zhí)行圖像標注[16]。對BGA圖像中合適的焊球使用連續(xù)的點圍繞其外圍進行提取標注,并賦值為0,因為無法確定殘缺焊球內(nèi)部氣泡總面積,所以對殘缺焊球不進行標注;元器件或者線盤區(qū)域不進行標注;拖尾區(qū)域不進行標注;橋接焊球?qū)⑵浞珠_進行標注,其他區(qū)域為背景。
3.3 數(shù)據(jù)增強
由于BGA圖像中被干擾焊球相對正常焊球來說,數(shù)量較少,這就使得在FCN訓練階段,參與訓練的特殊焊球數(shù)量太少,導(dǎo)致結(jié)果精確度下降,本文通過增強訓練集中被干擾焊球圖像的方法,來平衡訓練集中被干擾焊球與正常焊球的占比。
對于訓練集中的干擾焊球圖像,增強的倍數(shù)應(yīng)當至少使得正常和受干擾焊球兩類焊球像素數(shù)量基本相當,同時也要防止因增強倍數(shù)太大導(dǎo)致的模型過擬合,因此,將受干擾焊球的增強倍數(shù)設(shè)置為3,因為要確保圖像中焊球大小格局變化不大,因此采取隨機水平或垂直翻轉(zhuǎn),幅度為0.01的隨機平移抖動的方法組合來進行增強數(shù)據(jù)集。
4 實驗及結(jié)果分析
4.1 評估方法
對于焊球氣泡缺陷分割結(jié)果的評估,焊球內(nèi)部氣泡缺陷的檢測方法是計算氣泡區(qū)域占焊球區(qū)域面積的百分比,通常定為單個空洞缺陷所占面積不超過焊球面積的 25%、多個空洞缺陷面積總和不超過焊球面積的20% 就算焊接質(zhì)量合格。所以本文設(shè)定:氣泡面積用Svoid表示、焊球的面積用Sbga表示,焊球氣泡占比率用R表示,公式為:
R=SvoidSbga×100%(5)
4.2 結(jié)果與分析
4.2.1 FCN結(jié)果與分析
所搭建的FCN使用預(yù)訓練模型來提高訓練速度和減少過擬合的情況,即在ImageNet數(shù)據(jù)集中的VGG19基礎(chǔ)網(wǎng)絡(luò)模型上進行微調(diào)。為了防止訓練深度全卷積網(wǎng)絡(luò)模型出現(xiàn)梯度爆炸而造成Loss值為NAN的情況和防止全卷積網(wǎng)絡(luò)在求解時可能發(fā)生的過擬合現(xiàn)象,本文將batch size設(shè)置為2,學習率設(shè)置為10-4,將訓練次數(shù)定為104。圖5顯示了FCN訓練時隨著迭代次數(shù)的增加,損失函數(shù)的變化過程,由于使用了預(yù)訓練模型,網(wǎng)絡(luò)在訓練初期損失函數(shù)下降的很快,在迭代8000次后,損失函數(shù)趨于穩(wěn)定,最后迭代終止誤差收斂于0.003左右。
FCN的輸出類別包括背景和焊球這兩大類,得到的是包含焊球區(qū)域和背景區(qū)域的預(yù)測圖像,如圖6所示。FCN對輸入圖像圖6(a)進行預(yù)測分割,并輸出粗分割結(jié)果圖6(b),可以看出圖6(b)很好地去除了背景復(fù)雜因素的干擾從而完整地提取出了目的焊球區(qū)域,為算法細分割階段打下基礎(chǔ)。
4.2.2 本文算法分析
將本文算法實驗最終分割結(jié)果與其他文獻[11,17-18]所采用的方法進行對比。文獻[11]是張俊生等于2018年提出的基于OTSU自適應(yīng)分割和結(jié)合數(shù)學形態(tài)學頂帽操作的分割方法,分割結(jié)果如圖7(b)所示;文獻[17]主要提出一種動態(tài)閾值分割算法,通過控制圖像的平滑程度和差圖像閾值的大小,分別提取焊球區(qū)域和氣泡區(qū)域,二者相與后實現(xiàn)氣泡缺陷的最終分割,分割結(jié)果如圖7(c)所示;文獻[18]是將模糊C均值聚類圖像分割算法與基于邊緣檢測的圖像分割算法相結(jié)合,分割結(jié)果如圖7(d)所示。氣泡檢測方法采用上述評估方法進行評估,評估結(jié)果如表1所示。
從表1中焊球3號和6號的分割情況和數(shù)據(jù)可以看出,其他三種文獻所提出的算法在針對焊球邊緣氣泡像素級與背景像素對比度差的情況下,會將邊緣氣泡當作背景而分割出去,造成處理的過分割情況,使得氣泡所占比例和本文算法有2倍左右的誤差;從焊球2號和8號的分割情況和處理數(shù)據(jù)
可以看出,文獻[11]和文獻[17]中的算法無法對拖尾焊球作出正確的分割,將拖尾的陰影也分割到了焊球部分,使得焊球面積增加,氣泡率下降,造成了數(shù)據(jù)的錯誤;從其他焊球數(shù)據(jù)可以看出對于焊球內(nèi)部像素對比度低的氣泡,文獻[18]分割
效果不足,本文算法和文獻[11]、文獻[17]提出的算法均能將焊球內(nèi)氣泡識別分割出來,但是從微小氣泡和焊球細節(jié)上來看,本文算法在精度上要優(yōu)于文獻[11]和文獻[17]的算法。
實驗結(jié)果表明,本文算法對于BGA焊球的分割識別有以下幾大優(yōu)點:1)可以快速去除背景因素的干擾,完整地提取出焊球區(qū)域;2)對于焊球內(nèi)的邊緣氣泡,不會因為其像素級與背景像素級接近,而將其誤分割出去;3)對于焊球內(nèi)部因光照等因素造成對比度差的氣泡,也能很好地將其提取分割出來。
5 結(jié)語
為了解決BAG氣泡檢測中傳統(tǒng)的分割算法對焊球邊緣氣泡的分割結(jié)果不精確的問題。本文根據(jù)BGA圖像數(shù)據(jù)集的特點搭建了對焊球進行正確語義分割的FCN,通過訓練測試得到了輸入BGA圖像的粗分割結(jié)果;然后再經(jīng)由K-means聚類分割算法處理,在去除因光照干擾造成的焊球像素對比度偏低問題的同時對增強圖像中焊球及其氣泡區(qū)域進行聚類分離,得到最終分割圖像;最后對原始BGA射線圖像中焊球及氣泡缺陷區(qū)域進行標記識別。相較其他算法對分割結(jié)果進行評估數(shù)據(jù)對比,可以看出本文算法很好地解決了提出的問題,并且針對部分復(fù)雜的BGA圖像,本文算法也能夠完整地將焊球分離出來,有較優(yōu)的魯棒性和實用性,滿足BGA工業(yè)檢測中分割精度的需求。但是全卷積網(wǎng)絡(luò)和K-means聚類算法的運行往往會消耗較大的時間資源和內(nèi)存資源,并且本文所采用的FCN是一個相對基礎(chǔ)的模型,如何有效減少基于卷積神經(jīng)網(wǎng)絡(luò)的分割算法的運行時間,并將更好的語義分割技術(shù)應(yīng)用于BGA工業(yè)檢測中將是進一步的努力方向。
參考文獻
[1]薛明陽,衛(wèi)國強,金亮,等.不同應(yīng)變速率下BGA焊球剪切斷裂實驗與模擬分析[J].焊接學報,2014,35(3):45-48.(XUE M Y, WEI G Q, JIN L, et al. Shear fracture test and simulation analysis of BGA welding balls at different strain rates [J]. Transactions of the China Welding Institution, 2014, 35(3): 45-48.)
[2]桂晟偲,劉佳.BGA空洞控制的回歸分析研究[J].電子工藝技術(shù),2011,32(3):148-151.(GUI S C, LIU J. Study on regression analysis for BGA void control [J]. Electronic Process Technology, 2011, 32(3): 148-151.)
[3]方園,符永高,王玲,等.微電子封裝無鉛焊點的可靠性研究進展及評述[J].電子工藝技術(shù),2010,31(2):72-76.(FANG Y, FU Y G, WANG L, et al. Progress and review on lead-free solder joint reliability in micro-electronic packaging [J]. Electronic Process Technology, 2010, 31(2): 72-76.)
[4]李樂.基于精密微焦點X射線的BGA焊點缺陷檢測關(guān)鍵技術(shù)研究[D].廣州:華南理工大學,2014:39-40.(LI L. Research on key technologies of BGA solder joint defect detection based on precision micro-focus X-ray [D]. Guangzhou: South China University of Technology, 2014: 39-40.)
[5]王樹清,文大化.混裝條件下BGA焊點空洞問題[J].電子工藝技術(shù),2012,33(5):289-291.(WANG S Q, WEN D H. BGA solder joint void problem under mixed loading [J]. Electronic Process Technology, 2012, 33(5): 289-291.)
[6]SA-NGUANNAM A, SRINONCHAT J. Analysis ball grid array defects by using new image technique [C]// Proceedings of the 9th International Conference on Signal Processing. Piscataway, NJ: IEEE, 2008: 785-788.
[7]夏石川,桂志國,張權(quán),等.基于偏微分方程的BGA射線圖像去噪方法[J].中北大學學報(自然科學版),2013, 34(6):667-672.(XIA S C, GUI Z G, ZHANG Q, et al. Denoising methods based on partial differential equation for BGA X-ray image [J]. Journal of North University of China (Natural Science Edition), 2013, 34(6): 667-672.)
[8]PENG S H, NAM H D. BGA void detection in X-ray images based on a new blob detector [C]// Proceedings of the 4th International Congress on Image and Signal Processing. Piscataway, NJ: IEEE, 2011:1847-1850.
[9]SUMIMOTO T, MARUYAMA T, AZUMA Y, et al. Development of image analysis for detection of defects of BGA by using X-ray images [C]// Proceedings of the 20th IEEE Instrumentation Technology Conference. Piscataway, NJ: IEEE, 2003: 1131-1136.
[10]SAID A F, BENNETT B L, KARAM L J, et al. Robust automatic void detection in solder balls [C]// Proceedings of the 2010 IEEE International Conference on Acoustics, Speech and Signal Processing. Piscataway, NJ: IEEE, 2010: 1650-1653.
[11]張俊生,王明泉,郭晉秦,等.球柵陣列焊點空洞缺陷的數(shù)學形態(tài)學分析[J].科學技術(shù)與工程,2018,18(2):296-299.(ZHANG J S, WANG M Q, GUO J Q, et al. Analysis of void defects in BGA solder joints with mathematical morphology [J]. Science Technology and Engineering, 2018,18(2): 296-299.)
[12]SHELHAMER E, LONG J, DARRELL T. Fully convolutional networks for semantic segmentation [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(4): 640-651.
[13]魏杰.基于K-means聚類算法改進算法的研究[J].信息通信,2018(5):14-15.(WEI J. Research on improved algorithm based on K-means clustering algorithm [J]. Information and Communication, 2018(5): 14-15.)
[14]劉一鳴,張鵬程,劉祎,等.基于全卷積網(wǎng)絡(luò)和條件隨機場的宮頸癌細胞學圖像的細胞核分割[J].計算機應(yīng)用,2018,38(11):3348-3354.(LIU Y M, ZHANG P C, LIU Y, et al. Segmentation of cervical nuclei based on fully convolutional network and conditional random field [J]. Journal of Computer Applications, 2018,38(11): 3348-3354.)
[15]SIMONYAN K,ZISSERMAN A. Very deep convolutional networks for large-scale image recognition [EB/OL]. [2018-11-20]. https://arxiv.org/pdf/1409.1556.pdf.
[16]胡明輝,李俊,申妍燕,等.基于深度神經(jīng)網(wǎng)絡(luò)的尺橈骨遠端圖像語義分割[J].圖像與信號處理,2018,7(2):85-95.(HU M H, LI J, SHEN Y Y, et al. DRU image semantic segmentation using deep neural networks [J]. Journal of Image and Signal Processing, 2018, 7(2): 85-95.)
[17]張俊生,王明泉,郭晉秦,等.BGA焊點氣泡缺陷X射線圖像的動態(tài)閾值分割方法[J].火力與指揮控制,2018,43(10):113-116.(ZHANG J S, WANG M Q, GUO J Q, et al. Dynamic threshold segmentation method for X-ray images of bubble defects in BGA solder joints [J]. Fire Control and Command Control, 2018, 43(10): 113-116.)
[18]張鵬程.基于平板探測器的BGA缺陷檢測技術(shù)[D].太原:中北大學,2009:34-48.(ZHANG P C. BGA defect detection technology based on flat panel detector [D]. Taiyuan: North University of China, 2009: 34-48.)
This work is partially supported by the National Major Scientific Instruments and Equipment Development Special (2014YQ24044508); the National Natural Science Foundation of China (61671413, 61801438); the Middle School Senior Academic Leadership Program (QX201801); the Shanxi Applied Basic Research Project (201801D221196).
ZHAO Ruixiang, born in 1994, M. S. candidate. His research interests include image processing, deep learning.
HOU Honghua, born in 1975, Ph. D., associate professor. Her research interests include medical image processing, computer vision.
ZHANG Pengcheng, born in 1984, Ph. D., lecturer. His research interests include dose calculation and planning optimization in the precision radiation therapy.
LIU Yi, born in 1987, Ph. D., associate professor. Her research interests include image processing, reconstruction, non-destructive testingmedical image reconstruct.
TIAN Zhu, born in 1995, M. S. candidate. His research interests include image segmentation, deep learning.
GUI Zhiguo, born in 1972, Ph. D., professor. His research interests include signal and information processing, image processing and recognition, image reconstruct.