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

用于PCB缺陷檢測的增強上下文信息Yolov4_tiny算法

2022-09-29 07:51:36徐勝軍胡巧艷韓九強孟月波劉光輝趙敏華
計算機測量與控制 2022年9期
關鍵詞:特征提取特征檢測

徐勝軍, 胡巧艷, 韓九強,2, 孟月波, 劉光輝, 趙敏華

(1.西安建筑科技大學 信息與控制工程學院, 西安 710055;2.西安交通大學 電信學部, 西安 710061)

0 引言

隨著我國現代工業技術的不斷發展和智能制造體系的建立,對電子設備的生產效率和質量性能都帶來了新的挑戰。受限于當前制作工藝水平和集成電路的復雜性,PCB在生產過程中不可避免地出現部分印刷錯誤,導致電子元件質量和性能受到很大影響。當前,PCB缺陷檢測方法主要使用人工目視檢測[1]和電學檢測方法,但是這些方法多存在速率低、成本高、難度高、有損傷等缺點,難以達到工業生產和檢測對速率、精度以及成本的實際需求[2]。

近年來,機器視覺技術飛速發展,基于機器學習的PCB缺陷檢測算法相繼而出。傳統基于圖像處理方法多使用特征匹配、相似性度量等方法先定位缺陷位置,再進行缺陷類型的識別。Liu等[3]基于數學形態學和模式識別的混合識別方法提取PCB圖像檢測模板,并引入圖像畸變檢測算法進行閾值分割,得到標記的缺陷識別結果。Gaidhane等[4]利用圖像對稱矩陣的秩作為缺陷檢測的相似性度量,在無需計算圖像特征的情況下測量待測圖像和檢測模板的相似性。Li等[5]通過二次匹配誤差算法標記目標區域并研究閾值分割圖得到可能的缺陷點,最后結合掩模操作和統計直方圖得到缺陷區域。雖然基于傳統圖像處理的檢測方法實現簡單、計算復雜度小,但由于光照、角度、邊界等影響導致魯棒性較差。

深度學習網絡具有表達復雜圖像特征的強力性能,通過卷積神經網絡自動學習多層次特征,較傳統圖像算法具有顯著優勢[6],可以運用于PCB缺陷的檢測問題上。目前主流的深度學習檢測算法分為單階段檢測算法和兩階段檢測算法。兩階段檢測算法首先通過區域建議網絡產生候選區域,然后對其進行分類和邊界框回歸。Xia等[7]使用結構相似性指數(SSIM)代替形態學算子產生目標區域,設計了一種焦點損耗的輕量級MobileNet-V3網絡,在保持缺陷檢測精度的前提下提升了檢測速度。Ding等[8]基于Faster R-CNN提出微小缺陷檢測網絡(TDD-Net),通過K-means聚類算法生成錨框,使用FPN網絡加強不同特征層的上下文信息。Hu等[9]通過具有特征金字塔網絡的ResNet50進行特征提取,結合ShuffleNetV2殘差單元,并采用GARPN生成更精確的錨框。由于兩階段檢測算法以高精度為首要追求目標,故而運行速度較慢。單階段檢測算法在無需候選區域的情況下直接對目標進行類別和位置進行回歸預測。Wei等[10]提出利用一個語義提升模塊融合不同特征層的上下文信息,引入注意力機制和Shuffle模塊加強學習能力和消除融合后的混疊效應。Adibhatla等[11]引入 GoogleNet 改進Tiny-yolov2的特征提取網絡,強化缺陷特征表征能力,提高缺陷的檢測精度并降低了錯誤率。Xin等[12]通過分析CSPDarkNet53網絡結構的特征分布和PCB缺陷的尺寸分布,微調網絡參數增加錨框包含檢測目標的概率。李聞等[13]使用DBSCAN+K-means 聚類算法重新生成瞄框,并引入殘差單元和SE Block提升了特征提取和融合能力。伍濟鋼等[14]使用改進二分K-means聚類算法結合交并比損失函數確定錨框,引用MobileNetV3和Inceptionv3優化特征提取網絡和檢測網絡,優化檢測速度的同時有效提高對PCB小目標缺陷的檢測性能。和兩階段檢測算法相比,單階段檢測算法以高速度為首要追求目標,然而其檢測精度較低。

