四川大學(xué)機(jī)械工程學(xué)院 郭戰(zhàn)嶺 徐雷 冉光再 陳建華
為解決PCB缺陷傳統(tǒng)人工檢測(cè)方法誤檢率高、效率低等問題,提出一種基于ORB算法和圖像差分的PCB缺陷檢測(cè)方法。該方法首先使用ORB算法將待測(cè)圖與模板圖進(jìn)行配準(zhǔn),而后對(duì)待測(cè)圖進(jìn)行圖像預(yù)處理以減少噪聲提高圖片質(zhì)量,之后對(duì)差分后的圖像進(jìn)行去噪,形態(tài)學(xué)處理及圖像二值化,最后在待測(cè)圖上標(biāo)記出缺陷的位置并統(tǒng)計(jì)缺陷總數(shù)。實(shí)驗(yàn)結(jié)果表明,該方法對(duì)本文研究的六種缺陷的平均缺陷檢測(cè)準(zhǔn)確率達(dá)94.6%,每張待測(cè)圖平均檢測(cè)耗時(shí)少于3s。
2020年,我國(guó)PCB總產(chǎn)值已達(dá)350.5億美元,占全球總產(chǎn)值的53.7%。據(jù)Prismark估計(jì),在未來五年,我國(guó)PCB行業(yè)將穩(wěn)定發(fā)展,在全球PCB產(chǎn)業(yè)中占據(jù)核心地位[1]。PCB作為實(shí)現(xiàn)電子元器件電氣連接和支撐的重要載體,其質(zhì)量的穩(wěn)定性尤為重要,所以實(shí)現(xiàn)PCB的高質(zhì)量檢測(cè)是十分必要的[2]。傳統(tǒng)的PCB缺陷檢測(cè)方式以人工目檢為主,但人工目檢因人的主觀性強(qiáng),容易導(dǎo)致漏檢、誤檢,且存在檢測(cè)效率低、數(shù)據(jù)收集困難、自動(dòng)化程度低等缺點(diǎn)[3]。近幾年來發(fā)展迅速,已成為印制電路板缺陷檢測(cè)的重要研究方向[4-6]。利用機(jī)器視覺技術(shù)進(jìn)行的PCB缺陷檢測(cè)可極大提高缺陷檢測(cè)的準(zhǔn)確率和效率。近年來,已有不少研究人員利用機(jī)器視覺技術(shù)進(jìn)行PCB缺陷檢測(cè)方面的研究,并取得了許多的成果。文獻(xiàn)[7]提出了一種基于隨機(jī)霍夫變換和坐標(biāo)變換相結(jié)合的配準(zhǔn)方法,提高了圖像配準(zhǔn)的效率和精度;文獻(xiàn)[8]采用非參考法實(shí)現(xiàn)了電路板的缺陷檢測(cè);文獻(xiàn)[9]提出采用參考法思想對(duì)PCB板上的焊接缺陷進(jìn)行檢測(cè),而后通過分析各類焊接缺陷的特點(diǎn),實(shí)現(xiàn)對(duì)缺陷的識(shí)別;文獻(xiàn)[10]利用鄰域梯度方向信息熵及邊緣像素在局部區(qū)域的分布特性構(gòu)建了用于訓(xùn)練SVM分類器的特征向量,實(shí)現(xiàn)了PCB缺陷的識(shí)別與定位;文獻(xiàn)[11]采用仿射變換配準(zhǔn)和差影計(jì)算,實(shí)現(xiàn)了PCB缺陷區(qū)域的獲取;文獻(xiàn)[12]通過求連通區(qū)域數(shù),計(jì)算歐拉數(shù),求缺陷區(qū)域面積等方法,準(zhǔn)確的檢測(cè)出待測(cè)PCB板的缺陷。文獻(xiàn)[13]運(yùn)用圖像增強(qiáng)及圖像配準(zhǔn)技術(shù)實(shí)現(xiàn)了PCB板的常規(guī)缺陷檢測(cè),基本達(dá)到了中小企業(yè)的檢測(cè)要求。
為解決PCB缺陷傳統(tǒng)人工檢測(cè)方法誤檢率高、效率低等問題,本文提出一種基于ORB算法和圖像差分的PCB裸板缺陷檢測(cè)方法。
本文實(shí)驗(yàn)部分采用的開源數(shù)據(jù)集,包含六種PCB缺陷,待檢測(cè)缺陷種類為:漏孔,鼠咬,開路,短路,毛刺,偽銅。缺陷示例如圖1所示。

