












摘" 要: 鋼材表面缺陷檢測是確保鋼材生產質量的重要環節。針對鋼材表面缺陷檢測中存在檢測精度低和特征提取能力不足等問題,提出一種改進YOLOv5s的鋼材缺陷檢測算法YOLOv5s?STCD。首先,將主干提取網絡的最后一個C3模塊與Swin Transformer結構融合,以增強模型的特征提取能力;其次,通過引入坐標注意力(CA)機制,提升模型對重要特征的關注程度;然后,使用解耦頭替換YOLOv5s中的檢測頭,將分類任務和回歸任務分離;最后,將CIoU損失函數替換為SIoU函數,進一步提升模型的檢測性能。在數據增強后的GC10?DET數據集上進行實驗,結果表明,改進后的YOLOv5s?STCD模型檢測的精確率為92.1%,平均檢測精度為84.8%,相比原YOLOv5s算法提升了5.6%和3%,檢測速度為49.26 f/s,更好地滿足了鋼材表面缺陷檢測的需求。
關鍵詞: YOLOv5s; Swin Transformer; 坐標注意力; SIoU; 解耦頭; 表面缺陷檢測
中圖分類號: TN911.1?34; TP391" " " " " " " " " " " 文獻標識碼: A" " " " " " " " "文章編號: 1004?373X(2024)13?0007?08
Improved YOLO steel surface defect detection algorithm
LI Heping, CHEN Zhongju, XU Haoran, HUANG Xiaolong
(School of Computer Science, Yangtze University, Jingzhou 434023, China)
Abstract: Steel surface defect detection is an important step to ensure the quality of steel production. In view of the low detection accuracy and insufficient feature extraction ability in steel surface defect detection, an improved YOLOv5s steel defect detection algorithm named YOLOv5s?STCD is proposed. The last C3 module of the backbone extraction network is integrated with the Swin Transformer structure to enhance the feature extraction capability of the model. The coordinate attention (CA) mechanism is introduced to enhance the model′s attention to important features. The detection header in YOLOv5s is replaced with a decoupled head to separate the classification task from the regression task. The CIoU loss function is replaced with SIoU function to further improve the detection performance of the model. The experiment was carried out on the GC10?DET data set after data enhancement. The results show that the detection accuracy of the improved YOLOv5s?STCD model is 92.1%, its average detection accuracy is 84.8%, which is 5.6% and 3% higher than those of the original YOLOv5s algorithm, and its detection speed is 49.26 f/s. It can meet the needs of steel surface defect detection better.
Keywords: YOLOv5s; Swin Transformer; CA; SIoU; decoupled head; surface defect detection
0" 引" 言
鋼材廣泛應用于機械制造、房屋建設、化工等產業。然而,鋼材生產過程中常出現壓痕、油斑和焊縫等表面缺陷,對產品的安全性能和使用壽命產生負面影響。因此,提高鋼材表面缺陷檢測的準確率至關重要。
近年來,眾多學者針對鋼材表面缺陷檢測方法進行研究,其方法主要分為傳統的機器視覺方法和深度學習方法。傳統的機器視覺利用圖像處理算法提取圖像的特征信息,然后根據特征信息進行表面缺陷的識別和分類[1]。如文獻[2]設計了一種CASAE結構,用于缺陷的分割和定位。文獻[3]通過高斯濾波降噪和自適應二值化以及形態學方法進行預處理和缺陷提取,并結合Canny邊緣檢測和輪廓查找進行識別。這種特征提取方式容易受到背景環境和光照變化的影響,無法實現高精度的缺陷檢測。
隨著深度學習的快速發展,基于卷積神經網絡的目標檢測技術在缺陷檢測領域發揮著重要作用[4]。目前的目標檢測算法可根據結構劃分為兩類:第一類是以R?CNN[5]和Faster R?CNN[6]為代表的兩階段目標檢測算法,如文獻[7]提出了一種應用K?means算法聚類分析和特征金字塔網絡的缺陷檢測算法,文獻[8]提出了一種由預測和細化兩個階段組成的目標檢測網絡;第二類是以SSD[9]算法和YOLO[10?14]系列算法為代表的一階段目標檢測算法,如文獻[15]提出了一種基于改進的YOLOv3缺陷檢測算法,通過應用K?均值聚類算法和調整網絡結構來提高缺陷檢測效果。文獻[16]提出了一種改進的鋼鐵表面缺陷檢測算法MT?YOLOv5,該算法在YOLOv5的基礎上引入了Transformer[17]模塊,以有效提取圖像的全局特征信息。兩階段目標檢測算法識別的準確率高,但檢測速度較慢;一階段目標檢測算法具有較快的速度,能夠滿足實時檢測需求,但檢測精度較低。目前相關的技術都存在進一步改進的空間。
針對現有鋼材表面缺陷檢測算法存在檢測準確率低和特征提取能力不足等問題,本文提出了一種改進YOLOv5s的鋼材缺陷檢測算法YOLOv5s?STCD,通過對YOLOv5模型相關模塊進行改進,旨在提高模型檢測準確率和收斂速度,并與主流的表面缺陷檢測算法進行對比實驗,以探討改進的YOLOv5s?STCD算法在鋼材表面缺陷檢測領域的可行性,為進一步提高檢測精度提供參考。
1" YOLOv5
YOLOv5是在YOLOv3基礎上進一步優化和改進而來,它具有檢測速度快、模型小的特點,主要包括:主干網絡(Backbone)、特征混合層(Neck)和檢測層(Head)。
Backbone包括Conv、C3、SPFF。首先,使用Conv卷積減少內存開銷;其次,C3結構中采用殘差模塊;最后,使用SPPF擴大感受野并融合不同尺度特征圖的信息。Neck采用FPN+PAN結構的設計,FPN自頂向下傳達語義特征,特征金字塔(PAN)自底向上傳達強定位特征,以增強網絡特征融合能力。Head接收Neck傳遞的特征圖,使用非極大值抑制對目標進行篩選,進而得到最優的目標框,用來預測和回歸目標。
2" YOLOv5算法改進
針對鋼材表面缺陷目標尺寸和形狀差異大、難以檢測的問題,本文對YOLOv5s進行了改進。改進的方法包括以下四個方面:首先,將Swin Transformer[18]模塊和C3模塊融合,替換了主干提取網絡的最后一層C3模塊,通過不增加參數量的方式擴大感受野面積,增強了網絡的特征提取能力;其次,引入了CA(Coordinate Attention)機制,增加了網絡對重要特征的關注程度,從而提高了特征提取能力和檢測準確率;然后,將原模型中的檢測頭用解耦頭(Decoupled Head)進行替換,將分類任務和回歸任務分開處理,以避免兩個任務之間的沖突;最后,采用SIoU損失函數代替原模型中的CIoU損失函數,進一步加快收斂速度并提高了檢測準確率。改進后的YOLOv5s?STCD模型的網絡架構如圖1所示。
2.1" 融合Swin Transformer
傳統的CNN網絡通過增加網絡深度來擴大感受野以提取圖像特征,但這使得網絡模型變得復雜,并且末端的計算開銷越來越大。相比之下,Swin Transformer通過分層和窗口劃分操作更高效地提取信息。因此,本文將C3模塊和Swin Transformer模塊融合,替換主干提取網絡的最后一層C3模塊。Swin Transformer模塊的結構如圖2所示,包括歸一化層(Layer Norm, LN)、窗口多頭注意力模塊(Windows Multi?head Self?attention, W?MSA)、位移窗口自注意模塊(Shifted Windows Multi?Head Self?attention, SW?MSA)和多層感知機(Multilayer Perceptron, MLP)。每個MSA模塊和MLP之前都應用LN,并在每個MSA模塊和MLP之后使用殘差連接。LN對特征圖進行歸一化處理,W?MSA進行窗口劃分并進行多頭自注意力計算,SW?MSA進行切分和位移操作以實現不同窗口之間的信息交互,MLP用于對特征圖進行類別信息的劃分。
在Swin Tranformer的傳輸過程中,輸入特征[X]的輸出表達公式如式(1)~式(4)所示:
[Xl=W?MSA(LN(Xl-1))+X-1] (1)
[Xl=MLP(LN(Xl))+Xl] (2)
[Xl+1=SW?MSA(LN(Xl))+Xl] (3)
[Xl+1=MLP(LN(Xl+1))+Xl+1] (4)
在Swin Transformer模塊中,自注意力的計算是其核心部分,其計算方式如公式(5)所示:
[Attention(Q,K,V)=SoftmaxQKTd+BV] (5)
式中:[Q]、[K]、[V]均表示特征向量;[d]表示模型設定的維度;Softmax表示激活函數。
Swin Transformer模塊采用W?MSA和SW?MSA替代了Transformer模塊中的多頭注意力(Multi?head Self? attention, MSA)。W?MSA使用基于窗口的計算策略,顯著減少了計算量和復雜度。MSA和W?MSA的計算復雜度[Ω]表達式如式(6)和式(7)所示:
[ΩMSA=4hwC2+2(hw)2C] (6)
[ΩW?MSA=4hwC2+2M2hwC] (7)
式中:[h]為圖片高度;[w]為圖片寬度;[C]為圖片深度;[M]為每個窗口的大小。
2.2" CA注意力
為解決鋼材表面缺陷檢測存在關鍵信息無法被有效檢測到的問題,本文通過引入CA[19]注意力機制以加強模型對重要特征的注意力。CA是一種高效的注意力機制,包括通道注意力和空間注意力,能夠同時獲取通道信息、方向感知和位置感知。具體工作原理如下。
1) 將位置信息嵌入到通道注意力機制中,實現坐標信息的嵌入。通過輸入特征圖[X],經過水平方向和垂直方向上尺寸為([H],1)和(1,[W])的池化層對每個通道進行編碼,從而得到水平方向和垂直方向上的方向感知特征圖。過程表達式如式(8)和式(9)所示:
[Zhch=1W0≤ilt;Wxch,i] (8)
[Zwcw=1H0≤jlt;Hxcj,w] (9)
式中:[W]和[H]表示對特征圖的坐標進行編碼的寬度和高度;[c]表示通道的分量,即坐標的分量。
2) 使用1[×]1卷積對通道進行降維,得到水平和垂直方向上的空間信息特征圖。過程表達式為:
[f=δF1zh,zw] (10)
式中:[δ]表示卷積變換函數;[F1]表示激活函數;[zh,zw]表示特征圖的拼接運算;[f]表示水平和垂直方向上的中間特征映射。
3) 沿著空間維度將[f]切分為兩個單獨的張量[fh]和[fw],并通過1×1卷積和Sigmoid激活函數對這兩個張量進行變換,使之與輸入[X]具有相同通道數的張量。其過程表達式為式(11)和式(12):
[gh=σFhfh] (11)
[gw=σFwfw] (12)
式中:[gh]和[gw] 表示權重注意力值;[σ]表示Sigmoid激活函數;[fh]和[fw]表示特征圖張量;[Fh]和[Fw]表示1×1卷積。
4) 對得到的結果進行擴展,將權重與輸入相乘,得到注意力加強后的特征圖。CA模塊最終輸出如式(13)所示:
[yci,j=xci,j×gwcj×ghci] (13)
式中:[xci,j]表示輸入的特征圖;[gwcj]和[ghci]表示垂直和水平方向上的注意力權重值。
CA注意力機制結構示意圖如圖3所示。
2.3" 引入解耦檢測頭
YOLOv5s算法在目標檢測中采用耦合預測頭,將分類任務和回歸任務放在同一個檢測頭中進行。然而,在訓練過程中,這兩個任務經常發生沖突,導致模型的檢測精度降低和收斂速度變慢。為了解決上述問題,本文在YOLOv5s中引入了解耦頭[20],將分類任務和回歸任務進行分離預測,從而提高模型的檢測精度和收斂速度。解耦頭的結構如圖4所示。
首先,使用1×1卷積將特征通道減少到256;接著,使用兩個3×3的卷積分別作用于分類任務和回歸任務。其中,分類任務使用1×1卷積進行分類操作,回歸任務使用1×1卷積進行定位和置信度操作。通過上述操作,實現了對分類、定位和置信度的分開檢測。
2.4" 損失函數
損失函數在模型訓練過程中起著至關重要的作用,它能夠衡量標注真實框和檢測目標預測框之間的重疊程度,進而評估預測結果的準確性。因此,選擇合適的損失函數有助于加快模型訓練的收斂速度。YOLOv5s算法中采用CIoU Loss作為損失函數,該損失函數基于原真實框與預測框的交并比,并引入了距離與長寬比。但忽略了真實框與預測框之間配角不匹配的問題,導致訓練過程中預測框的自由度過大,從而降低了模型的性能。因此,本文提出使用SIoU[21]損失函數來取代原有的CIoU損失函數。SIoU損失函數在IoU的基礎上引入了角度感知、距離損失和形狀損失機制,以提高模型訓練的收斂速度和預測準確率。SIoU損失函數包括Angle cost、Distance cost、Shape cost和IoU cost四個cost函數,具體如下列公式所示:
[Λ=1-2sin2arcsinx-π4] (14)
[Δ=t=x,y(1-e-γρt)] (15)
[Ω=t=w,h1-e-wtθ] (16)
[LSIoU=1-IoU+Δ+Ω2] (17)
式中:[Λ]表示角度損失,并對距離誤差進行重新定義,[γ=2-Λ];[Δ]表示距離損失;[Ω]表示對CIoU中歐氏距離計算方法的改進;[θ]表示控制形狀誤差關注程度。結合IoU和上述公式最終得出目標框損失函數表達式。
3" 實驗設置
3.1" 實驗環境
本文實驗方法基于PyTorch 2.0.0深度學習框架和Python 3.11環境實現。運行環境為Windows 11,GPU型號為NVIDIA GeForce RTX 3060,CPU型號為AMD Ryzen 7 6800H,顯存大小為6 GB,使用CUDA 11.8進行GPU加速。
在訓練過程中,采用遷移學習方法加載權重模型“yolov5s.pt”,輸入圖片尺寸設置為640[×]640,epoch設置為200,batch size設置為8,優化器采用SGD算法,動量因子設置為0.937。
3.2" 數據集
本文采用的數據集為GC10?DET,該數據集是在鋼材生產環境中采集的灰度圖像,總共包含2 294張圖像,圖像分辨率為2 048[×]1 000。數據集中包含了10類表面缺陷,分別是腰折(Waist_folding, Wf)、月間隙(Crescent_gap, Cg)、油斑(Oil_spot, Os)、夾雜(Inclusion, In)、壓痕(Rolled_pit, Rp)、折痕(Crease, Cr)、水斑(Water_spot, Ws)、絲狀斑(Silk_spot, Ss)、焊縫(Welding_line, Wl)和沖孔(Punching_hole, Ph)。為了擴充訓練樣本并增強模型的泛化能力,本文采用了裁剪、旋轉、遮擋、水平翻轉和模糊等方法對圖像進行處理,將數據集擴充到4 588張。為了充分利用數據并避免過擬合,將數據集按照8∶1∶1的比例劃分為訓練集、測試集和驗證集。其中,訓練集包含3 670張圖像,測試集和驗證集各包含459張圖像。
3.3" 評價指標
在計算機視覺目標檢測領域中,通常采用精確率[P](Precision)、召回率[R](Recall)、平均精度(Average Precision, AP) 、平均精度均值 (Mean Average Precision, mAP)、平均精度值(Mean Average Precision IoU=0.5,mAP@0.5:0.95)和檢測速率(Frame Per Second, FPS)對性能進行評定,計算表達式如下。
1) Precision表示模型的檢測準確程度,計算公式為:
[Precision=TPTP+FP] (18)
式中:TP表示檢測目標中正確數量;FP表示檢測目標中錯誤數量。
2) Recall表示真實正例中正確類別的比例,計算公式為:
[Recall=TPTP+FN] (19)
式中FN表示未能檢測出的目標。
3) AP表示模型在某一類別中的平均精度,計算公式為:
[AP=01PRdR] (20)
式中AP的值是以[R]為[x]軸,以[P]為[y]軸的[P?R]曲線下的面積。
4) mAP表示所有類別的識別平均精度均值,計算公式為:
[mAP=1ci=1cAPi] (21)
式中:[c]為圖像總類別數;[i]為檢測次數;AP為單一類別的識別平均準確率;AP@0.5表示該類別的[P?R]曲線下方的面積;mAP@0.5是所有類別的識別平均準確率AP@0.5相加后取平均值得到的指標。
5) mAP@0.5:0.95表示在IoU閾值(0.5~0.95)上的平均mAP,體現邊界回歸能力。IoU計算公式為:
[IoU=A?BA?B] (22)
式中:[A]代表預測框;[B]代表真實框。
6) FPS表示模型的檢測速度,即每秒多少幀,計算公式為:
[FPS=FramenumElapsedTime] (23)
4" 實驗結果與分析
4.1" 消融實驗
為了更準確地評估不同改進模塊對鋼材表面缺陷檢測準確性的影響,進行了消融實驗,并將YOLOv5s?STCD模型分解為四個部分。首先,將原始的YOLOv5s模型與Swin Transformer進行融合,形成了C3STR模型;然后,替換損失函數為SIoU,并引入了CA機制;最后,更換了解耦頭(DH)。在訓練過程中,使用相同的參數設置,并設計了五組對比實驗,實驗結果如表1所示。
表1結果顯示,原始YOLOv5s算法的精確度達到了86.5%,平均精度均值達到了81.8%。在加入C3STR模塊后,模型的特征提取能力得到了提升,精確度提高了1.7%,平均精度均值提高了0.3%。將損失函數替換為SIoU后,mAP值進一步提高了0.9%,盡管精確度略有下降,但仍然優于原始的YOLOv5s算法。隨后,引入CA機制,增強了網絡對目標位置和通道信息的感知以及對重要特征的關注,進一步提高了精確度和mAP值。最后,通過更換解耦頭,減弱了分類和回歸任務之間的沖突。引入解耦頭后的YOLOv5s?STCD算法的精確率和mAP值分別為92.1%和84.8%,效果最佳。綜合來看,經過上述改進后的YOLOv5s?STCD算法有效地提升了檢測準確率,使得檢測精度滿足鋼材表面缺陷檢測場景的要求,并在該場景中具有良好的適用性。
改進后的模型檢測效果如圖5所示,其中使用框標識不同類別,并在框的上方注明了置信度。從圖中可以看出,YOLOv5s?STCD算法對各類缺陷的檢測效果良好。
4.2" 多種注意力機制
引入注意力機制可以有效提升模型的檢測精度和效率,為了選擇最佳的注意力機制,本文進行實驗并比較了目前主流使用的CBAM[22]、SE[23]、SimAM[24]、NAM[25]和CA的效果。根據表2的對比結果顯示,CA在檢測精度和mAP值上均優于其他注意力機制。在鋼鐵缺陷檢測任務中達到了92.1%的檢測精度和84.8%的mAP值,因此,本文選擇CA機制。
4.3" YOLOv5s?STCD與其他模型的對比
為了驗證本文提出的改進YOLOv5s算法的有效性,選取了目前主流使用的YOLOv3?tiny、YOLOv7、YOLOv5s和YOLOv8n模型進行對比實驗。在訓練尺寸方面,統一使用640[×]640的圖像。每個模型的mAP訓練曲線變化如圖6所示,每個模型的[P]值、mAP@0.5:0.95值和FPS如表3所示。
表3結果顯示,YOLOv3?tiny算法雖然具有較高的檢測速度(FPS為96.2),但精確度較低(精確率僅為66.3%)。與YOLOv3?tiny算法相比,YOLOv7算法在精確率上有所提升,但檢測速度大幅下降。與YOLOv7算法相比,YOLOv8n算法在精確率和檢測速度上均有提升,其精確率和mAP@0.5:0.95達到了82.7%和44.5%,檢測速率FPS達到了52.9;但YOLOv8n的精確率和檢測速度仍低于原始的YOLOv5s算法。結果表明,相對于YOLOv3?tiny算法和最新的YOLOv7、YOLOv8n算法,本文采用的YOLOv5s算法在鋼材表面缺陷檢測場景中具有更好的表現效果。
改進后的YOLOv5s?STCD算法在檢測速度(FPS)方面僅下降了5.97,然而精確率([P])和mAP@0.5:0.95均有顯著提高,分別比YOLOv5s提高了5.6%和2.9%。因此,實驗結果表明在鋼材表面缺陷檢測場景中,改進的YOLOv5s?STCD算法展現出最佳的綜合性能。
在圖6中,經過200輪次的訓練,YOLOv5s?STCD模型相比YOLOv3?tiny、YOLOv7、YOLOv8n和原YOLOv5s,改進模型YOLOv5s?STCD平均精度均值最優,并且具有較好的收斂速度。
4.4" 檢測效果
為了進一步驗證YOLOv5s?STCD算法在鋼材表面缺陷檢測方面的優勢,在經過數據增強的GC10?DET數據集上將其與YOLOv3?tiny、YOLOv7、YOLOv8n以及原始的YOLOv5s目標檢測算法進行了比較。不同模型檢測精度結果數據見表4。各算法的檢測效果如圖7所示。
實驗結果表明,本文提出的YOLOv5s?STCD改進算法在鋼材缺陷檢測中的檢測精度和mAP值分別達到了92.1%和84.8%,相較于原始的YOLOv5s算法分別提升了5.6%和3%,且相較于YOLOv3?tiny、YOLOv7算法以及最新提出的YOLOv8n檢測精度具有較大提升,綜合表現最佳。從表4中各類缺陷檢測精度的對比可以觀察到,不同模型對不同類別的檢測精度存在差異,而YOLOv5s?STCD模型在各類目標檢測方面的表現均優于其他YOLO系列模型,本文提出的YOLOv5s?STCD算法在實際工業應用中較其他算法更有可行性。
5" 結" 論
為了提高鋼材表面缺陷檢測精度,本文提出了一種基于改進YOLOv5的鋼材表面缺陷檢測算法YOLOv5s?STCD,經過實驗得出如下結論。
1) 通過消融實驗,驗證了對各模塊改進的有效性。即在原YOLOv5模型中添加C3STR模塊、SIoU模塊、CA模塊和解耦頭模塊后,檢測效果最佳,精確率和mAP達到了92.1%和84.8%,證明了改進的YOLOv5s?STCD算法的有效性。
2)將YOLOv5s?STCD算法與YOLOv3?tiny、YOLOv7、YOLOv8n和原YOLOv5s算法進行對比實驗,本文提出的YOLOv5s?STCD檢測精度最高,綜合性能最佳,對各類缺陷的精度有一定提升,進一步驗證了YOLOv5s?STCD算法在鋼材表面缺陷檢測領域的可行性和實用性。
實驗結果表明,本文提出的YOLOv5s?STCD算法改進具有有效性,且通過實驗對比證明了該算法可以進一步提高對鋼材表面缺陷檢測的精度,也為該領域的研究提供了新的思路。
注:本文通訊作者為陳中舉。
參考文獻
[1] 冼進,冼允廷,龐冬梅.基于計算機視覺的電飯煲內膽缺陷檢測系統設計[J].現代電子技術,2023,46(7):96?100.
[2] TAO X, ZHANG D P, MA W Z, et al. Automatic metallic surface defect detection and recognition with convolutional neural networks [J]. Applied sciences, 2018, 8(9): 1575.
[3] 郭慧文,劉曉鳴,陳浩天,等.基于機器視覺的鎳基高溫合金表面缺陷檢測系統開發[J].制造業自動化,2023,45(4):81?87.
[4] 王鑫,李琦.基于深度學習的路面缺陷自動檢測系統[J].光電子·激光,2022,33(11):1165?1172.
[5] GIRSHICK R, DONAHUE J, DARRELL T, et al. Rich feature hierarchies for accurate object detection and semantic segmentation [C]// Proceedings of the 2014 IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2014: 580?587.
[6] REN S Q, HE K M, GIRSHICK R, et al. Faster R?CNN: Towards real?time object detection with region proposal networks [J]. IEEE transactions on pattern analysis amp; machine intelligence, 2017, 39(6): 1137?1149.
[7] 李玉,湯勃,孫偉,等.基于改進Faster R?CNN的鋼板表面缺陷檢測[J].組合機床與自動化加工技術,2022(5):113?115.
[8] HAN C J, LI G Y, LIU Z. Two?stage edge reuse network for salient object detection of strip steel surface defects [J]. IEEE transactions on instrumentation and measurement, 2022, 71: 1?12.
[9] 甄然,蘇康,周金星,等.改進SSD的無人機目標檢測研究[J].現代電子技術,2022,45(22):33?37.
[10] REDMON J, DIVVALA S K, GIRSHICK R, et al. You only look once: Unified, real?time object detection [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2016: 779?788.
[11] REDMON J, FARHADI A. YOLO9000: Better, faster, stronger [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2017: 6517?6525.
[12] REDMON J, FARHADI A. YOLOv3: An incremental improvement [EB/OL]. [2018?08?13]. http://arxiv.org/abs/1804.02767.
[13] BOCHKOVSKIV A, WANG C Y, LIAO H Y M. YOLOv4: Optimal speed and accuracy of object detection [EB/OL]. [2020?04?28]. https://arxiv.org/abs/2004.10934.
[14] WANG C Y, BOCHKOVSKIV A, LIAO H Y M. YOLOv7: Trainable bag?of?freebies sets new state?of?the?art for real?time object detectors [C]// IEEE/CVF Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2023: 7464?7475.
[15] 姚波,溫秀蘭,焦良葆,等.改進YOLOv3算法用于鋁型材表面缺陷檢測[J].計量學報,2022,43(10):1256?1261.
[16] 馬燕婷,趙紅東,閻超,等.改進YOLOv5網絡的帶鋼表面缺陷檢測方法[J].電子測量與儀器學報,2022,36(8):150?157.
[17] VASWANI A, SHAZEER N, PARMAR N, et al. Attention is all you need [C]// Advances in Neural Information Processing Systems 30: Annual Conference on Neural Information Processing Systems 2017. [S.l.: s.n.], 2017: 5998?6008.
[18] LIU Z, LIN Y T, CAO Y, et al. Swin Transformer: Hierarchical vision transformer using shifted windows [C]// Proceedings of the IEEE/CVF International Conference on Computer Vision. New York: IEEE, 2021: 9992?10002.
[19] HOU Q B, ZHOU D Q, FENG S J. Coordinate attention for efficient mobile network design [C]// Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2021: 13713?13722.
[20] GE Z, LIU S T, WANG F, et al. YOLOX: Exceeding YOLO series in 2021 [EB/OL]. [2022?04?05]. https://arxiv.org/abs/2107.08430.
[21] GEVORGYAN Z. SIoU loss: More powerful learning for bounding box regression [EB/OL]. [2022?05?30]. https://doi.org/10.48550/arXiv.2205.12740.
[22] WOO S, PARK J, LEE J Y, et al. CBAM: Convolutional block attention module [C]// Proceedings of the European Conference on Computer Vision (ECCV). Heidelberg, Germany: Springer, 2018: 3?19.
[23] HU J, SHEN L, ALBANIE S. Squeeze?and?excitation networks [J]. IEEE transactions on pattern analysis and machine intelligence, 2017, 42: 2011?2023.
[24] LIU Y C, SHAO Z R, TENG Y Y, et al. NAM: Normalization?based attention module [EB/OL]. [2021?11?26]. https://arxiv.org/abs/2111.12419.
[25] YANG L X, ZHANG R Y, LI L D, et al. SimAM: A simple, parameter?free attention module for convolutional neural networks [C]// International Conference on Machine Learning. New York: PMLR, 2021: 11863?11874.