為解決上述問題,本文提出一種用于PCB缺陷檢測的增強上下文信息Yolov4_tiny算法。主要貢獻如下:1)通過引入Transformer編碼單元改進特征提取網絡增強不同局部信息的能力;2)利用淺層特征增強上下文信息,提升小目標缺陷特征的表征能力;3)引入注意力機制對有效特征層加權,強化目標特征信息。

1 Yolov4_tiny算法

Yolov4_tiny算法以Yolov4[15]算法為基礎精簡設計的輕量級算法,具有更為優異的檢測速度。該算法從結構上分為特征提取網絡、特征融合網絡和預測網絡。特征提取網絡采用CSPDarknet-tiny[16],輸入的樣本經過數據預處理后利用特征提取網絡提取PCB圖像的淺層特征和深層特征。特征融合網絡采用FPN(feature pyramid networks)[17],通過卷積和上采樣操作自下而上融合特征提取網絡輸出的兩個有效特征層,加強語義特征傳遞。預測網絡將特征融合網絡得到的兩個加強特征層通過卷積操作進行分類和回歸得到最后的預測結果。Yolov4_tiny算法結構圖如圖1所示,默認輸入圖像尺寸是608×608×3,特征分類為6,此時YOLO Head輸出尺寸為19×19×33和38×38×33,分別對應3個先驗框,每個先驗框占據11維信息,包括4維坐標信息、1維置信度信息和6維類別信息。

圖1 Yolov4_tiny算法網絡結構圖

2 用于PCB缺陷檢測的增強上下文信息Yolov4_tiny算法

工業領域的PCB缺陷檢測常存在目標小、特征少等問題,Yolov4_tiny作為單階段檢測算法雖然具有檢測速度快的特點,但由于其檢測精度較低的問題不能直接應用于工業領域的PCB缺陷在線檢測。因此提出一種用于PCB缺陷檢測的增強上下文信息Yolov4_tiny算法。首先,該算法通過引入Transformer編碼單元對特征提取網絡深層特征冗余的問題進行優化,增強網絡捕獲不同尺度PCB圖像局部特征信息的能力;然后,針對PCB缺陷的小目標特性,利用淺層特征增強PCB缺陷上下文信息,提升對小目標缺陷的表征能力;最后,引入注意力機制對特征提取網絡輸出的有效特征層加權,減輕干擾信息的影響,強化目標特征信息,使檢測網絡更好地適應小目標檢測,所提算法網絡結構圖如圖2所示。

2.1 基于Transformer編碼單元的特征提取網絡

在Yolov4_tiny算法中,輸入圖像通過卷積單元和殘差單元操作實現卷積神經網絡的特征提取過程。由于輕量級網絡對于小目標特征提取存在深層特征的信息冗余特點,Transformer編碼單元[18]的殘差結構可以提取不同圖像區域之間的特征信息,為此提出使用Transformer編碼單元替換特征提取網絡最后的卷積單元,不僅可以捕獲全局信息和豐富的上下文信息,從而避免深層特征的過度平滑,并有效降低計算復雜度。

Transformer編碼單元結構圖如圖3所示。特征提取網絡的第三個殘差單元輸出作為Transformer編碼單元的輸入,先后經過兩個殘差層。第1殘差層為多頭注意力層(MultiHead Attention),由多個自注意力組合形成,第2殘差層為前向傳播層(Feed Forward),由兩個線性層和一個非線性層形成。兩個殘差層都分別經過求和、歸一化和隨機丟棄操作再進行殘差連接,防止網絡退化或者過擬合。

圖3 Transformer 編碼單元結構圖

假設輸入矩陣為X,第1殘差層輸出為X1,第2殘差層輸出即最終輸出為X2,計算過程如式(1~6)所示。

Q=WQX,K=WKX,V=WVX

(1)

(2)

MSH=concat(head1,…,headh)W0

(3)

X1=AND(MSH+X)

(4)

MLP=max(0,X1W1+b1)W2+b2

(5)

X2=AND(MLP+X1)

(6)

