999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于改進YOLOv5的PCB裸板缺陷檢測

2023-11-25 13:07:52葛平淑劉俊杰向青陽
大連民族大學學報 2023年5期
關鍵詞:特征提取特征檢測

程 霖,張 濤,葛平淑,劉俊杰,向青陽

(大連民族大學 機電工程學院,遼寧 大連 116605 )

隨著中國現代電子產業和新興技術的迅猛發展,印刷電路板(PCB)作為各種電子元器件的載體,是各種電子產品布線連接和信號傳輸的關鍵硬件支撐,決定著電子產品是否能夠正常運行。但生產PCB電路板的工藝十分復雜,受到當前生產工藝技術限制,在PCB生產過程中容易產生如漏孔、鼠咬、開路、短路、雜散、雜銅等缺陷。這些缺陷PCB板一旦應用到電子產品中會導致產品運行故障或者損壞,造成較大經濟損失。因此對PCB裸板及時進行缺陷檢測有著重要的現實意義和經濟價值。

近些年隨著深度學習技術在缺陷檢測領域的不斷發展,與傳統的機器學習方法相比,深度學習的泛化能力更強,適合于更多復雜生產環境。如今已有研究人員將深度學習算法應用于PCB板的缺陷檢測中來。當前基于目標檢測主要分為兩種,Two-stage和One-stage檢測[1]。Two-stage檢測算法中經典的有(R-CNN、Faster R-CNN)等。2020年6月沈非堯等[2]對Faster R-CNN算法進行優化,選擇ResNet-101進行作為特征提取網絡,并在RoI pooling層中結合RoI Align優化算法,提高了訓練速度和精度。2021年6月耿振宇等[3]使用ResNet代替VGG作為Faster R-CNN的主干網絡,并引入特征金字塔網絡(FPN)來解決多尺度檢測問題,并減少了計算量One-stage檢測算法主要為YOLO系列算法,與Two-stage檢測算法相比優點在于速度更快,但精度略低于Two-stage檢測算法。為了兼顧速度與精度問題,2021年6月,孫燦等[4]以YOLOv3為基礎模型,在模型參數計算量、注意力機制以及重疊目標檢測等方面進行優化,提高了YOLO算法的性能。2022年6月李洋等[5]利用ECANet優化有效特征層融合方式,并改進特征金字塔網絡結構,提高了YOLO算法對小目標缺陷的檢測精度。

針對PCB裸板缺陷檢測難度大的問題,提升高密度場景下PCB缺陷檢測精度,緩解梯度消失并降低模型訓練損失仍是現階段大部分算法需要解決的首要問題。本文針對YOLOv5算法進行優化改進,改進主干特征提取網絡。引入密集連接卷積網絡DenseNet思想[6],搭建密集連接模塊,對Bottleneck模塊進行改進。緩解了消失梯度問題,鼓勵特征重用,加強特征傳播。提高YOLOv5算法針對PCB裸板小目標缺陷檢測的精度。

1 YOLOv5算法結構

YOLO系列模型在目標檢測領域是性能較好的單階段目標檢測算法,2020年6月發布的YOLOv5是YOLO系列兼顧準確率和速度的模型。YOLOv5可以分為s、m、l、x四個版本,本文所用算法為YOLOv5s。YOLOv5網絡結構可以分為4個模塊:輸入端(Input)、主干網絡(Backbone)、頸部(Neck)和檢測網絡(Head)[7]。其結構如圖1。

圖1 YOLOv5結構

輸入端的作用就是進行圖像的預處理,將圖片縮放為網絡輸入大小、數據歸一化和數據增強。YOLOv5采用masaic增強技術把四張圖片的部分進行拼接隨機組成一張新的尺寸固定的輸入圖片。而YOLOv5與以往不同的是作者對其進行了改進,變為了自適應圖片縮放,之前的YOLO算法都是將不規則圖片進行填充,產生新的固定的正方形圖片,該方法所生產的新圖片有較多的黑色邊框,由此會造成信息冗余,從而產生不必要的計算量,進而影響算法的推理速度。YOLOv5算法因此改進了圖片縮放方式,采用了自適應的填充,由此對原始圖片添加最少的黑邊框。大大減少了算法推理計算量。主干網絡Backbone模塊則借鑒了跨階段局部網絡CSPNet(Cross Stage Partial Network)的設計思想[8],使用CSPdarknet為主干網絡,減少了模型整體計算量。其中在YOLOv5第一次使用了Focus結構。C3模塊是對殘差特征學習的主要模塊,主要作用是增加網絡深度,提高特征提取能力。C3由兩種不同的bottleneck結構和標準的卷積模塊組成,組成兩種不同的C3模塊??臻g金字塔模塊SSP的主要思想為對輸入的特征圖進行卷積核大小不同的池化操作,得到不同大小的特征圖,最后進行拼接得到統一尺寸的特征圖[9]。頸部(Neck)網絡設計沿用了FPN+PAN的結構[10]。FPN結構通過自頂向下進行上采樣,構建出多尺度高級語義特征圖[11]。PAN結構則是自底向上進行下采樣,加入了自底向上的路線,彌補并加強了定位信息。

