遲盛元,白 巖*,孟祥民
(北華大學 機械工程學院,吉林 吉林)
隨著電子工業(yè)的發(fā)展,電子工業(yè)在現代制造業(yè)中占據著重要的地位。印刷電路板(Printed Circuit Board,PCB)作為一種重要的電子元件,確保著各種元器件的正常運行。因此提高PCB 質量對電子信息行業(yè)是非常重要的。但是PCB 的生產過程會經歷許多復雜的工序,可能會出現短路、開路等缺陷。為了保證電子設備的安全和可靠,必須對PCB 的表面缺陷進行檢測。
針對PCB 缺陷檢測,易歡等人[1]利用HALCON 軟件,進行傳統(tǒng)的圖像處理方法來進行缺陷識別。董大興等人[2]通過使用Canny 算子和霍夫變換等方式來進行PCB 缺陷檢測。這兩種方法不僅不具有泛化性,而且最終結果檢測結果的準確還過于偏低。王淑青等人[3]將YOLOv5 原始模型的主干網絡替換為EfficientNetV2 結構來提高模型檢測精度,但是得出來的結果迭代次數太多,對邊緣設施要求過高。
本文針對上述問題,對YOLOv5 網絡結構算法進行改進,來提高PCB 缺陷檢測精度。
YOLOv5[4]因運行速度快、識別精度高等特點,在計算機視覺領域受到廣泛應用。YOLOv5 網絡由輸入端(Input)、主干網絡(Backbone),特征融合網絡(Neck)和輸出端(Output)四個部分構成[5]。其中Input 指的是圖像的傳入,Backbone 利用不同圖像的信號在細粒度上聚集并產生圖像特征,Neck 通過各種混合和組合圖像特征操作將圖像特征信息傳遞到預測層,Output 主要用于對圖象的特征進行預測,產生一個邊框,并對分類進行預測[6]。
由于印制電路板缺陷部分結構復雜,具有強干擾力,因此本文在Backbone 階段加入SE 注意力機制(SEnet)[7]。該方法能夠自動地從各個特征中提取出重要度,并根據這些重要度對特征進行強化,同時剔除那些不需要處理的特征。
在圖1 中,U 表示大小為C×H×W 的特征圖,Fsq表示為Squeeze 運算,類似一個全局平均池化運算,見式(1)
圖1 SE 注意力模塊
zc表示經過Fsq運算后的輸出,下標c 表示通道數;uc代表U 中第c 個二維矩陣,在圖3 中Fsq為Excitation 運算,等于2 個full connection 運算,見式(2)
s 是經過Fex處理后的輸出,其中δ 和σ 分別表示ReLU 和sigmoid 的激活函數。然后對s 進行Fscale運算,即將特征映射uc與標量sc的信道相乘,得到輸出特征,見式(3)
在YOLOX 算法中使用了解耦頭的方法,不僅可以加快收斂速度,而且還能提升檢測精度[8]。原始YOLOv5 算法仍采用YOLOv3 的Head,在進行目標檢測過程中,分類任務與回歸任務是相互沖突的,但是使用解耦頭方法可以巧妙的解決這個問題。解耦頭結構圖見圖2。
圖2 解耦頭結構圖
我們對YOLOv5 網絡結構進行了一定改寫,首先,在Backbone 階段引入SEnet,通過自學習方法,自動獲取各特征信道的重要性值,來獲得更重要的特征;然后,引入了解耦頭(Decoupled Head)的方法,來解決分類與回歸任務間的沖突。改進前后的結構對比圖見圖3。
圖3 改進前后結構對比圖
本實驗數據來自于北京大學智能機器人開放實驗室,共收集到1 293 幅圖片,包含6 種缺陷[9]。缺陷圖片見圖4(a),檢測效果的效果圖見圖4(b)。
圖4 缺陷圖片及檢測效果
實驗在Windows 10 系統(tǒng)下完成,CPU 為Intel Core i5-12400F@2.5GHz,GPU 型 號 為 NVIDIA Ge-Force RTX3050,顯存12 GB,單顯卡訓練,使用CUDA11.3 對GPU 進行加速,采用基于Python3.9 的Pytorch1.11.0 深度學習框架。
模型的評價指標主要有:準確率(precision, P),召回率(recall, R)平均精度均值(mean average precision,mAP)等[10]。其中,P、mAP 是判斷準確率的重要依據,計算式為(4-7)。
其中,TP、FP、FN 分別是被模型預測為正例的正樣本數,被模型預測為正例的負樣本數,和被模型預測為負例的正樣本數。
為了更全面地分析各個模塊的改進效果,本文設計了消融實驗,見表1。實驗表明,引入各個模塊后mAP@.5 都有不同程度提高,實驗4 比實驗1 的mAP@.5 提高了4.2%。表2 顯示不同算法的對比結果,從表2 可知,改進后的YOLOv5 算法比其他網絡效果檢測效果好。
表1 消融實驗
表2 算法對比實驗
本文通過對YOLOv5 網絡結構的改進,使改進后的算法在印刷電路板的缺陷的檢測和識別的實驗中獲得了良好的效果。最后的實驗結果顯示,在改進后的YOLOv5 網絡結構中,對PCB 電路板缺陷的檢測與識別的mAP@.5 為92.5%,通過對YOLOv5 網絡的仿真試驗,證明了該方法的有效性。