











摘要:針對現有PCB缺陷檢測算法檢測效率低、參數量大以及結構復雜的問題,提出了一種改進的YOLOv7-tiny算法。設計了多尺度捕獲模塊,通過多尺度特征捕獲、上下文信息融合以及特征增強的方法,提高算法對圖像特征提取的能力,改善CSPSPP層單一池化操作掩蓋特征圖內部有效信息的問題。提出了全局局部門控感知模塊,通過選擇性特征融合、局部與全局信息結合的方法,降低頸部網絡的參數量。基于DeepPCB數據集進行實驗得出,改進后的模型較傳統模型精度提升了1.5%,參數量和計算量分別下降了66%和20.6%,模型規模降低了66.3%。改進后的算法識別精度高、參數量少、計算量小,可以為PCB缺陷的快速準確識別提供良好的條件。
關鍵詞:PCB表面缺陷檢測;YOLOv7-tiny;多尺度捕獲模塊;全局局部門控感知模塊;輕量化
中圖分類號: TP391 文獻標識碼: ADOI:10.3969/j.issn.1007-791X.2025.02.009
0引言
隨著電子信息產業的快速發展,印刷電路板(Printed Circuit Board, PCB)作為關鍵的基礎組件,其質量對于整個電子設備的性能和穩定性具有至關重要的影響[1]。但PCB的生產工藝比較復雜,產生的缺陷種類繁多,常見的缺陷種類如下:斷路、短路、針孔、偽銅、毛刺及鼠咬[2],而這些微小的缺陷卻可能導致電子設備的故障。因此,針對PCB表面的微小缺陷檢測成為了一個關鍵的問題[3-5]。
傳統的PCB缺陷檢測采用人工視覺檢測方法和電氣性能檢測方法。面對繁重的檢測任務,受限于檢測工人的個人經驗、視力狀況、情緒等外在因素[6],容易發生漏檢、誤檢等情況,并且工人的成本高效率低,因此傳統的PCB缺陷檢測方法逐漸地消失在大眾的視野下。
隨著以往的PCB缺陷檢測方法弊端越來越明顯,近些年來基于機器視覺的自動光學檢測(Automatic Optical Inspection, AOI)技術便應運而生[7]。它使用光學方法獲得PCB樣板的表面狀態圖像,并使用模式識別和圖像處理等技術來檢測異物或圖案異常等缺陷。AOI系統在檢測時主要依據的是圖像的顏色、形狀、大小等特征[8],因此對于一些與預定模板或規范略有差別的缺陷,可能會發生誤判或漏判。例如,在檢測電路板上的元件時,如果元件的顏色略有變化或形狀稍有不同,AOI系統可能會誤判為缺陷。此外,AOI系統對光照和環境條件比較敏感,不同的光照條件和環境因素可能會影響到檢測結果的準確性[9]。
近十年來,深度學習在目標檢測領域的應用逐漸成熟,也成為PCB缺陷檢測的主流方法之一[10]。深度學習目標檢測算法模型可以分為兩類:兩階段目標檢測算法和單階段目標檢測算法[11]。其中,兩階段目標檢測算法先提取圖像的候選區域,再對候選區域進行分類和回歸。這類算法的典型代表有R-CNN、Fast R-CNN和Faster R-CNN[12]。它們的優點是檢測精度高,缺點是檢測速度慢,算法復雜。單階段目標檢測算法直接對目標進行定位和分類,沒有候選區域的概念。這類算法的代表有YOLO和SSD[13]。它們的優點是檢測速度快,缺點是檢測精度低[14]。針對焊膏缺陷圖像規格不一致和數據集有限性的問題,Park等[15]對傳統CNN網絡模型進行了改進,引入了一種雙層缺陷檢測點網(D3PointNet)用于錫膏打印缺陷的檢測。通過使用這種網絡,提高了系統的魯棒性。Ding等[16]提出了一個基于Faster R-CNN框架的微小缺陷檢測網絡(TDD-Net)來解決PCB缺陷檢測中的誤檢、漏檢率高及效率低的問題。該網絡利用ResNet-101作為主要結構,并采用特征金字塔網絡進行特征提取,以增強對多尺度缺陷的捕獲能力。實驗結果表明,該網絡在公共數據集上表現出色,具有較強的魯棒性和泛化性能。Li等[17]結合了Faster R-CNN和YOLOv2的方法,以在AOI上提高PCB雙列直插式組件缺陷的檢出率,并降低誤報率。蘇佳等[18]采用ResNet模型作為YOLOv4的特征提取網絡,通過引入注意力機制和改進路徑聚合網絡(Path Aggregation Network,PANet)結構,提高了對小目標的特征提取能力。王淑青等[19]對YOLOv5進行輕量化處理,用ShuffleNetV2結構替代卷積層與交叉卷積連接塊(Cross-Convolution-Connection, C3),優化特征金字塔網絡(Feature Pyramid Network, FPN)和激活函數,提高了檢測速度。
盡管以上基于深度學習的PCB表面缺陷檢測算法在檢測精度、魯棒性和泛化性方面表現出色,但仍存在硬件資源需求高、模型優化調整復雜[20]等不足。為應對PCB檢測的挑戰,并滿足移動端部署需求,本文選擇了檢測速度和精度較高的輕量化模型YOLOv7-tiny網絡。由于YOLOv7-tiny模型仍結構復雜,規模龐大,無法用在PCB缺陷檢測這類終端輕量化檢測場景下,因此需對其進行改進。通過引入多尺度捕獲(Multi-Scale Capture, MSC)模塊替代YOLOv7-tiny原有的特征提取模塊,提升了模型的多尺度表示能力,降低了計算復雜度,并提高了檢測準確度。同時,引入全局局部門控感知模塊(Global-Local Gated Perception, GLGP)到目標檢測的頸部網絡中,大幅減少了計算量。經過改進后的模型在保持較高檢測性能的同時,降低了硬件資源需求,為PCB缺陷檢測在實際應用中的部署提供了更高效的解決方案。
1YOLOv7-tiny算法
YOLOv7-tiny是YOLOv7模型的輕量級版本,經過結構優化簡化,特別適合部署在邊緣計算設備上。如圖1所示,它包含三個主要部分:骨干網絡、頸部網絡和預測頭。YOLOv7-tiny在骨干網絡中簡化了結構,用簡化的輕量級激活網絡(Efficient Linear Activation Network, ELAN)替換了增強型輕量級激活網絡(Enhanced Efficient Linear Activation Network, E-ELAN),并且去掉了多通道池化卷積(Multi-channel Pooling Convolution, MPConv)中的卷積操作,只利用池化進行下采樣。頸部網絡仍采用PANet結構,但在預測頭部分,YOLOv7-tiny用標準卷積取代了重復卷積(Replicated Convolution, REPConv)來調整通道數。這些改動使得YOLOv7-tiny在模型大小和參數數量上較YOLOv7有所降低,因此,YOLOv7-tiny在速度和輕量化方面更具優勢。這使得在計算資源受限的環境下,它更適合進行實時目標檢測。
然而,YOLOv7-tiny也存在一些局限性。特別是其主干網絡尾部的特征提取模塊ELAN和與頸部網絡的通道分離空間金字塔池化(Channel-Separated Spatial Pyramid Pooling, CSPSPP)模塊的連接部分。ELAN的網絡結構復雜,增加了計算量和參數,可能導致特征冗余。另一方面,雖然CSPSPP模塊通過分塊處理和池化操作提升了模型的準確率和響應速度,但其單一的池化操作卻使模型缺乏多尺度表示能力。
目標檢測的頸部網絡是實現不同層次特征圖融合的關鍵,不同的融合策略對檢測器的性能影響顯著。因此,問題的關鍵是如何設計一種更輕量化的特征聚合方案。這種方案將在保證豐富特征獲取的同時,致力于減少參數數量和計算量,以實現更高效的檢測過程。
2改進YOLOv7-tiny算法
2.1改進方法
針對YOLOv7-tiny存在的上述問題,本文旨在設計一種更精簡的特征聚合策略。該策略不僅能保證特征的豐富性,還可有效降低模型參數量和計算成本,從而實現模型性能的優化。本文主要改進方法如下:
提出了MSC模塊,用它來替換原始的CSPSPP層和主干網絡最后的一個ELAN模塊。增強主干網絡特征提取能力并減少模型參數量。
提出了GLGP模塊,用來對YOLOv7-tiny頸部網絡進行重構,大大減少參數量及計算量。結合以上兩種方法,增加模塊調整后YOLOv7-tiny網絡結構如圖2所示。
2.2多尺度捕獲模塊
多尺度表示對于各種視覺任務來說是至關重要的,例如感知目標對象的邊界、區域和語義類別等。在實際場景中,目標的大小和尺度常常是不確定的,因此需要使用多尺度分析的方法來進行目標檢測和識別。多尺度變換可以通過對圖像進行多次縮放和平滑操作來提取不同尺度下的目標信息,從而有效地解決目標的尺度變化和多尺度分布的問題,增加模型的感受野,減少漏檢和誤檢的情況,提高目標檢測的準確性。YOLO v7-tiny在主干網絡的最后使用CSPSPP模塊實現多尺度信息的捕獲,其作用是擴大感受野,使算法能夠適應不同的圖像分辨率。這是通過最大池化來獲得不同的感受野來實現的。在池化過程中,相鄰的像素點會被聚合在一起,它們的特征信息會合并成一個更高級別的特征。這種操作在一定程度上確實可以減少模型的參數數量,防止過擬合;但是單一的池化操作掩蓋了特征圖內部的真正有效信息,并缺少學習能力,在此提出MSC模塊,用它來替換原始的CSPSPP層和主干網絡最后的ELAN。
MSC的結構原理圖如圖3所示。它首先通過通道分離操作對特征圖3等分形成F1、F2和F3三個輸入通道。接著,對F1連續進行兩次最大池化(Max Pooling, MP)操作,對F2進行分組卷積(Group Convolution, GC),對F2的結果和F3進行累加后進—步進行GC,通過兩個MP和3×3的GC獲得了多尺度的表達能力;進一步地,對每一個分組內的多尺度表達進行分組融合,對同一組的特征執行1×1的卷積操作,最后對不同組的特征再進行Concat連接;再進一步地,對Concat后的特征進行快速通道注意力(Fast Channel Attention, FCA)操作,FCA是一種特殊形式的注意力機制,主要用于圖像分類任務中。它通過關注圖像的不同通道特征,來學習通道間的關系,進一步優化特征表示。其中GAP(Global Average Pooling)是全局平均池化模塊,Linear是線性層,Sigmoid是非線性激活函數,經過快速通道注意力機制的變換,最后得到Output輸出。
GAP是一種在卷積神經網絡中使用的技術,這個模塊負責對每個通道的特征圖進行全局平均池化操作,將特征圖的空間維度壓縮為一個數值,從而形成一個一維向量。它能夠有效地匯總和描述每個通道的特征,為后續的通道注意力模塊提供了基礎,有助于減少模型的參數量和計算量,提高模型的效率。計算方式是取特征圖的全局平均值。假設有一個大小為H×W×C的特征圖,其中H代表高度,W表示寬度,C表示通道數。全局平均池化可以通過式(1)計算:
其中,OC表示輸出特征圖中通道C的值,I(i,j,C)表示輸入特征圖中位置(i, j)上通道C的值。
在FCA中,Sigmoid非線性激活函數的作用是將通道注意力權重歸一化到0~1的范圍內。這樣做可以確保權重在合理的范圍內,使得模型更加穩定地進行訓練。Sigmoid非線性激活函數的計算式為
其中,x是輸入值。
在GC中的LeakyReLU激活函數是一種常用的非線性激活函數,它可以有效防止ReLU函數出現“死亡神經元”問題,還可以加快訓練速度、提高模型的魯棒性、改善梯度消失等問題,所以在深度學習中應用較多。LeakyReLU激活函數的計算式為
其中,α是一個非常小的正數,例如0.01。當x大于0時,函數的輸出等于輸入x;當x小于0時,函數的輸出等于輸入x乘以斜率α。它的曲線類似于ReLU函數,但有一個小的斜率,因此被稱為LeakyReLU。
2.3全局局部門控感知模塊
目標檢測中的頸部網絡是連接目標檢測器的主干網絡與頭部網絡的中間階段。這些網絡主要用于收集不同階段的特征圖,并將這些特征圖傳遞到頭部網絡進行最終的目標檢測。在目標檢測的頸部網絡將實現不同層次特征圖的特征融合,而不同的特征圖融合方法對目標檢測器的檢測性能有著極大的影響。在此,提出了GLGP,實現不同層次特征的全局局部信息共享。
GLGP結構原理圖如圖4所示。首先通過1×1卷積層將具有C通道的特征映射為含2C+2個通道數的卷積層,接著對其拆分為C和C+2兩個分組單元。對其中含C+2個通道數的單元進行全局局部信息捕獲,對C通道的特征進行局部和全局信息提取。其中C+2分出的通道一個代表門控,一個代表門控,分別對應乘積到兩個單元后再進行相加后1×1卷積融合,得到最后的全局局部信息門控感知信息,最后在和C通道單元進行乘積后,通過1×1卷積進行感知信息強化,得到輸出。具體改進措施是,對頸部網絡進行了重構,將兩個特征圖進行上采樣,并進行連接,送入GLGP模塊中,之后輸入到ELAN中進行單尺度檢測,GLGP通過選擇性特征融合、局部與全局信息的融合以及計算高效的設計,能夠在目標檢測頸部網絡中達到高效特征融合和低計算復雜度。可以看出改進后的頸部網絡由多個輸出變為一個輸出,可以減少模型的復雜性和大小,從而加速推理時間和減少內存占用,實現模型的輕量化。
3實驗結果與分析
3.1實驗數據集
本文選用了DeepPCB數據集來訓練和測試所提出的改進模型。該數據集由上海交通大學圖像處理與模式識別研究所發布,專門用于PCB缺陷的檢測和識別。通過在該數據集上進行訓練和測試,可以有效驗證改進模型的性能。該數據集包含1 500個圖像對,每對圖像由無缺陷的模板圖像和對齊的測試圖像組成,其中包含注釋,標明了6種最常見類型的PCB缺陷位置,具體包括:開路、短路、鼠咬、毛刺、針孔以及偽銅。該數據集中的所有圖像都是以每毫米48個像素的分辨率通過線性掃描CCD(Charge-Coupled Device)獲得的。模板和測試圖像的大小約為16 k×16 k個像素點,然后將它們裁剪為很多大小為640×640的子圖像,并通過模板匹配技術進行對齊。每張圖片會有3~12個缺陷,其中的各種PCB缺陷數量如表1所示。
2實驗環境與配置
本實驗在Ubuntu 18.04操作系統上進行模型訓練,硬件配置包括NVIDIA GeForce RTX 3090顯卡(24 GB 顯存)和24 GB運行內存。軟件配置使用PyTorch深度學習框架,結合CUDA 11.1來加速訓練過程。在實驗中,訓練所需要的超參數配置信息具體見表2。
3.3評價指標
深度學習在進行缺陷檢測時,通常使用精確度(Precision, P)、召回率(Recall,R)和均值平均精度(mean Average Precision, mAP,記為φ)來評估模型性能。精確度也被稱為查準率,是指被正確識別為正樣本的樣本占所有被識別為正樣本的比例。這主要針對預測結果而言。召回率也叫查全率,表示正確識別的物體數量占測試集中物體總數的比例。mAP是衡量模型整體精度的重要指標,mAP越大表明模型的精度越高。
在目標檢測任務中,TP(True Positive)指的是被正確預測為正樣本的數量,記為NTP;FP(False Positive)則表示被錯誤預測為正樣本的數量,記為NFP;而FN(False Negative)則表示被錯誤預測為負樣本的數量,記為NFN。設定n為目標檢測的總類別數。P(r)代表的是在P-R線圖中某個特定召回率r點處的精確度值。P-R曲線是以r為橫軸,P為縱軸得到的曲線,橫縱坐標所圍區域的大小代表了該類別的平均精度(Average Precision, AP,記為),其中i代表目標類別i的平均精度。
在評估模型準確度時,主要關注兩個指標:mAP@0.5和mAP@0.5:0.95。具體而言,mAP@0.5是在IoU(交并比)閾值設為50%時的平均準確率均值,而mAP@0.5:0.95則是從50%的閾值開始,以5%的增幅逐漸提升至95%,計算不同閾值下的平均準確率均值,并最終求得這些值的均值。這種評估方法更全面地反映了模型在不同交并比閾值下的整體性能,從而提供了更準確的模型性能評估結果。各指標計算式為
為了驗證提出的網絡結構改進的有效性,在實驗條件相同的情況下,將提出的改進YOLOv7-tiny模型的方法分別進行消融實驗,分析各個改進對算法性能的影響,相關實驗結果如表3所示。mAP@0.5表示在置信度閾值為0.5的情況下的平均精度。mAP@0.5:0.95表示在置信度閾值從0.5到0.95的范圍內的平均精度。表3YOLOv7-tiny 網絡結構消融實驗對比
由表3數據可以看出首先對于修改原始YOLOv7-tiny模型的特征提取網絡并加入MSC模塊,能夠使模型的參數量和計算量分別下降25.0%和9.1%,并且mAP@0.5和mAP@0.5:0.95分別提升了0.2和0.6個百分點,說明改進后的模型提高了頸部網絡的多尺度捕獲能力,并且更加輕量化。其次對于頸部網絡的修改并加入GLGP,同比原始模型,參數量和計算量分別減少了53.3%和16%,同時mAP@0.5和mAP@0.5:0.95分別提升了0.4個1.2和百分點,證實了對頸部網絡的輕量化改進的可行性。最后,融合以上兩個改進方法的YOLOv7-tiny模型比原始模型的參數量和計算量更是分別減少了66%和20.6%,并且沒有損失檢測精度,mAP@0.5和mAP@0.5:0.95分別提升了0.3和1.5個百分點。改進后的YOLOv7-tiny網絡成功地在模型輕量化與精度提升之間找到了平衡。在保持模型輕量化的同時,其精度沒有下降,證明了這個新模型在實用性和性能提升方面的優勢。
3.5不同算法對比分析
為了進一步驗證本文提出的算法的有效性,需要進行與當前主流單階段目標檢測算法模型的對比實驗,包括YOLOv3-tiny、YOLOv5s、YOLOv6-tiny和YOLOv8n,對比實驗結果如表4所示。
從表4的數據可以看出,本文改進的算法在性能上有顯著的提升。與YOLOv3-tiny、YOLOv5s、YOLOv6n以及YOLOv8n這些算法相比,本文的算法在mAP@0.5:0.95這一關鍵指標上分別取得了34.2%、4.4%、6.1%和6.1%的提升。同時,在參數規模方面,本文的算法相較于這些對比算法分別減少了83.4%、78.0%、52.3%和33.3%,這意味著本文的算法在模型復雜度上有了大幅度的降低。在計算量方面,與YOLOv3-tiny、YOLOv5s、YOLOv6n和YOLOv7n相比,本文的算法分別實現了45.0%、56.3%、11.8%和20.6%的減少。此外,模型的大小也有顯著的降低,與YOLOv3-tiny、YOLOv5s、YOLOv6-tiny、YOLOv8n以及YOLOv7-tiny相比,本文的模型分別減小了38.5 MB、7.1 MB、8.4 MB、3.7 MB和15.2 MB。
綜合以上數據,本文提出的改進YOLOv7-tiny算法在性能上展現出了顯著的優勢。相較于其他對比算法,該算法在mAP@0.5:0.95這一關鍵指標上實現了顯著提升,同時有效降低了模型復雜度、計算量以及模型大小。這一優化平衡了模型性能與模型大小、計算量的需求,使得該算法更加適用于移動端部署。
3.6實驗結果分析
使用相同的數據集和參數設置,對原始的YOLOv7-tiny模型和改進后的YOLOv7-tiny模型進行訓練和預測。取IoU閾值為0.5時,分別得到改進前后的P-R曲線,如圖5所示。P-R曲線越靠近右上角的點表示AP越大,效果更佳。通過比較可發現,改進后六大缺陷的P-R曲線均向右上角趨近,說明改進后的各類AP值均有得到良好的提升,提高了檢測的準確率,mAP值也有很大的提高。
本實驗對六種缺陷的mAP@0.5:0.95值進行了改進前后的對比。與mAP@0.5主要用于評估算法在較寬松的檢測場景下的性能不同,mAP@0.5:0.95是一種更為嚴格和全面的性能評估指標,適用于少數的微小缺陷場景。圖6為對比結果,可以看到,改進后的算法在PCB六大缺陷的檢測精度上分別取得了1.1%、1.5%、2.3%、2.3%、1%和0.8%的提升。這表明改進后的算法在準確識別和定位缺陷方面表現更好。改進后使得算法能夠更好地適應實際應用場景中的不同需求,提高了缺陷檢測的準確性和可靠性。這為改進后的算法在實際工業應用中的可靠性和有效性提供了有力支持。
從圖7和圖8可以看出,改進后的檢測結果中能檢測出來短路漏檢的短路缺陷(圖中用紅色圓圈標出誤檢和漏檢),并且對于開路(Open)、短路(Short)、鼠咬(Mousebite)、毛刺(Spur)、針孔(Pin-hole)和偽銅(Copper)這六種缺陷,改進版的YOLOv7-tiny相比原版在準確度和置信度上均有顯著提高。原版的YOLOv7-tiny經常出現誤檢和漏檢的情況,而改進后的算法其誤檢率和錯檢率都有大幅度下降。綜上所述,本文所改進的YOLOv7-tiny模型在查全率、準確率、誤檢率、漏檢率等方面表現出色。
4結論
本文提出了一種基于YOLOv7-tiny的輕量級PCB缺陷檢測算法,解決了傳統算法在特征提取和模型復雜度方面的不足。通過引入MSC,有效改進了骨干網絡的結構,增強了模型對多尺度特征的捕獲能力,進而提高了特征提取的效率。同時對頸部網絡進行了優化,借助GLGP的優勢,簡化了網絡結構,提升了特征聚合的效果。通過DeepPCB數據集的實驗驗證,改進后的模型與傳統模型對比,精度提升了1.5%,參數量、計算量和模型大小分別下降了66%、20.6%和66.3%。與其他算法相比,在準確度和輕量化方面的大幅度提升,使得本文提出的算法更適合部署在資源受限的設備上。
參考文獻
[1] 謝翔, 肖金球, 汪俞成, 等. 基于改進YOLOv5s的DeepPCB缺陷檢測算法研究 [J]. 微電子學與計算機, 2023, 40(7): 1-9.
XIE X, XIAO J Q, WANG Y C, et al. DeepPCB defect detection based on improved YOLOv5s algorithm[J]. Microelectronicsand Computer, 2023, 40(7): 1-9.
[2] 李聞, 李小春, 閆昊雷. 基于改進YOLOv3的PCB缺陷檢測 [J]. 電光與控制, 2022, 29(4): 106-111.
LI W, LI X C, YAN H L. PCB defect detection based on improved YOLOv3 [J].Electronics Optics and Control, 2022, 29(4): 106-111.
[3] HOU Q L, SUN J, HUANG P L. A novel algorithm for tool wear online inspection based on machine vision [J]. The International Journal of Advanced Manufacturing Technology, 2019, 101(9): 2415-2423.
[4] 湯勃, 孔建益, 伍世虔, 等. 機器視覺表面缺陷檢測綜述 [J]. 中國圖象圖形學報, 2017, 22(12): 1640-1663.
TANG B, KONG J Y, WU S Q, et al. Review of surface defect detection based on machine vision [J]. Journal of Image and Graphics, 2017, 22(12): 1640-1663.
[5]" KAUR B, KAUR G, KAUR A. Detection and classification of printed circuit board defects using image subtraction method [C]//Proceedings of Recent Advances in Engineering and Computational Sciences, Chandigarh, India, 2014:1-5.
[6] 盧榮勝, 吳昂, 張騰達,等. 自動光學(視覺)檢測技術及其在缺陷檢測中的應用綜述 [J]. 光學學報, 2018, 38(8): 23-58.
LU R S, WANG A, ZHANG T D, et al. Review of automated optical (visual) inspection technology and its applications in defect detection [J]. Acta Optica Sinica, 2018, 38(8): 23-58.
[7] 葉倩, 蔡念, 李飛洋, 等. 基于自適應匹配半徑視覺背景提取的IC焊點檢測算法 [J]. 焊接技術, 2017, 46(7): 12-15.
YE Q, CAI N, LI F Y, et al. IC solder joint detection algorithm based on adaptive matching radius visual background extraction [J]. Welding Technology, 2017, 46(7): 12-15.
[8] 朱寒, 林麗, 王健華, 等. 基于改進模板匹配及圖像差分法的PCB板缺陷多級檢測方法 [J]. 應用光學, 2020, 41(4): 837-843.
ZHU H, LIN L, WANG J H, et al. Multi-level detection method for PCB board defects based on improved template matching and image difference [J]. Journal of Applied Optics, 2020, 41(4): 837-843.
[9] 郭民, 王蕊. AOI技術在PCB缺陷檢測中的設計與實現 [J]. 測控技術, 2016, 35(12): 127-130.
GUO M, WANG R. Design and implementation of AOI technology in PCB defect dection [J]. Measurement and Control Technology, 2016, 35(12): 127-130.
[10] 董靜毅, 呂文濤, 包曉敏, 等. 基于機器視覺的PCB板表面缺陷檢測方法研究進展 [J]. 浙江理工大學學報(自然科學版), 2021, 45(3): 379-389.
DONG J Y,L W T, BAO X M, et al. Research progress of PCB surface defect detection method based on machine vision[J]. Journal of Zhejiang Sci-Tech University(Natural Sciences), 2021, 45(3): 379-389.
[11] 王丹, 李琦, 梁棟, 等. 基于多尺度全卷積與CRF的路面裂縫檢測算法 [J]. 燕山大學學報, 2021, 45(4): 367-376.
WANG D, LI Q, LIANG D, et al. Road crack detection algorithms based on multi-scale fully convolution and CRF [J]. Journal of Yanshan University, 2021, 45(4): 367-376.
[12] 侯玥, 王開宇, 金順福. 一種基于YOLOv5的小樣本目標檢測模型 [J]. 燕山大學學報, 2023, 47(1): 64-72.
HOU Y, WANG K Y, JIN S F.A few-shot object detection model based on YOLOv5 [J]. Journal of Yanshan University, 2023, 47(1): 64-72.
[13] 許德剛, 王露, 李凡. 深度學習的典型目標檢測算法研究綜述 [J]. 計算機工程與應用, 2021, 57(8): 10-25.
XU D G, WANG L, LI F. Review of typical object detection algorithms for deep learning [J]. Computer Engineering and Applications, 2021, 57(8): 10-25.
[14] 劉俊明, 孟衛華. 基于深度學習的單階段目標檢測算法研究綜述 [J]. 航空兵器, 2020, 27(3): 44-53.
LIU J M, MENG W H. Review on single-stage object detection algorithm based on deep learning [J]. Aviation Weapons, 2020, 27(3): 44-53.
[15] PARK J M, YOO Y H, KIM U H, et al. D3PointNet: dual-level defect detection pointnet for solder paste printer in surface mount technology [J]. IEEE Access, 2020, 8: 140310-140322.
[16]" DING R W, DAI L H, LI G P, et al.TDD-net: a tiny defect detection network for printed circuit boards [J]. CAAI Transactions on Intelligence Technology, 2019, 4(2): 110-116.
[17]" LI Y T, KUO P, GUO J I. Automatic industry PCB board DIP process defect detection system based on deep ensemble self-adaption method [J]. IEEE Transactions on Components, Packaging and Manufacturing Technology, 2020, 11(2): 312-323.
[18]" 蘇佳, 賈欣雨, 侯衛民. 基于YOLO-J的PCB缺陷檢測算法 [J]. 計算機集成制造系統, 2022, 28(6): 1-20.
SU J, JIA X Y, HOU W M. YOLO-J based PCB defect detection algorithm [J]. Computer Integrated Manufacturing Systems, 2022, 28(6): 1-20.
[19] 王淑青, 魯濠, 魯東林, 等. 基于輕量化人工神經網絡的PCB板缺陷檢測 [J]. 儀表技術與傳感器, 2022, 22(5): 98-104.
WANG S Q, LU H, LU D L, et al. PCB board defect detection based on lightweight artificial neural network [J]. Instrument Technique and Sensor, 2022, 22(5): 98-104.
[20] 劉浩翰, 樊一鳴, 賀懷清, 等. 改進YOLOv7-tiny的目標檢測輕量化模型 [J]. 計算機工程與應用, 2023, 59(14): 166-175.
LIU H H, FAN Y M, HE H Q, et al. Improved YOLOv7-tiny’s object detection lightweight model [J]. Computer Engineering and Applications, 2023, 59(14): 166-175.
PCB defect detection algorithm based on improved YOLOv7-tiny
HOU Peiguo, HAN Chaoming, LI Ning, SONG Tao
( Key Laboratory of Measurement Technology and Instrumentation of Hebei Province, Yanshan University, Qinhuangdao, Hebei 066004, China)
Abstract: In response to the issues of low detection efficiency, a large number of parameters, and the complex structure of existing PCB defect detection algorithms, an improved YOLOv7-tiny algorithm is proposed. A multi-scale capture module is designed to enhance the algorithm′s ability to extract image features through multi-scale feature capture, context information fusion, and feature enhancement, addressing the problem of a single pooling operation at the CSPSPP layer masking effective information within the feature map. A global-local gated perception module is introduced, reducing the parameter count of the neck network through selective feature fusion and the combination of local and global information. Experimental results on the DeepPCB dataset show that the improved model achieves a 1.5% increase in accuracy compared to traditional models, with a reduction of 66% in parameters and 20.6% in computational workload, and a 66.3% decrease in model size. The improved algorithm demonstrates high recognition accuracy, a reduced parameter count, and lower computational requirements, providing favorable conditions for fast and accurate identification of PCB defects.
Keywords: PCB surface defect detection; YOLOv7-tiny; multi-scale capture module; global-local gated perception module; lightweight
收稿日期:2023-11-15責任編輯:王建青
基金項目:河北省自然科學基金資助項目(F2023203005);河北省教育廳科學研究資助項目(CXY2024024)
作者簡介:侯培國(1968-),男,山東臨沂人,博士,教授,博士生導師,主要研究方向為光電檢測、智能檢測、智能儀器研究與設計,智能交通、物聯網技術及應用;*通信作者:宋濤(1982-),男,黑龍江齊齊哈爾人,博士,教授級高級工程師,主要研究方向為計算機視覺和虛擬現實技術,Email:tsong@ysu.edu。