李一鳴,王 瀟
(1.北京信息科技大學 機電工程學院,北京 100192;2.北京信息科技大學 現代測控技術教育部重點實驗室,北京 100192)
軋鋼作為重要的工業原材料,軋鋼的質量直接影響產品的質量[1]。因此,軋鋼的表面缺陷精準檢測顯得尤為重要。目前,軋鋼表面缺陷的檢測方法主要有無損檢測[2]和基于機器視覺的檢測[3]。其中無損檢測存在檢測類型有限的缺陷;基于機器視覺檢測方法存在手工提取特征的主觀性,難以實現多種缺陷類型的檢測,尤其是小目標的識別定位[4,5]。
隨著深度學習網絡的日益成熟,深度學習方法在目標檢測與識別分類問題中得到了廣泛的應用,也運用到鋼材的表面缺陷檢測中[6~9]。文獻[6]采用改進的YOLOv3進行金屬表面缺陷檢測,檢測精度達到67.64%。文獻[7]采用改進的Faster R-CNN進行螺紋鋼表面缺陷檢測,取得了穩定的缺陷檢測模型。文獻[8]采用卷積神經網絡檢測鋼板表面焊縫,檢測精度達到97%以上。文獻[9]采用改進Faster R-CNN檢測鋼板表面缺陷,平均檢測精度達到87.14%,明顯提高了小缺陷的檢測精度。
YOLOv5s模型沿用YOLOv3、YOLOv4的整體布局,包含Input、Backbone、Neck、Output四個部分,其網絡結構如圖1所示。

圖1 YOLOv5s模型結構
Input:采用Mosaic方式擴充數據樣本,通過不斷更新預測框和標注框的差值并反向更新網絡的參數自主的計算最佳anchor框值,自適應的縮放圖片從而減少黑邊降低冗余信息;
Backbone:包含Focus結構、CSP Networks和SPP結構;
Neck:由CSP2_X結構、FPN+PAN結構組成;
Output:包含邊界框損失函數和NMS,從而獲得最佳的目標檢測框。
軋鋼表面缺陷目標檢測試驗采用東北大學鋼材表面缺陷數據集(NEU-CLS)[10]作為YOLOv5模型的訓練輸入和檢測目標,該數據集包含6種常見的軋鋼表面缺陷,分別為軋制氧化皮(rolled-in scale)、斑塊(patches)、細裂紋(crazing)、表面點蝕(pitted surface)、夾雜(inclusion)、劃痕(scratches)。數據集圖像的初始分辨率為200×200像素,訓練集包括295×6張圖片,驗證集包括5×6張圖片,一共1800張圖片。
2.2.1 試驗環境與配置
基于YOLOv5模型的軋鋼表面缺陷檢測的硬件環境為:
1)處理器:Intel i7-8550U CPU @1.80GHz;
2)計算機內存:8GB;
3)顯卡:GPU NVIDIA GeForce MX150。
軟件環境為:
1)操作系統:windows1064位;
2)開發語言:python 3.7,pytorch 1.7.1框架;
3)軟件庫文件:numpy 1.19.2,opencv 4.5.1,cuda 11.0.221,tensorboard 2.5.0。
2.2.2 YOLOv5模型超參數設置
分別基于YOLOv5s模型、YOLOv5m模型和YOLOv5l模型訓練軋鋼表面缺陷檢測模型,采用小批量隨機梯度下降法(SGD)來訓練檢測模型,3個YOLOv5模型的小批量(batch)分別設為16、4、2,網絡的初始學習率設為0.01,動量參數設為0.937,權重衰減系數設為0.0005,最大訓練次數設為300。
2.2.3 YOLOv5模型訓練過程
使用YOLOv5在COCO數據集上訓練好的權值文件yolov5s.pt、yolov5m.pt、yolov5l.pt分別作為其對應的YOLOv5模型的初始權值,采用遷移學習微調模型的權值,使得YOLOv5模型收斂,獲得軋鋼表面缺陷檢測模型,實現軋鋼表面缺陷的精準檢測。
其中,YOLOv5s模型訓練耗時為32.62h,得到的權值文件大小為14.4MB;YOLOv5m模型的訓練耗時為59.42h,得到的權值文件大小為42.5MB;YOLOv5l模型的訓練耗時為112.5h,得到的權值文件大小為93.8MB。由此可知,隨著YOLOv5模型規模越大,訓練耗時越長,權值文件占用的空間也越大。
分別通過測試精度(precision,P)、召回率(Recall,R)和mAP來評價軋鋼表面缺陷檢測模型的性能。P指的是一個檢測模型預測的正樣本的確是正樣本的概率;R指的是一個檢測模型預測的實際正樣本的個數;AP為P對R的積分,而mAP是各類AP的平均值,它用來評價檢測模型的整體性能。
基于YOLOv5s模型、YOLOv5m模型和YOLOv5l模型的軋鋼表面缺陷檢測結果如圖2~圖4所示。由圖2~圖4可以看出,對比于軋鋼表面缺陷標注,3個模型的6類缺陷均能較準確地識別定位,但存在缺陷的定位精度不高的情況?;赮OLOv5s、YOLOv5m和YOLOv5l的軋鋼表面缺陷檢測模型性能對比如表1所示。由表1可知,YOLOv5l模型的精度P、召回率R和mAP均低于另兩個模型,可能的原因是YOLOv5l模型規模較大,訓練不夠,模型仍未完全收斂。YOLOv5m模型的精度P(0.875)高于YOLOv5s模型的精度P(0.772);YOLOv5s模型的召回率R(0.773)高于YOLOv5m模型的召回率R(0.687);在IOU的閾值為0.5時,YOLOv5s模型的mAP(0.776)略高于YOLOv5m模型的精度mAP(0.773);而IOU的閾值從0.5取至0.95,兩個模型的mAP的平均值均較低,只有0.441。因此,可以看出,判定正負樣本的IOU閾值對于軋鋼表明缺陷檢測非常重要。綜合考慮YOLOv5s模型和YOLOv5m模型的性能指標,以及兩個模型的訓練耗時與模型大小,采用YOLOv5s模型作為軋鋼表面缺陷檢測的模型。

圖4 基于YOLOv5l的軋鋼表面缺陷檢測結果

表1 基于不同YOLOv5模型的軋鋼表面缺陷檢測模型的性能

圖2 基于YOLOv5s的軋鋼表面缺陷檢測結果


圖3 基于YOLOv5m的軋鋼表面缺陷檢測結果
軋鋼表面缺陷智能檢測,有助于生產人員準確地把握軋鋼的情況和快速地做出決策。而軋鋼表面的缺陷大小參差不齊,綜合考慮試驗硬件條件和模型性能,基于YOLOv5模型對軋鋼的表面缺陷進行檢測。并對比不同種類YOLOv5模型的性能指標,采用YOLOv5s模型來實現軋鋼表面缺陷的智能檢測,該模型的整體性能指標mAP較高,且模型較小。