式中,Q、K、V分別表示輸入矩陣的query矩陣、key矩陣和value矩陣,head表示單個自注意力的輸出,dk表示Q、K矩陣的向量維度,MSH、MLP分別表示多頭注意力輸出和前向傳播輸出,WQ、WK、WV、W0分別代表輸入矩陣對于query矩陣、key矩陣、value矩陣的權重矩陣和對多個自注意力進行連接和變換的權重矩陣,W1、W2、b1、b2表示兩個全連接層的權重矩陣和偏置參數,AND表示求和、歸一化和隨機丟棄操作。

在Transformer編碼單元自注意力的計算過程中,網絡的各個單元格會搜索與其他單元格的潛在關系將其關聯起來,進而得出豐富的、相關的特征信息。通過兩個殘差層的操作,不僅挖掘了特征的表征潛能,也增加了捕獲不同局部信息的能力。

2.2 增強上下文信息的FPN特征融合網絡

在目標檢測網絡中,被檢測目標與周圍目標和背景存在豐富的上下文信息,本文通過增強上下文信息來提高特征的表征能力。在Yolov4_tiny算法中,特征提取網絡將進行下采樣后的38×38和19×19的特征層作為有效特征層進行加強特征融合。對于這種PCB缺陷的小目標檢測問題而言,兩個有效特征層都屬于較深層特征,缺乏淺層特征表示,不利于目標定位,容易出現漏檢或誤檢現象,影響檢測精確度。故此本文從特征提取網絡獲取76×76的淺層特征層,提升FPN網絡對小目標缺陷的表征能力,增強PCB缺陷小目標上下文信息。改進后的算法如圖2所示,特征融合網絡輸出的38×38加強特征層繼續進行卷積和上采樣操作得到76×76的特征層與特征提取網絡輸出的76×76有效特征層融合得到具有淺層特征的加強特征層。為了減少參數量和計算量,本文去除了特征融合網絡輸出的適用于大目標的19×19檢測層。改進后的FPN網絡特征融合層可以獲得加強的淺層輸出,從而增強網絡對小目標缺陷的表征能力。

2.3 通道空間注意力模塊

在特征提取過程中,通道維度和空間維度不可避免會出現一些干擾信息,導致網絡性能不佳。為了在特征融合時能高效利用特征提取網絡提取到的特征信息,本文對特征提取網絡輸出的3個有效特征層分別添加一個注意力機制CBAM模塊(convolutional block attention module)[19],分別從通道維度和空間維度依次推斷注意力映射,并與輸入特征層相乘以進行自適應特征優化,減輕干擾信息的影響,使模型捕獲更多關鍵的特征信息。

圖2 所提算法網絡結構圖

圖4 CBAM模塊結構圖

其中,通道注意力模塊強調特征圖的目標信息,從通道維度對目標信息進行加權處理,計算過程如式(7)所示。先使用最大池化和平均池化從空間維度對特征圖F76×76×128進行壓縮,得到兩個1×1×128的特征描述,再使用由MLP(multi-layer perceptron)組成的共享網絡對這兩個不同的特征描述進行計算并進行激活得到MC(F)。

MC(F)=σ(MLP(AP(F))+MLP(MP(F)))

(7)

MS(F)=σ(f7*7([AP(F);MP(F)]))

(8)

式中,AP、MP分別表示平均池化操作、最大池化操作,f7*7表示核大小為7*7的卷積操作,σ表示Sigmoid激活函數。

空間注意力模塊強調特征圖的位置信息,從空間維度對于目標信息進行加權處理,計算過程如式(8)所示。先使用最大池化和平均池化從通道維度對特征圖F76×76×128進行壓縮,得到兩個76×76×1的特征描述,使用concat將兩個特征描述合并,進一步使用7*7的卷積核進行卷積操作并進行激活生成MS(F)。

2.4 損失函數

YOLO Head輸出的特征層通過解碼得到預測框輸出參數即坐標參數、置信度參數和類別參數,通過學習三項參數逐步確定檢測目標的坐標和類別,置信度參數用于刪除低于置信度閾值的預測框。因此損失函數主要由坐標誤差Lloc、置信度誤差Lconf和類別誤差Lclass組成。

Loss=Lloc+Lconf+Lclass

(9)

