李 娜, 王學(xué)影, 胡曉峰, 郭 斌, 羅 哉
(中國(guó)計(jì)量大學(xué) 計(jì)量測(cè)試工程學(xué)院,浙江 杭州 310018)
在人工智能、機(jī)器人、半導(dǎo)體、航空航天等高新技術(shù)飛速發(fā)展的環(huán)境下,印刷電路板(printed circuit boards, PCB)制造作為高新技術(shù)的基礎(chǔ)產(chǎn)業(yè),在各個(gè)高新技術(shù)產(chǎn)業(yè)的發(fā)展中發(fā)揮重要的作用。在PCB上焊接集成電路(integrated circuit, IC)、電容、電阻等元器件之后,才能組裝為電子設(shè)備[1]。PCB板上元器件的焊接質(zhì)量將直接影響產(chǎn)品的性能指標(biāo),尤其貼片IC引腳多、間距小,使得貼片IC的焊接缺陷檢測(cè)的難度要高于其他元器件。
傳統(tǒng)的PCB缺陷檢測(cè)方法有人工目檢、在線(xiàn)測(cè)試和功能測(cè)試[2],其中人工目檢容易受到工作人員情緒、經(jīng)驗(yàn)等主觀因素的影響,導(dǎo)致缺陷檢測(cè)的準(zhǔn)確率和效率較低;在線(xiàn)測(cè)試的主要方式為飛針測(cè)試,屬于接觸式測(cè)量,在一定程度上,會(huì)對(duì)電路板造成二次損壞;功能測(cè)試基于自動(dòng)化測(cè)試原理,采用各種測(cè)試設(shè)備對(duì)特定板或特定單元進(jìn)行測(cè)試,具有測(cè)試速度慢、不支持參數(shù)測(cè)量的缺點(diǎn)。
機(jī)器視覺(jué)是一種無(wú)接觸、無(wú)損傷的自動(dòng)檢測(cè)技術(shù)[3],近年來(lái)得到了迅速發(fā)展,基于機(jī)器視覺(jué)的PCB缺陷檢測(cè)備受關(guān)注。Malge P S等[4]提出了一種基于形態(tài)圖像分割算法的PCB缺陷檢測(cè)與分類(lèi)系統(tǒng),能夠檢測(cè)短路、開(kāi)路等多個(gè)缺陷;Kumar M等[5]提出了彩色平面提取、LUT變換等圖像增強(qiáng)方法和標(biāo)準(zhǔn)數(shù)據(jù)生成算法完成對(duì)PCB的缺陷檢測(cè);Gaidhane V H等[6]提出了一種相似性度量方法,對(duì)PCB缺陷進(jìn)行檢測(cè)?;趥鹘y(tǒng)圖像處理和機(jī)器視覺(jué)的方法,需要進(jìn)行特征提取、模板匹配等操作,對(duì)于不同的PCB板,需要重新建模,耗時(shí)且繁瑣。近年來(lái),隨著深度學(xué)習(xí)模型在人臉識(shí)別、缺陷檢測(cè)、目標(biāo)跟蹤等領(lǐng)域成功應(yīng)用[7~9],基于深度學(xué)習(xí)的PCB缺陷檢測(cè)也得到了快速發(fā)展。Ding R等[10]基于Faster R-CNN提出了一種微小的缺陷檢測(cè)網(wǎng)絡(luò),提高了PCB缺陷檢測(cè)的性能。殷政[11]建立深度卷積網(wǎng)絡(luò),對(duì)不同型號(hào)的IC引腳焊接缺陷進(jìn)行檢測(cè)。李澄非等[12]基于YOLOv4提出了一種PCB缺陷檢測(cè)方法,達(dá)到了較高的檢測(cè)精度。由于IC引腳小而密集,對(duì)其缺陷檢測(cè)具有很高的難度,針對(duì)這些存在的問(wèn)題,本文提出改進(jìn)的PP-YOLOv2算法,完成對(duì)IC引腳焊接缺陷的檢測(cè)。
提出改進(jìn)的PP-YOLOv2算法對(duì)IC引腳焊接缺陷進(jìn)行檢測(cè),檢測(cè)流程圖如圖1所示。
圖1 檢測(cè)流程圖Fig.1 Flow chart of detection
對(duì)采集到的IC引腳焊接缺陷圖像進(jìn)行標(biāo)注,制作成Pascal VOC格式的數(shù)據(jù)集,劃分訓(xùn)練集、驗(yàn)證集、測(cè)試集的比例為6:2:2,將訓(xùn)練集、驗(yàn)證集輸入改進(jìn)的PP-YOLOv2網(wǎng)絡(luò)中進(jìn)行迭代,優(yōu)化網(wǎng)絡(luò)參數(shù),加速網(wǎng)絡(luò)收斂,模型訓(xùn)練完畢之后,使用測(cè)試集檢驗(yàn)網(wǎng)絡(luò)對(duì)新的缺陷圖像檢測(cè)的能力。工業(yè)上要求缺陷檢測(cè)的平均準(zhǔn)確率大于95%,如果模型的性能達(dá)到要求,則將模型應(yīng)用到在線(xiàn)檢測(cè)系統(tǒng)中,否則,優(yōu)化網(wǎng)絡(luò),繼續(xù)訓(xùn)練。
基于深度學(xué)習(xí)的目標(biāo)檢測(cè)算法分為:兩階段檢測(cè)算法和單階段檢測(cè)算法。兩階段目標(biāo)檢測(cè)算法將檢測(cè)任務(wù)分2個(gè)階段,首先找出目標(biāo)的候選區(qū)域,對(duì)是否為目標(biāo)做初步判斷;然后再對(duì)候選區(qū)域進(jìn)行分類(lèi)和回歸,對(duì)候選區(qū)域的位置進(jìn)行修正,最后輸出目標(biāo)的類(lèi)別。其代表算法有R-CNN[13],Fast R-CNN[14],Faster R-CNN[15]。單階段目標(biāo)檢測(cè)算法沒(méi)有候選區(qū)域生成階段,直接輸出物體的類(lèi)別概率以及位置坐標(biāo)信息,代表算法有YOLO[16]、YOLOv3[17]、SSD[18]等。
本文基于PP-YOLOv2算法對(duì)IC引腳焊接缺陷進(jìn)行檢測(cè),為了提高PP-YOLOv2算法對(duì)IC引腳焊接缺陷此種小而密集情況的目標(biāo)識(shí)別能力,本文在網(wǎng)絡(luò)的特征提取部分后加入注意力機(jī)制SE(squeeze and excitation)模塊,進(jìn)一步提高網(wǎng)絡(luò)特征提取能力。
PP-YOLOv2是Huang X等[19]提出的一種改進(jìn)的基于PaddlePaddle的YOLOv3模型,是基于anchor-based的單階段目標(biāo)檢測(cè)算法,網(wǎng)絡(luò)由骨干網(wǎng)絡(luò),檢測(cè)頸和檢測(cè)頭組成,引入注意力機(jī)制SE模塊的PP-YOLOv2網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。
圖2中,骨干網(wǎng)絡(luò)為Resnet50-vd網(wǎng)絡(luò)[20,21],檢測(cè)頸為路徑聚合網(wǎng)絡(luò)(path aggregation network,PAN)[22],檢測(cè)頭有3種尺度的輸出,SE Block表示注意力機(jī)制[23]。
3.1.1 改進(jìn)后的PP-YOLOv2骨干網(wǎng)絡(luò)
該模型的骨干網(wǎng)絡(luò)采用Resnet50-vd網(wǎng)絡(luò),相比于YOLOv3的骨干網(wǎng)絡(luò)Darknet53網(wǎng)絡(luò),Resnet50-vd可以根據(jù)不同需要適當(dāng)?shù)卦黾泳W(wǎng)絡(luò)分支,具有更強(qiáng)的普適性。IC引腳小且高密度,經(jīng)典的神經(jīng)網(wǎng)絡(luò)在卷積計(jì)算過(guò)程中,將目標(biāo)中心像素點(diǎn)與其卷積核矩陣范圍內(nèi)的像素點(diǎn)加入計(jì)算,而IC引腳焊接缺陷的尺寸不一、形狀多變,導(dǎo)致檢測(cè)效果不佳。因此,本文在Resnet50-vd網(wǎng)絡(luò)基礎(chǔ)上,用可變卷積層(deformable convolutional networks, DCN)代替了最后一級(jí)的3×3卷積層,提升感受野與實(shí)際目標(biāo)缺陷形狀的匹配度。改進(jìn)后的PP-YOLOv2骨干網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示。
圖3 改進(jìn)后的骨干網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.3 Structure of the improved backbone network
3.1.2 改進(jìn)后的PP-YOLOv2檢測(cè)頸
檢測(cè)頸采用PAN,自上而下地聚合特征信息,在特征金字塔網(wǎng)絡(luò)的基礎(chǔ)上添加了自下而上的路徑增強(qiáng)結(jié)構(gòu),增加了跳轉(zhuǎn)連接,將低層特征信息傳遞給高層,利用準(zhǔn)確的低層定位信號(hào)增強(qiáng)特征層次,進(jìn)而縮短低層與頂層特征之間的信息路徑。檢測(cè)頸PAN結(jié)構(gòu)詳見(jiàn)圖2,PAN中detection block的結(jié)構(gòu)如圖4所示。
圖4 Detection block的結(jié)構(gòu)圖Fig.4 Structure of detection block
圖4中,上一級(jí)輸入的特征圖,分為2個(gè)部分,一部分通過(guò)1×1卷積,另一部分通過(guò)多層卷積,再相加,最后經(jīng)過(guò)1×1卷積輸出。
3.1.3 改進(jìn)后的PP-YOLOv2檢測(cè)頭
改進(jìn)后的PP-YOLOv2的檢測(cè)頭由一個(gè)3×3卷積層和一個(gè)1×1卷積層組成,輸出通道為3×(K+5),其中3表示3種大小的錨框,K表示預(yù)測(cè)的類(lèi)的個(gè)數(shù),5表示每個(gè)預(yù)測(cè)框的4個(gè)位置參數(shù)和1個(gè)包含物體的概率參數(shù)。
3.1.4 注意力機(jī)制SE模塊
對(duì)于卷積神經(jīng)網(wǎng)絡(luò)輸出的H×W×C的特征圖,C是通道,也表示特征的數(shù)量,H和W分別是原始圖片經(jīng)過(guò)壓縮后的圖的高度和寬度,改進(jìn)后的PP-YOLOv2在骨干網(wǎng)絡(luò)后加入SE模塊,SE給特征圖中的每個(gè)通道,通過(guò)神經(jīng)網(wǎng)絡(luò)算出梯度并且前向傳播和后向反饋來(lái)學(xué)習(xí)得到不同的權(quán)重,有利于網(wǎng)絡(luò)學(xué)習(xí)各個(gè)特征通道之間的關(guān)系,提高網(wǎng)絡(luò)對(duì)密集小目標(biāo)的檢測(cè)精度。SE結(jié)構(gòu)圖如圖5所示。
圖5 SE結(jié)構(gòu)圖Fig.5 Structure of SE
由圖5可知,SE模塊首先對(duì)輸入的特征圖全局平均池化,將輸入的特征圖壓縮成為1×1×C的特征通道向量ZC,計(jì)算公式如下:
(1)
式中:uc表示特征向量。
再使用全連接神經(jīng)網(wǎng)絡(luò)經(jīng)過(guò)激活函數(shù)等操作賦予特征通道向量不同的權(quán)重,計(jì)算公式如下:
SC=σ(W2g(W1ZC))
(2)
最后通過(guò)乘法逐通道加權(quán)到C個(gè)通道上,完成在通道維度上對(duì)原始特征的重標(biāo)定,并作為輸出值,計(jì)算公式如下:
(3)
Mish是自正則的非單調(diào)神經(jīng)激活函數(shù)[24],有助于保持較小的負(fù)值,穩(wěn)定網(wǎng)絡(luò)的梯度流;而且,與其他激活函數(shù)相比,無(wú)窮階連續(xù)性和光滑性具有更好的泛化能力,可以提高檢測(cè)的精度。因此,本文將Mish激活函數(shù)應(yīng)用于檢測(cè)頸部。Mish激活函數(shù)如圖6所示。
定義和求導(dǎo)公式如下:
f(x)=x×tanh(ln(1+ex))
(4)
(5)
式中:x表示輸入;w=4(x+1)+4e2x+e3x+ex(4x+6);δ=2ex+e2x+2。
改進(jìn)算法的損失函數(shù),包括坐標(biāo)回歸和分類(lèi)的損失函數(shù),去掉了平滑的L1損失,增加了iou損失和iou感知損失,以適應(yīng)檢測(cè)的回歸任務(wù),提高了定位精度。IC引腳焊接缺陷檢測(cè)模型的損失函數(shù)可以表示為
floss=λ1fxy loss+λ2fwh loss+λ3fobj loss+λ4fcls loss
+λ5fiou loss+λ6fiou aware loss
(6)
式中:λ1,λ2,…,λ6是權(quán)重參數(shù);fxy loss和fwh loss是坐標(biāo)損失函數(shù);fobj loss是置信度損失函數(shù);fcls loss是類(lèi)別損失函數(shù);fiou loss是預(yù)測(cè)框和真實(shí)框交并比損失函數(shù);fiou aware loss是預(yù)測(cè)框和真實(shí)框交并比感知損失函數(shù)。fiou loss和fiou aware loss公式為
(7)
fiou aware loss=-t×log(σ(p))-(1-t)
×log(1-σ(p))
(8)
3.4.1 檢測(cè)精度
平均精確度(average precision, AP)是對(duì)數(shù)據(jù)集中單個(gè)類(lèi)別檢測(cè)精度衡量的指標(biāo),平均檢測(cè)精度均值(mean average precision, mAP)是對(duì)數(shù)據(jù)集中所有類(lèi)別目標(biāo)的檢測(cè)精度衡量的指標(biāo)。mAP是各個(gè)缺陷類(lèi)別的AP的平均值,AP由準(zhǔn)確率-召回率(precision-recall)曲線(xiàn)下覆蓋的面積得到,準(zhǔn)確率、召回率由混淆矩陣計(jì)算得到,混淆矩陣如表1所示。
表1 混淆矩陣Tab.1 Confusion matrix
表1中:TP表示預(yù)測(cè)結(jié)果中預(yù)測(cè)框被正確預(yù)測(cè)為正樣本的個(gè)數(shù);FN表示正樣本被錯(cuò)誤預(yù)測(cè)為負(fù)樣本的個(gè)數(shù);FP表示負(fù)樣本被錯(cuò)誤預(yù)測(cè)為正樣本的個(gè)數(shù);TN表示預(yù)測(cè)框被正確預(yù)測(cè)為負(fù)樣本的個(gè)數(shù)。
(1) 準(zhǔn)確率P又稱(chēng)查準(zhǔn)率,指分類(lèi)過(guò)程中模型所預(yù)測(cè)的所有正樣本內(nèi)預(yù)測(cè)正確的比例,其公式為
P=TP/(TP+FP)
(9)
(2) 召回率R又稱(chēng)查全率,指分類(lèi)過(guò)程中模型預(yù)測(cè)正確的正樣本占真實(shí)正樣本的比例,其公式為
R=TP/(TP+FN)
(10)
(3) 以P為縱軸,R為橫軸作圖,得到模型的P-R曲線(xiàn)。計(jì)算P-R曲線(xiàn)與坐標(biāo)軸所圍的面積,即對(duì)P-R曲線(xiàn)求積分可得到該類(lèi)別的平均精度AP,AP值越高表明檢測(cè)效果越好。其公式如下:
(11)
式中r表示召回率變量。
(4) mAP是評(píng)價(jià)模型綜合性能的重要指標(biāo),代表著模型在所有類(lèi)別目標(biāo)上的平均檢測(cè)精度,其公式如下:
(12)
式中:M表示檢測(cè)目標(biāo)的種類(lèi)數(shù);APi為每一類(lèi)目標(biāo)的平均精度。
3.4.2 檢測(cè)速度
每秒幀數(shù)(frame per second, FPS)表示測(cè)試樣本總數(shù)與測(cè)試樣本進(jìn)行檢測(cè)所消耗時(shí)間的比值,計(jì)算公式為
FPS=N/T
(13)
式中:N表示測(cè)試樣本總數(shù);T表示測(cè)試樣本進(jìn)行檢測(cè)所消耗的時(shí)間。
本文實(shí)驗(yàn)數(shù)據(jù)由搭建的圖像采集硬件平臺(tái)采集得到,計(jì)算機(jī)發(fā)出采集指令,運(yùn)動(dòng)控制器控制PCB板在軌道上移動(dòng),移動(dòng)到指定位置停止,打開(kāi)光源,相機(jī)拍攝IC圖像,存入計(jì)算機(jī)。共計(jì)采集1 000幅圖像。
當(dāng)訓(xùn)練樣本數(shù)較少時(shí),使用深度學(xué)習(xí)算法容易導(dǎo)致過(guò)擬合現(xiàn)象,難以訓(xùn)練出具有好的魯棒性的模型。數(shù)據(jù)增強(qiáng)是一種常見(jiàn)的技術(shù),能夠降低過(guò)擬合,訓(xùn)練出具有好的泛化能力的模型,從而更好的對(duì)缺陷進(jìn)行識(shí)別。因此,本文通過(guò)5種數(shù)據(jù)增強(qiáng)方法對(duì)IC數(shù)據(jù)樣本進(jìn)行擴(kuò)充,以增強(qiáng)數(shù)據(jù)的豐富性。采用的數(shù)據(jù)增強(qiáng)的方法有:平移、翻轉(zhuǎn)、對(duì)比度變換、縮放變換、mosaic數(shù)據(jù)增強(qiáng)。經(jīng)過(guò)數(shù)據(jù)增強(qiáng)后共得到1×104幅圖片,并且圖片大小全部Resize為640×640,數(shù)據(jù)增強(qiáng)示例如圖7所示。
圖7 4種數(shù)據(jù)增強(qiáng)方法示例Fig.7 Examples of four data enhancement methods
為了使采集的圖片數(shù)據(jù)在模型訓(xùn)練及測(cè)試時(shí)更加標(biāo)準(zhǔn),將經(jīng)過(guò)數(shù)據(jù)增強(qiáng)后的圖片數(shù)據(jù)制作成Pascal VOC格式的數(shù)據(jù)集。拍攝得到的IC引腳焊接缺陷共有4種,分別為短路(short_circuit)、缺腳(missing_pin)、翹腳(pin_cocked)、少錫(little_tin),選用LabelImg對(duì)缺陷進(jìn)行標(biāo)注,標(biāo)注后的每一幅圖片都會(huì)生成對(duì)應(yīng)xml格式的標(biāo)注文件,該文件包含圖片的名稱(chēng)及尺寸信息,缺陷名稱(chēng)及缺陷標(biāo)注框的位置信息等。劃分訓(xùn)練集、驗(yàn)證集、測(cè)試集的比例為6:2:2。
計(jì)算平臺(tái)配置如下:CPU為Intel(R) Core(TM) i7-7700@3.60 GHz;GPU為NVIDIA GeForce GTX 1070;內(nèi)存16 GB;操作系統(tǒng)Win10;深度學(xué)習(xí)框架為PaddlePaddle 2.0.2;CUDA 10.2。
數(shù)據(jù)集共1×104幅,劃分訓(xùn)練集6 000幅,驗(yàn)證集2 000幅,測(cè)試集2 000幅。訓(xùn)練集和驗(yàn)證集共計(jì)8 000幅圖片,設(shè)置Batch size為20,則Batch數(shù)為400,輸入圖像尺寸為640×640,初始學(xué)習(xí)率設(shè)置為0.001 25,動(dòng)量參數(shù)設(shè)置為0.9,整個(gè)訓(xùn)練過(guò)程分為100個(gè)Epoch,則總迭代次數(shù)為4×104次。
PP-YOLOv2使用3個(gè)不同尺度的特征圖預(yù)測(cè)缺陷,每個(gè)尺度的特征圖包含3種預(yù)測(cè)信息,因此共有9個(gè)anchor參數(shù)。不同數(shù)據(jù)集中目標(biāo)的尺寸和長(zhǎng)寬比不同,為了更加準(zhǔn)確地識(shí)別本文制作數(shù)據(jù)集中的缺陷,改進(jìn)的算法采用k-means++聚類(lèi)算法對(duì)所有的缺陷框大小聚類(lèi),最終得到9個(gè)聚類(lèi)中心,分別為:(18,61), (18,79), (72,20), (59,29), (56,37), (37,58), (50,84), (51,85), (84,60)。
為了驗(yàn)證改進(jìn)后網(wǎng)絡(luò)的性能,在相同的實(shí)驗(yàn)環(huán)境下,應(yīng)用相同的IC引腳焊接缺陷數(shù)據(jù)集分別對(duì)YOLOv3算法、PP-YOLOv2算法、改進(jìn)算法網(wǎng)絡(luò)訓(xùn)練100輪,損失值曲線(xiàn)對(duì)比如圖8所示。
圖8 3種網(wǎng)絡(luò)訓(xùn)練損失值變化曲線(xiàn)Fig.8 Variation curve of three network training loss values
可見(jiàn),隨著訓(xùn)練輪數(shù)的增加,3種網(wǎng)絡(luò)的損失函數(shù)曲線(xiàn)整體上均呈下降趨勢(shì)。YOLOv3算法損失值曲線(xiàn)有震蕩,PP-YOLOv2算法損失值在訓(xùn)練22輪左右收斂,改進(jìn)算法損失值在訓(xùn)練32輪左右收斂,改進(jìn)算法損失值相比于原始PP-YOLOv2算法來(lái)說(shuō)收斂較慢,這是因?yàn)樵诰W(wǎng)絡(luò)結(jié)構(gòu)中添加了SE模塊,所以增加了計(jì)算量。最終經(jīng)過(guò)100輪迭代訓(xùn)練后,YOLOv3算法損失值收斂至0.2,PP-YOLOv2算法損失值收斂至0.1,改進(jìn)算法損失值收斂至0.04,改進(jìn)算法相比其他2種算法的收斂值更小。綜上所述,改進(jìn)算法的損失曲線(xiàn)收斂值最小且趨于穩(wěn)定,比其他2種算法效果更好。
在訓(xùn)練期間每經(jīng)1輪就在驗(yàn)證集上驗(yàn)證模型效果,平均精度曲線(xiàn)對(duì)比如圖9所示。
圖9 3種網(wǎng)絡(luò)訓(xùn)練平均精度變化曲線(xiàn)Fig.9 Variation curve of mAP of three network training
圖9顯示,隨著訓(xùn)練輪數(shù)的增加,3種網(wǎng)絡(luò)的平均精度曲線(xiàn)整體上均呈上升趨勢(shì)。YOLOv3算法平均精度曲線(xiàn)有波動(dòng),經(jīng)過(guò)90輪訓(xùn)練后模型mAP達(dá)到最高為82%。PP-YOLOv2算法平均精度曲線(xiàn)經(jīng)過(guò)45輪訓(xùn)練后mAP穩(wěn)定在90%左右,經(jīng)66輪訓(xùn)練后模型mAP達(dá)到最高為91%。改進(jìn)算法平均精度曲線(xiàn)在30輪訓(xùn)練后模型的mAP穩(wěn)定在95%左右,經(jīng)49輪訓(xùn)練后模型mAP達(dá)到最高為96%。
分別使用3種模型在IC引腳焊接缺陷測(cè)試集上進(jìn)行預(yù)測(cè),性能對(duì)比如表2所示。
表2 3種模型檢測(cè)性能對(duì)比Tab.2 Comparison of detection performance of three models
表2顯示,YOLOv3模型對(duì)短路、缺腳、翹腳、少錫4種缺陷的AP差為19.4%,表明模型性能隨著缺陷復(fù)雜度增加大幅降低。PP-YOLOv2模型對(duì)4種缺陷的AP差為9.1%,表明模型對(duì)于復(fù)雜缺陷的識(shí)別能力有所提高。改進(jìn)算法對(duì)4種缺陷的AP差為2.1%,各缺陷的平均檢測(cè)精度較為均衡,模型性能得到大幅提高。在閾值為0.5的情況下,改進(jìn)模型的mAP達(dá)到96.6%,與YOLOv3、PP-YOLOv2相比,分別提高了14.9%, 5.1%。檢測(cè)速度上,改進(jìn)模型的檢測(cè)速度遠(yuǎn)快于YOLOv3的檢測(cè)速度,改進(jìn)模型比PP-YOLOv2的檢測(cè)速度稍慢,原因是SE模塊增加了推理時(shí)間,但是其速度在IC質(zhì)檢要求范圍內(nèi)。
分別使用YOLOv3、PP-YOLOv2和改進(jìn)模型對(duì)2幅圖片進(jìn)行檢測(cè),檢測(cè)結(jié)果如圖10所示。
圖10 3種模型對(duì)2張圖片檢測(cè)結(jié)果Fig.10 Detection results of three models on two images
3種模型檢測(cè)結(jié)果的統(tǒng)計(jì)情況如表3所示。
表3 3種模型對(duì)左、右圖檢測(cè)結(jié)果Tab.3 Detection results of three models on the left and right images 個(gè)數(shù)
由圖10和表3可以看出:改進(jìn)模型較準(zhǔn)確地檢測(cè)出了圖中所有的缺陷,而其他兩種模型存在漏檢和錯(cuò)檢,這說(shuō)明改進(jìn)算法模型的識(shí)別效果更好。
本文提出一種基于改進(jìn)PP-YOLOv2算法的IC引腳焊接缺陷檢測(cè)方法。
1) 針對(duì)IC引腳小而密集導(dǎo)致缺陷難以檢測(cè)的問(wèn)題,本文在Resnet50-vd網(wǎng)絡(luò)基礎(chǔ)上,使用可變卷積層DCN,提升了感受野與實(shí)際目標(biāo)缺陷形狀的匹配度。
2) 在骨干網(wǎng)絡(luò)后加入SE模塊,增加了對(duì)小目標(biāo)的感知能力,使用Mish激活函數(shù)改善梯度消失的問(wèn)題,穩(wěn)定了訓(xùn)練過(guò)程,進(jìn)而提高了缺陷檢測(cè)精度。
3) 使用k-means++聚類(lèi)算法確定先驗(yàn)框的大小,加快了模型收斂,提升了檢測(cè)精度和速度。
改進(jìn)算法mAP達(dá)到了96.6%,與YOLOv3、PP-YOLOv2相比,mAP分別提高了14.9%、5.1%,改進(jìn)算法對(duì)單幅圖片的檢測(cè)時(shí)間僅為0.151 s,遠(yuǎn)快于YOLOv3,比PP-YOLOv2的檢測(cè)速度慢。
本研究為IC引腳焊接缺陷檢測(cè)提供了新的研究思路和方法,可為小目標(biāo)和密集目標(biāo)的檢測(cè)提供理論支持和參考。