圖1 六種PCB缺陷示例Fig.1 Examples of six PCB defects
在實(shí)際工業(yè)生產(chǎn)中,受待測(cè)PCB位置誤差、相機(jī)拍攝角度等不確定因素影響,實(shí)際采集到的PCB待測(cè)圖與模板圖在空間上不完全對(duì)齊,所以在進(jìn)行缺陷檢測(cè)前須將待測(cè)圖和模板圖進(jìn)行配準(zhǔn),而后才可進(jìn)行差分運(yùn)算和缺陷檢測(cè)。
現(xiàn)階段,圖像配準(zhǔn)算法主要分為三大類:第一類是通過獲得圖像的灰度狀況,得到圖像的灰度特征,將其量化之后以此為依據(jù)來進(jìn)行配準(zhǔn)。基于灰度的配準(zhǔn)方法僅需依據(jù)圖像的灰度信息來進(jìn)行圖像的匹配,實(shí)現(xiàn)起來十分簡(jiǎn)單,但計(jì)算量大,配準(zhǔn)精度受光照強(qiáng)度影響較大,使用范圍不廣泛。第二類是通過獲取圖像的局部像素變化,得到并記錄圖像的特征角點(diǎn),進(jìn)而以特征角點(diǎn)為KeyPoint依據(jù)來進(jìn)行圖像配準(zhǔn)。此配準(zhǔn)過程相對(duì)復(fù)雜,但配準(zhǔn)精度高,抗噪性好,不易受光照影響。第三類則是基于變換域的圖像配準(zhǔn)算法。該算法抗噪性好,但配準(zhǔn)時(shí)的計(jì)算量大,配準(zhǔn)耗時(shí)較長(zhǎng)。為獲取較高的配準(zhǔn)精度及配準(zhǔn)效率,本文選用第二類算法進(jìn)行圖像配準(zhǔn)。
ORB算法是一種對(duì)特征點(diǎn)進(jìn)行快速的提取和描述的算法,具有計(jì)算速度快的特點(diǎn)。其計(jì)算時(shí)間大概只有SIFT的1%,SURF的10%,故本文使用ORB算法進(jìn)行圖像配準(zhǔn)。
ORB算法的基本配準(zhǔn)過程:
(1)利用FAST-N算法檢測(cè)圖像中的特征點(diǎn)。傳統(tǒng)的Fast算法中,目標(biāo)像素點(diǎn)會(huì)與周圍圓上的16個(gè)像素點(diǎn)進(jìn)行灰度值比較;但此處ORB算法中使用的FAST-N算法,僅需與周圍的4個(gè)像素點(diǎn)進(jìn)行比較。因此ORB中的Fast算法較傳統(tǒng)的Fast算法,效率提高了4倍,且二者特征點(diǎn)提取效果接近。
(2)ORB算法中采用建立圖像金字塔的方法使原FAST特征具有尺度不變性,即每層分別提取FAST特征點(diǎn)。針對(duì)FAST特征點(diǎn)不具有方向性的問題,此處使用灰度質(zhì)心法獲取特征點(diǎn)鄰域內(nèi)的質(zhì)心,而后將特征點(diǎn)與質(zhì)心之間的矢量的方向定義為特征點(diǎn)的方向。
(3)之后在BRIEF算法的基礎(chǔ)上進(jìn)行改進(jìn)得到rBRIEF,使計(jì)算出來的二進(jìn)制字符串組成的特征點(diǎn)描述子具有旋轉(zhuǎn)不變性并增加了可區(qū)分性。
(4)最后使用漢明距離計(jì)算出2個(gè)特征點(diǎn)描述子的相似程度從而判斷是否為正確匹配點(diǎn)。
本文方法實(shí)現(xiàn)缺陷檢測(cè)的基本流程,如圖2所示。