坐標誤差采用CIOU(Complete-IoU)損失函數,綜合考慮預測框與真實框的中心距離、重合度以及寬高比,計算方式如公式(10)所示。

(10)

式中,IOU表示預測框和真實框的交并比,wgt、hgt、w、h分別表示真實框和預測框的寬度和高度,ρ2(b,bgt)表示真實框和預測框的中心點的歐式距離,c表示包含預測框和真實框的最小框的對角線距離。

置信度誤差采用交叉熵損失函數,計算方式如公式(11)所示。

(11)

類別誤差采用交叉熵損失函數,計算方式如公式(12)所示。

(12)

3 實驗與分析

3.1 實驗環境與數據集

深度學習實驗平臺系統配置為Ubuntu 18.04,CPU 為Inter(R) Core(TM)i9-9900CPU @2.30 GHz,GPU 為 NVIDIA GeForce GTX 2080Ti,python版本為3.7.2,pytorch版本為1.2.0,Cuda版本為10.1。

本實驗采用北京大學智能機器人開放實驗室的公開PCB缺陷數據集[8]進行網絡的訓練和測試。該數據集包含10 668張PCB缺陷圖像及其對應的標注文件。圖像缺陷類型分別為漏焊、缺口、開路、短路、毛刺和余銅,每張圖像包含1到2類缺陷。整個數據集按照8∶2的比例隨機劃分為訓練集和測試集。

3.2 訓練參數設置與評價指標

對比實驗基于遷移學習的思想,使用Yolov4_tiny算法在COCO數據集訓練過的模型作為預訓練模型,訓練分為凍結階段和解凍階段,設置凍結階段的迭代次數為50,批處理大小為48,學習率為0.001,解凍階段的迭代次數為50,批處理大小為24,學習率為0.000 1。為了使得先驗框尺寸與缺陷尺寸更加匹配,利用K-means聚類算法對先驗框重新聚類,得到適合76×76特征層的先驗框尺寸為[13,12]、[13,17]、[16,17],適合38×38特征層的先驗框尺寸為[21,22]、[27,14]、[31,28]。

為了評估算法的檢測性能,本文采用準確率(Precision)、召回率(Recall)、均值平均精度(mAP)、檢測時間(Time)以及模型參數規模(Size)作為評價指標對算法進行測試和分析。Precision、Recall和mAP各類指標的計算公式如下。

(13)

(14)

(15)

(16)

式中,TP、FP、FN分別為正樣本且預測正確數、正樣本且預測錯誤數、負樣本且預測錯誤數。其中預測值為正樣本指IOU大于0.5的預測值的分類結果。

3.3 消融實驗結果與分析

為了分析Transformer編碼單元、改進的FPN網絡以及CBAM注意力模塊分別對所提算法的提升效果,以Yolov4_tiny為基礎架構針對本文所提出的改進方案進行消融實驗。各消融算法的相關參數設置和訓練策略均相同,測試結果如表1所示。

表1 消融性能對比實驗 %

實驗結果表明,以Yolov4_tiny為基礎在特征提取網絡引入Transformer編碼單元對數據集進行訓練,較Yolov4_tiny算法Precision提升0.75%,Recall提升1.36%,mAP提升1.09%;以Yolov4_tiny為基礎增加淺層特征映射來改進FPN特征融合網絡對數據集進行訓練,較Yolov4_tiny算法Precision提升2.00%,Recall提升1.25%,mAP提升1.62%;以Yolov4_tiny為基礎在特征融合網絡前引入CBAM注意力模塊對數據集進行訓練,較Yolov4_tiny算法Precision提升0.52%,Recall提升0.66%,mAP提升0.62%;以Yolov4_tiny為基礎加入3個模塊后,本文算法達到了最佳檢測性能,較Yolov4_tiny算法Precision提升2.73%,Recall提升4.06%,mAP提升3.12%。因此,整體改進后的算法檢測精度均優于單個改進后的算法。綜上,通過消融實驗可以證明本文所提出的改進方案對于Yolov4_tiny算法在PCB缺陷檢測任務中的檢測性能有所提升。