2 改進的YOLOv5算法結構

PCB缺陷檢測多為小目標檢測,需要對YOLOv5算法進行改進,而對于小目標檢測的難點在網絡的加深過程中,會出現圖像信息丟失的現象。在網絡加深的過程中,提取出的特征也由淺變深,淺層特征即具體的位置信息,深層特征即抽象的語義信息。隨著網絡加深,小目標在特征圖中所占據的像素會越來越少,使目標檢測的結果不理想。為了更加充分利用各個卷積層所提取出來的特征信息,本文在YOLOv5算法中引入密集連接卷積網絡(DenseNet)的思想,DenseNet網絡具體結構如圖2。

圖2 DenseNet密集連接網絡

在DenseNet網絡中,每兩層之間都直接相連,每層都可以獲得前面所有層的特征輸入,對于網絡L層輸出,傳統網絡的輸出與DenseNet網絡輸出如公式(1)、(2)所示:

xL=HL(xL-1);

(1)

(2)

從上述公式中可以看出,引入密集連接思想,可以實現特征重用。每一層只需學習很少的特征,不需要重復學習冗余的特征圖,通過更少的參數量就使得卷積層學習到更多的特征,相比于傳統的卷積網絡,這種結構的特征利用效率更高,使得網絡可以更加高效的學習新的信息。

對YOLOv5中的主干特征提取網絡進行改進,在主干網絡的Bottleneck中添加兩個新的卷積塊,同時使得每層都可以獲得前面所有層的特征信息,這使得層之間的連接更緊密。密集卷積網絡精度提高的原因是各個層通過更短的連接從損失函數中獲得額外的監督??梢詫?DenseNet 解釋為執行一種“深度監督”。好處是它的每個隱藏層都有分類器,強制中間層學習判別特征。DenseNet以隱式方式執行類似的深度監督,DenseNet 的損失函數和梯度要簡單得多,因為所有層之間共享相同的損失函數。因此DenseNet網絡可以減少梯度消失,增強特征傳播,提高YOLOv5算法中的特征信息重用,使其更加適合PCB裸板缺陷的小目標檢測。具體改進結構如圖3~4。

圖3 原C3模塊

圖4 改進C3模塊

通過上述對YOLOv5算法中的主干特征提取模塊改進,相比于原來層與層之間的連接更加激進,模塊中大量使用了殘差分支,每一層都在接受前幾層的特征信息,并將自己的特征信息傳遞給后續的所有層,以提高算法的檢測精度。

3 實驗與驗證

3.1 實驗環境

軟件環境使用Windows 11 專業工作站版,PyTorch深度學習框架。硬件配置上為CPU:AMD Ryzen 9 5900X 12-Core Processor 3.70 GHz;GPU:NVIDIA RTX A4000 16G顯存。

3.2 數據集簡介

采用公開數據集PKU-Market-PCB,該數據集一共包含692張印刷電路板缺陷圖片,并附有對應的標注文件。包含了工業生產中常見的6種缺陷類型。圖片的張數和缺陷數量見表1。

表1 缺陷圖片數量及各缺陷數量

3.3 數據集增強

由于公開數據集PKU-Market-PCB只有692張缺陷圖片,由于數據量有限,很可能會因數據量較少而導致訓練結果過擬合,因此需要對原始數據進行擴增,本文采用的方法是通過旋轉、鏡像、增亮、加噪聲等隨機增強的方法進行擴增。最終得到數據6 920張。

3.4 評價指標

在評價算法的性能時,本文采用平均精度(mean Averrage Precision,mAP)、召回率(Recall)、F1得分(F)、精確率(Precision)、作為評價指標。

根據PCB測試樣本的真實類別與模型預測類別劃分為真正例(TP)、假正例(FP),真反例(TN),假反例(FN)。

精確率又叫做查準率,是指分類過程中模型預測的所有正例中預測正確的比例。召回率又叫查全率,是指模型預測正確的正例占據真實正例的比例,它們具體計算公式如(3)、(4)所示:

(3)

(4)

準確率和召回率是兩個矛盾的衡量標準,在準確率高時,召回率則會較低;而當召回率較高時,準確率則會較低[12]。綜合兩者,繪制P-R曲線,縱坐標為精確度的值數,橫坐標為召回率的值數,獲取值數后做出曲線圖,根據曲線面積與坐標軸圍成的面積即可得到平均精度AP(Averrage Precision),該面積越大則反映出算法的性能越好。在最后檢測結果中,每一個類別都會有一個AP曲線,所有的AP曲線收集起來,得到mAP即為均值平均精度。兩者計算公式如(5)、(6)所示:

(5)

(6)

3.5 算法訓練與實驗

文中將訓練集、驗證集與測試集按照8:1:1的比例進行劃分。訓練的具體參數設置見表2。

表2 訓練的參數設計