圖2 缺陷檢測(cè)流程圖Fig.2 Defect detection flow chart
本文使用ORB算法對(duì)已獲取的待測(cè)圖進(jìn)行配準(zhǔn)。在兩張圖像的配準(zhǔn)過程中,ORB算法將分別獲得兩幅圖像各自的關(guān)鍵點(diǎn)和特征描述符,最后根據(jù)這些信息,進(jìn)行特征匹配,將兩幅圖中極可能為同一對(duì)象的同一特征點(diǎn)匹配起來,配準(zhǔn)效果如圖3所示。

圖3 圖像配準(zhǔn)示例Fig.3 Image registration example
從圖中可以看到,該算法得到的結(jié)果十分精準(zhǔn),基本未出現(xiàn)不匹配的特征對(duì),可以很好的滿足配準(zhǔn)需求。
2.2.1 圖像預(yù)處理
該部分首先對(duì)整幅待測(cè)圖進(jìn)行二值化處理,而后依次采用直方圖均衡化,Laplace圖像銳化,中值濾波進(jìn)行圖像增強(qiáng)。直方圖均衡化,Laplace圖像銳化可促進(jìn)缺陷與背景的分離;中值濾波可很大程度上濾除由圖像增強(qiáng)引入的椒鹽噪聲。通過比較自適應(yīng)閾值分割法與全局閾值分割法的分割效果,本文最終采用自適應(yīng)閾值分割算法來對(duì)PCB圖像進(jìn)行圖像分割,以減小PCB表面各處亮度差異對(duì)圖像分割效果的影響。
經(jīng)過圖像預(yù)處理后的待測(cè)圖,PCB邊界清晰,分割效果較好,可以進(jìn)行圖像差分操作。圖像預(yù)處理后的待測(cè)圖,如圖4所示。

圖4 預(yù)處理后的待測(cè)圖Fig.4 Picture to be tested after preprocessing
2.2.2 圖像差分
本文將采集到的標(biāo)準(zhǔn)圖像進(jìn)行對(duì)比度調(diào)整、灰度化與二值化操作。將上述操作后的處理結(jié)果存儲(chǔ)為模板,以節(jié)省計(jì)算機(jī)的計(jì)算時(shí)間,提高缺陷檢測(cè)效率。模板圖示例,如圖5所示。

圖5 模板圖Fig.5 Template diagram
從圖6圖像差分后的結(jié)果可看出缺陷信息(此處缺陷為偽銅)可以被很好的提取出來,但存在部分缺陷產(chǎn)生兩個(gè)連通域,缺陷信息不全及較暗的輪廓噪點(diǎn)等問題,故需對(duì)該圖進(jìn)行后續(xù)處理。

圖6 圖像差分后結(jié)果(偽銅)Fig.6 The result of image difference (spurious copper)
2.2.3 形態(tài)學(xué)處理及二值化
先采用中值濾波和均值濾波進(jìn)行圖像去噪,而后進(jìn)行閉運(yùn)算操作,以消除單個(gè)缺陷內(nèi)部的孔洞,使單個(gè)缺陷恢復(fù)為單連通。處理結(jié)果如圖7所示。從圖7可看出單個(gè)缺陷已經(jīng)恢復(fù)為單連通,但圖像上還存在少量灰度值較低的噪點(diǎn)區(qū)域,故再次對(duì)圖像進(jìn)行中值濾波和均值濾波,在此次濾波后,孤立噪點(diǎn)已基本消除。為了避免誤檢,此時(shí)采用一個(gè)較大的全局閾值對(duì)圖像進(jìn)行二值化,將灰度值極低的噪點(diǎn)去除,以凸顯缺陷信息。二值化結(jié)果,如圖8所示。

圖7 閉運(yùn)算結(jié)果圖Fig.7 Closed operation result

圖8 圖像二值化處理結(jié)果Fig.8 Image binarization processing result
2.2.4 缺陷標(biāo)注
此時(shí)已獲得僅存缺陷的二值圖,在獲得缺陷輪廓后,根據(jù)輪廓信息進(jìn)行缺陷標(biāo)注。偽銅檢測(cè)示例,如圖9所示。