圖5顯示了原始Yolov4_tiny算法和本文算法在訓練期間的損失曲線。無論是前半段的凍結階段還是后半段的解凍階段,本文算法的訓練集損失和測試集損失曲線都比原始Yolov4_tiny算法具有加速收斂的趨勢,且損失值更低。

圖5 Yolov4_tiny算法和本文算法檢測模型的損失曲線

3.4 不同檢測算法性能結果與分析

為了進一步驗證本文算法的優越性,選取3種主流目標檢測算法同本文算法進行對比,對比算法包括以Resnet50為主干網絡的兩階段目標檢測算法Faster RCNN[20]和以VGG16為主干網絡的單階段目標檢測算法SSD[21]、Yolov3目標檢測算法[22]、用于PCB缺陷檢測的改進版Yolov3算法[13]、輕量級目標檢測算法Yolov4_tiny。針對不同算法的Precision、Recall、mAP、Time、Size評價指標的對比結果如表2所示。

表2 不同檢測算法性能對比實驗

從衡量算法精確率Precision、查全率Recall來看,Faster RCNN算法使用候選框機制遍歷目標時能夠較為全面的檢測到目標,但因此也存在無缺陷區域,導致Recall指標表現優異,Precision指標較低;SSD算法網絡結構擁有多尺度分類器,能較好地兼顧提取不同尺寸目標,又因為網絡深度較低,特征提取不夠充分,導致Precision指標表現優異,Recall指標較低;Yolov3算法和改進版Yolov3算法通過特征網絡提取深層特征與淺層特征并進行加強融合,但對部分缺陷仍存在檢測難度,Precision和Recall指標略顯不足;本文算法在Yolov4_tiny算法的基礎上增加特征提取網絡輸出的有效特征層,將淺層特征加權后傳遞到特征融合模塊中,保留了小目標的特征信息,兩類指標分別提升2.73%、4.06%。

從衡量算法整體性能的mAP來看,Faster RCNN算法、SSD算法、Yolov3算法、改進Yolov3算法在PCB缺陷檢測過程中錯誤較多,mAP指標處于90%以下;Yolov4_tiny算法表現較好,達到了95.58%;本文算法相對于Yolov4_tiny算法提升了3.12%,達到了最優的性能指標。

從衡量算法部署應用可行性的Time和模型參數規模Size來看,Faster RCNN算法、Yolov3算法、改進版Yolov3算法的檢測時間較大,難以保證實時性;SSD算法、Yolov4_tiny算法和本文算法的檢測時間分別是90.73 ms、51.72 ms和81.78 ms,可以較好的保證在線檢測實時性的要求,但本文算法較Faster RCNN算法、SSD算法、Yolov3算法、改進版Yolov3算法和Yolov4_tiny算法的模型參數規模分別減少90.27 MB、74.57 MB、244.93 MB、244.98 MB和3.93 MB。綜上所述,考慮到定量評價的檢測精度、檢測速度以及模型參數規模等指標,本文算法優于其它算法。

3.5 不同檢測算法檢測結果與分析

為直觀評價本文算法在PCB缺陷數據集中檢測效果的優越性,分別采用Faster RCNN、SSD、Yolov4_tiny和本文所提算法進行對比實驗,在測試結果中選擇5種具有代表性的測試圖對比。圖6所示為測試原圖。為更直觀進行缺陷檢測結果對比,圖7中僅放大展示圖6方框部分的測試結果,自上向下分別為毛刺(spur)、缺口(mouse_bite)、短路(short)、余銅(spurious_copper)和漏焊(missing_hole)缺陷檢測,自左向右分別為Faster RCNN、SSD、Yolov4_tiny和本文算法的檢測結果以及實際標注結果。

圖6 測試原圖

圖7 檢測結果對比

由圖中對比結果可以看出,Faster RCNN算法的候選框機制雖然可以將大部分缺陷檢測出來,但是對于同一個目標存在較為嚴重的重疊現象,如圖7的第1、2、4、5行所示,同一個目標出現多個檢測框,且第3行出現漏檢、多檢現象;SSD算法由于網絡深度不足對特征的提取效果不佳,存在大量的漏檢現象,對于圖7中的檢測目標均未檢測出;Yolov4_tiny算法對于毛刺、缺口、余銅和漏焊這類尺寸較小且不易檢測的目標存在一定程度上的漏檢現象,如圖7的第1、2、3、4行所示,且第2行中毛刺和缺口兩類目標識別不清;本文算法可以將所有目標都正確地檢測到,且檢測結果得分最高,具有更加優異的檢測效果。綜上所述,同其它對比算法相比,本文所提算法的檢測精度和檢測速度表現最為優異。