改進的YOLOv5算法訓練期間的損失曲線如圖5。觀察可知隨著訓練輪數的增加,損失曲線的斜率逐漸趨于平緩,圖5a代表訓練集位置損失;圖5b代表訓練集置信度損失;圖5c代表訓練集類別損失。由圖5可知訓練效果達到了較好擬合狀態,證明該算法已經收斂,最終的實驗結果如圖6。改進后的算法對PCB裸板缺陷的識別平均精度為95.6%,其中對于漏孔缺陷的檢測精度最高,達到了99.5%。該算法檢測效果符合需求,準確檢測出各類缺陷如圖7~12。

a) box_loss圖 b) obj_loss圖 c)cls_loss圖圖5 損失曲線

圖6 P-R曲線圖

圖7 mouse bite 缺陷檢測 圖8 spur缺陷檢測

圖11 missing hole 缺陷檢測 圖12 open circuit 缺陷檢測

圖9 short 缺陷檢測 圖10 spurious copper 缺陷檢測

為了檢驗本文算法改進的有效性,在同一數據集中,對改進YOLOv5算法(YOLOv5+denseNet模型),原YOLOv5算法、YOLOv7算法進行對比實驗,所得到的性能參數見表3。

表3 改進后算法與YOLOv5、YOLOv7算法精度比較 %

由表3可知,改動后的算法相比較于原算法,平均精度提高了1.1%,平均精度提高了1.9%,召回率提高了1.6%。說明對YOLOv5算法中主干特征提取模塊引入密集連接思想,加強特征信息傳遞后有效地提高了算法性能,證明了改進YOLOv5算法在PCB裸板等目標檢測方面擁有較好的適用性,其性能優于其他算法。

4 結 語

針對目前檢測算法對小目標缺陷檢測效果不理想的情況,對YOLOv5算法進行改進,提出了一種針對PCB裸板缺陷檢測的改進YOLOv5算法,主要是對YOLOv5算法的主干特征提取網絡進行改進。與原算法相比,在同一數據集中的平均精度得到了提高。值得注意的是不同數據集預處理方式會影響模型精度,因此后續將進一步提高改進模型的泛化性,同時拓展應用在其他目標尺寸較小的應用場景中。

猜你喜歡
特征提取特征檢測
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
如何表達“特征”
基于Gazebo仿真環境的ORB特征提取與比對的研究
電子制作(2019年15期)2019-08-27 01:12:00
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
抓住特征巧觀察
一種基于LBP 特征提取和稀疏表示的肝病識別算法
小波變換在PCB缺陷檢測中的應用
基于MED和循環域解調的多故障特征提取
主站蜘蛛池模板: 国产正在播放| 2019国产在线| 亚洲免费福利视频| 亚洲性影院| 狠狠色香婷婷久久亚洲精品| 色亚洲成人| 亚洲成人免费在线| a级毛片在线免费观看| 亚洲国产中文综合专区在| 欧美亚洲日韩不卡在线在线观看| 朝桐光一区二区| 日本尹人综合香蕉在线观看 | 国产精品国产主播在线观看| 99re视频在线| 成人va亚洲va欧美天堂| 日韩欧美中文字幕在线韩免费 | 中文字幕乱码二三区免费| 欧美精品成人一区二区视频一| 无码aⅴ精品一区二区三区| 国产久操视频| 伊人久久婷婷| 婷五月综合| 亚洲三级色| 亚洲AV无码不卡无码| 98精品全国免费观看视频| 青青久在线视频免费观看| 久久男人视频| AV不卡无码免费一区二区三区| 亚洲精品少妇熟女| 欧美狠狠干| 亚洲国产日韩在线观看| 青青青草国产| 67194亚洲无码| 亚洲欧美另类专区| 欧美日韩在线成人| 欧洲一区二区三区无码| 国产精品女同一区三区五区| 在线国产欧美| 久久精品中文字幕少妇| 成人欧美日韩| 中文字幕人妻av一区二区| 啪啪永久免费av| 国产精品浪潮Av| 无码免费的亚洲视频| 97se亚洲综合| 亚洲婷婷六月| 欧美日韩激情| 天天综合色网| 国产亚洲欧美日韩在线一区二区三区| 好紧太爽了视频免费无码| 波多野结衣爽到高潮漏水大喷| 亚洲第一福利视频导航| 欧美午夜在线观看| swag国产精品| 99久久精品国产自免费| 欧美福利在线观看| 亚国产欧美在线人成| 91福利一区二区三区| 免费日韩在线视频| 欧美一区国产| 国产精品亚洲精品爽爽| 亚洲a级毛片| 亚洲男人天堂网址| 国语少妇高潮| 精品免费在线视频| 一级毛片基地| 在线播放91| 精品成人一区二区三区电影 | 日韩黄色精品| 国产成人高清亚洲一区久久| 欧美专区日韩专区| 一级毛片在线播放| 欧美性猛交一区二区三区| 国产精品亚洲а∨天堂免下载| 福利在线一区| 亚洲无码精品在线播放| 国产免费人成视频网| 国产一级视频久久| 中国一级毛片免费观看| 国产噜噜噜视频在线观看| 欧美不卡二区| 在线观看网站国产|