圖9 缺陷標(biāo)注結(jié)果Fig.9 Example of false copper detection results
觀察標(biāo)注結(jié)果,可知此偽銅缺陷已被完整標(biāo)注出來,且缺陷計(jì)數(shù)準(zhǔn)確。
本文缺陷檢測(cè)實(shí)驗(yàn)采用的公開數(shù)據(jù)集包含十種不同規(guī)格的PCB線路板圖像以及六種缺陷,總計(jì)690張圖片。本文首先使用ORB算法對(duì)待測(cè)圖進(jìn)行配準(zhǔn),而對(duì)其進(jìn)行圖像預(yù)處理,之后將與模板圖差分后的結(jié)果進(jìn)行去噪和形態(tài)學(xué)處理,最后標(biāo)記出缺陷位置并統(tǒng)計(jì)缺陷總數(shù)。實(shí)驗(yàn)缺陷檢測(cè)準(zhǔn)確率如表1所示,檢測(cè)耗時(shí)如表2所示。

表1 PCB缺陷檢測(cè)準(zhǔn)確率Tab.1 PCB defect detection accuracy rate

表2 PCB缺陷檢測(cè)耗時(shí)Tab.2 PCB defect detection time
由表1可看出本文算法對(duì)大部分缺陷檢測(cè)效果較好,如漏孔、鼠咬、開路、短路、毛刺的缺陷檢測(cè)準(zhǔn)
確率均達(dá)到94%以上,而針對(duì)偽銅缺陷的檢測(cè)準(zhǔn)確率較低,僅為85.2%。偽銅缺陷的檢測(cè)準(zhǔn)確率低的原因可能是偽銅缺陷形狀呈長(zhǎng)條狀,在圖像差分時(shí)易丟失中間段的信息,導(dǎo)致檢測(cè)失敗。本實(shí)驗(yàn)的平均缺陷檢測(cè)準(zhǔn)確率為94.6%,大體達(dá)到預(yù)期要求。
不同規(guī)格的PCB板的缺陷檢測(cè)準(zhǔn)確率也差別較大。1,4,5,6,7,8,9,10號(hào)PCB板的缺陷檢測(cè)準(zhǔn)確率均在95%及以上,而2號(hào)PCB板的缺陷檢測(cè)準(zhǔn)確率僅為83.3%。可能原因?yàn)?號(hào)板,自身形態(tài)較復(fù)雜,線路太過于密集,特征點(diǎn)過多,適配難度大,導(dǎo)致缺陷檢測(cè)準(zhǔn)確率低。以上兩點(diǎn),在2號(hào)板的偽銅缺陷檢測(cè)體現(xiàn)的尤為明顯,20塊含有偽銅缺陷的PCB板僅檢出13塊,缺陷檢測(cè)準(zhǔn)確率僅為65%,遠(yuǎn)遠(yuǎn)低于平均檢測(cè)準(zhǔn)確率。
從表2可以看出,平均每張待測(cè)圖檢測(cè)耗為2.982s,對(duì)于不同缺陷類型,每張待測(cè)圖平均檢測(cè)耗時(shí)也有不同。毛刺缺陷檢測(cè)耗時(shí)最長(zhǎng),每張待測(cè)圖平均耗時(shí)為3.211s;漏孔缺陷檢測(cè)耗時(shí)最短,每張待測(cè)圖平均耗時(shí)為2.829s。
(1)本文提出一種基于ORB算法和圖像差分的PCB裸板缺陷檢測(cè)方法,并對(duì)該方法的檢測(cè)流程進(jìn)行了詳細(xì)的說明。
(2)對(duì)該方法的檢測(cè)準(zhǔn)確度和效率進(jìn)行了實(shí)驗(yàn)驗(yàn)證。實(shí)驗(yàn)結(jié)果表明,使用該方法對(duì)PCB進(jìn)行缺陷檢測(cè),檢測(cè)準(zhǔn)確率平均可達(dá)到94.6%,每張待測(cè)圖平均耗時(shí)少于3s,該方法能夠快速準(zhǔn)確的檢測(cè)出常見缺陷,達(dá)到了預(yù)期目標(biāo)。但該方法對(duì)偽銅缺陷及形狀較復(fù)雜的PCB板檢測(cè)效果有待改進(jìn),可作為后續(xù)研究的重點(diǎn)。
(3)介紹了ORB算法的配準(zhǔn)過程,并使用ORB算法對(duì)待測(cè)圖進(jìn)行配準(zhǔn),很好的解決了待測(cè)圖畸變問題。
數(shù)字技術(shù)與應(yīng)用2022年3期