4 結束語

針對PCB缺陷檢測問題,提出了一種用于PCB缺陷檢測的增強上下文信息Yolov4_tiny算法,能夠在保證實時性的基礎上對PCB缺陷進行精準定位和分類。首先,本文選用高實時性的Yolov4_tiny算法作為基本框架,確保了缺陷檢測的準確性和快速性;其次引入Transformer編碼單元來改進特征提取網絡,增強了不同局部信息的能力,并利用注意力機制對特征提取網絡的有效特征層加權,強化了目標特征信息。考慮到PCB缺陷目標尺寸小、特征信息少的問題,本文增加特征提取網絡輸出的有效特征層,利用淺層特征增強PCB缺陷小目標上下文信息,并去掉了冗余的檢測層。實驗結果表明本文算法可以滿足工業上PCB缺陷檢測的實際需求。

猜你喜歡
特征提取特征檢測
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
如何表達“特征”
基于Gazebo仿真環境的ORB特征提取與比對的研究
電子制作(2019年15期)2019-08-27 01:12:00
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
抓住特征巧觀察
一種基于LBP 特征提取和稀疏表示的肝病識別算法
小波變換在PCB缺陷檢測中的應用
基于MED和循環域解調的多故障特征提取
主站蜘蛛池模板: 99精品国产电影| 伊人激情综合| 亚洲欧美国产视频| 欧美日韩国产在线播放| 免费在线国产一区二区三区精品| 国产乱人伦AV在线A| 国产肉感大码AV无码| 国产成人乱无码视频| 欧亚日韩Av| 日韩无码黄色| 天天综合天天综合| 亚洲欧美不卡视频| 一级毛片无毒不卡直接观看| 久久女人网| 色窝窝免费一区二区三区 | 久久精品亚洲热综合一区二区| 久久精品人人做人人综合试看| 国产精品污视频| 无码'专区第一页| 无码国内精品人妻少妇蜜桃视频| 国产综合色在线视频播放线视| 色婷婷啪啪| 欧美亚洲欧美| 欧美成人午夜在线全部免费| 久久国产精品娇妻素人| 日本在线亚洲| 久久一本精品久久久ー99| 成人国产免费| 久久亚洲国产视频| 欧美成人aⅴ| 天天色综网| 中文字幕一区二区视频| 国内嫩模私拍精品视频| 成人一区专区在线观看| 亚洲第一天堂无码专区| 中文字幕欧美日韩| 久久青草热| 高h视频在线| AV网站中文| 日韩高清欧美| 麻豆国产原创视频在线播放| 亚卅精品无码久久毛片乌克兰| 亚洲水蜜桃久久综合网站| 国产a网站| 一级爱做片免费观看久久| 国产精品无码在线看| 91欧美在线| 正在播放久久| 欧美在线精品怡红院| 久久精品国产精品国产一区| 亚洲熟妇AV日韩熟妇在线| 国产欧美日韩另类精彩视频| 欧美a在线看| 欧美三级不卡在线观看视频| 五月婷婷丁香综合| 日韩精品一区二区三区大桥未久 | 亚洲av色吊丝无码| 日韩欧美中文亚洲高清在线| 999精品视频在线| 福利在线不卡| 色综合久久综合网| 成人字幕网视频在线观看| 激情午夜婷婷| 色综合天天综合中文网| 亚洲精品成人7777在线观看| 日本在线视频免费| 欧美亚洲国产日韩电影在线| 国产区网址| 午夜丁香婷婷| 狠狠色丁香婷婷综合| 国产激情在线视频| 天天综合色天天综合网| 国产欧美视频综合二区| 福利片91| 啪啪啪亚洲无码| 亚洲免费成人网| 精品国产www| 高清精品美女在线播放| 日韩不卡免费视频| 日本道综合一本久久久88| 色婷婷视频在线| 亚洲浓毛av|