李馥穎, 朱振杰, 杜付鑫
(1. 沈陽理工大學 藝術設計學院, 遼寧 沈陽 110159; 2. 山東大學 機械工程學院, 山東 濟南 250061)
我國是鋼材生產大國,根據國家統計局公布的數據,2019年我國鋼材產量達到9.96×108t,同比增長8.3%[1]。 由于帶軋機具有投資少、 建設周期短的特點, 國內大部分鋼鐵企業, 尤其是民營鋼鐵企業不斷擴大帶鋼生產規模,因此近幾年國內帶鋼產能增長迅速,同時也暴露出了一些亟待解決的問題。生產工藝、 原材料、 壓制設備等因素經常會導致帶鋼表面出現一系列缺陷,主要是劃傷、 擦傷、 裂紋、 油污、 黑點等[2-3]。這些缺陷不僅影響了帶鋼的表面質量,而且還會降低最終成品的抗腐性、耐磨性和疲勞強度等性能[4],因此,帶鋼在經過酸洗后均需要采用人工檢查的方式進行質量跟蹤與保證。隨著帶鋼產能的不斷提升和生產節奏逐步加快,操作人員的肉眼觀察質量的不穩定性逐步暴露,導致帶鋼斷裂事故一直居高不下。
近年來, 利用深度學習檢測目標物體的方法發展迅速, 在無人機、 輔助盲人導航、 無人駕駛、 語音識別等領域應用廣泛[5]。 基于計算機視覺的帶鋼表面缺陷檢測技術也得到了快速的發展[6]。 計算機視覺通過非接觸式的檢測和光學的自動采集獲得產品的表面圖像, 然后使用不同的算法提取表面圖像的具體特征, 進一步實現檢測。 采用卷積神經網絡(convolutional neural network,CNN)來解決深度學習的問題是許多專家學者的首選[7-8]。 目前基于深度學習的目標檢測算法主要包括2類, 一類是基于候選框的目標檢測, 另一類是基于回歸的目標檢測。 Girshick等[9]在2014年提出了第一個基于候選框的目標檢測方法——選區CNN(region CNN,R-CNN), 隨后快速選區卷積神經網絡Faster R-CNN[10-11]與Mask R-CNN[12]等方法相繼出現。基于回歸的目標檢測方法主要是以You Only Look Once (YOLO)系列檢測器為主[13-16]。
基于深度學習的方法能夠較好地克服實際應用環境下帶來的復雜變化。深度學習注重模型的深度和自動特征提取,由高到低逐層地進行特征學習,具有較強的特征提取和選擇能力。深度學習的基本條件是要有海量的數據支撐以及充分的模型訓練,但是,在對帶鋼表面進行缺陷研究時,帶鋼表面缺陷的數據基本上是基于生產線人工拍攝所收集,樣本之間差異較小,重復數據較多,并且實際采集到的數據量通常達不到深度學習目標檢測模型所要求的龐大數據量的要求。針對以上問題,本文中通過基于Faster R-CNN算法進行改進,首先利用殘差[17]作為帶鋼表面缺陷特征提取網絡以達到更高效的提取特征的效果,并提出一種多尺度選區推薦網絡(multi-scale regional proposal network,MS-RPN),對非極大值抑制(non-maximum suppression,NMS)算法[18]篩選候選框不充分的情況進行優化,目的是提高帶鋼表面缺陷檢測的準確性。
針對初始推薦區域不能滿足多尺度目標的需求、帶鋼表面缺陷重疊產生的漏檢等問題,本文中在Faster R-CNN算法的基礎上提出一種新的帶鋼表面缺陷檢測算法,總體結構如圖1所示。

圖1 改進后快速選區卷積神經網絡結構
該神經網絡模型分為特征提取網絡、 MS-RPN、 檢測子網絡3個部分, 其中, 采用殘差網絡替換了傳統的特征提取網絡。 由于初始推薦區域不能滿足多尺度目標需求的問題, 因此本文中提出MS-RPN網絡。 該網絡通過3條支路在3組不同的特征圖上設置不同大小的滑動窗口, 得到大、 中、 小3種目標尺度的錨節點(anchor), 與普通的選區推薦網絡(RPN)相比, 可以得到更加精確的推薦區域, 并在網絡中使用軟判決NMS(Soft-NMS)機制進行候選框的篩選。
改進后Faster R-CNN神經網絡(以下簡稱本文模型)選取Darknet-53殘差模型的前52層作為特征提取層。本文模型結合了Darknet-19以及其他新型殘差網絡的優勢,利用連續的尺寸為3×3和1×1規模的卷積層進行組合,網絡結構如表1所示。

表1 改進后Faster R-CNN神經網絡結構
從圖1中可以看出, 本文模型分別通過3條支路生成3組不同的特征圖饋入MS-RPN網絡, 卷積核在淺層提取的是顏色、 邊緣等淺層特征, 隨著卷積層深度加深, 提取的細節信息更加充分。 提取的特征圖的大小會隨著層數加深變得更小, 雖然直接使用最后一層的卷積特征圖有利于圖像的識別, 但是對檢測小尺度目標則不適合。 綜上, 本文中選擇區域5生成的特征圖作為F1; 然后, 將F1經過上采樣(up-sample)操作后與區域3生成的特征圖結合作為F2; 最后, 將F2經過上采樣操作后與區域2生成的特征圖結合作為F3, 分別輸入到MS-RPN網絡得到不同尺度的推薦區域, 同時也作為檢測子網的輸入。
MS-RPN網絡結構如圖2所示,該網絡的作用是為輸入圖像提取一定數量的具有目標置信度的推薦區域。

圖2 多尺度區域推薦網絡結構
分別為特征圖F1、 F2、 F3定義多個邊長為n的正方形滑動窗口,檢測過程中產生高質量推薦區域的關鍵是定義大小合理的滑動窗口和錨節點,為每個特征圖分配具有不同比例的錨節點。考慮到不同縱橫比的對象,設計具有不同的長寬比的錨節點,錨節點形狀由物體形狀決定。本文中設置了6種類型的錨節點,為了減小滑動窗口數量,特征圖F3只設置1種尺寸、 1種比例的滑動窗口且步長為2,特征圖F1、 F2分別設置3、 2種尺度, 3種比例的滑動窗口。滑動窗口與錨節點的設置如表2所示。

表2 滑動窗口和錨節點的設置
鑒于帶鋼表面缺陷中缺陷圖片相近的情況較多,本文中利用一種新的候選框篩選機制Soft-NMS進行對候選框進行篩選,具體算法如下:
輸入:B={b1,b2,…,bN},S={s1,s2,…,sN}
1.D←{}
2.whileB≠empty do
3.m←argmaxS
4.M←bm
5.D←D∪M;B←B-M
6.forbiinBdo
7.si←sif(IOU(M,bi))
8.end
9.end
10.returnD,S
上述算法中f(IOU(M,bi))的計算公式為
(1)
式中:f為當前框得分;IOU(M,bi)為M與bi的交并比,M為當前得分最高框,bi為待篩選框;Nt為閾值。
由式(1)可知,M和bi的交并比越大, 得分si就越小,漏檢率就會降低。
本文中的損失函數分為MS-RPN損失函數和檢測子網絡損失函數2個部分。
1.5.1 MS-RPN損失函數
MS-RPN損失函數ln分為2個部分,即分類損失Lcls和邊框回歸損失Lreg,表達式為
(2)

分類損失函數Lcls和回歸損失函數Lreg的表達式分別為
(3)
(4)
式中R為smoothL1函數。
MS-RPN的3條支路總損失函數L(M)為
(5)
式中:M為MS-RPN網絡的學習參數,是由n個M組成的矩陣;n為支路數,n∈[1, 3];ηn為第n條支路損失權重;Sn為第n條支路的訓練樣本集。
1.5.2 檢測子網絡損失函數
檢測子網絡對于帶鋼表面缺陷目標檢測任務損失函數L(M′)與MS-RPN損失函數定義類似,設M′為檢測子網絡所需要學習的參數,檢測子網絡損失函數為L(M′),則
(6)
(7)

綜上,網絡的總體損失函數L(M,M′)為
L(M,M′)=L(M)+L(M′)
。
(8)
從帶鋼生產線所拍攝含有各種缺陷的帶鋼照片中分別選擇含有劃傷缺陷圖片183張、 擦傷缺陷圖片154張、 裂紋缺陷圖片190張、油污缺陷圖片205張、黑點缺陷圖片119張,然后運用水平翻轉、 旋轉照片集等數據集擴充操作進行數據擴充,同時,為了便于對所有圖像進行數據集標注,本文中采用數據集標注工具Labelimg對圖像進行分類準確性(ground truth)標注,將該數據集命名為SD_data數據集,如圖3所示。

圖3 采用數據集標注工具標注的數據集
由于準確率和召回率在某些情況下會出現矛盾情況,因此,本文中采用準確率與召回率的調和均值F作為對比評價指標,計算公式為
(9)
式中:P為檢測準確率,即檢測到正確的帶鋼表面缺陷數占檢測到的帶鋼表面缺陷總數的比例;R為召回率,即檢測到正確的帶鋼表面缺陷數占所有的樣本總數的比例。
根據檢測目標的不同尺度,將SD_data數據集分為易、中等和難3個檢測難度,將本文模型與可變形組件模型(DPM)、 對象控制的可變形組件模型(OC-DPM)、 R-CNN、 Faster R-CNN、 精練網絡(Refine-Net)算法一同在SD_data數據集上進行了訓練和測試,結果見表4。

表4 在SD_data數據集下3個不同難度中的平均準確率
本文模型在SD_data數據集下3個不同標準下的平均精度均值分別達到90.77%、 89.78%、 84.99%,較Faster R-CNN的分別提升2.76%、9.41%、10.27%。與其他算法相比,本文模型在3個檢測難度為“難”的檢測結果優勢明顯。為了證明模型的泛化能力,圖4給出了SD_data數據集下的部分檢測結果。

圖4 帶鋼缺陷檢測結果
將本文模型中MS-RPN和Faster R-CNN中RPN進行了比較,且對不同尺度目標召回率進行實驗對比,結果如表5所示。由表可以看出,相較于RPN,MS-RPN在每個尺度下的召回率均有所提高,MS-RPN通過對3個不同深度的卷積層定義合理的滑動窗口,對小型目標而言,低層卷積層存在使得最后一層卷積層有更加豐富的特征,所以MS-RPN能夠比只在最后一層卷積層設置滑動窗口的RPN提取到更加精確的推薦區域。

表5 推薦區域不同尺度目標的召回率
在SD_data據集上對Soft-NMS與NMS的平均準確率進行比較,結果見表6。這2種方法都有定位的參數,如NMS中的IOU閾值Nt和Soft-NMS中的規范參數σ,調整這些參數會改變平均準確率。本文中采用控制變量法進行比較,發現本文中提出的在網絡的末端選取Soft-NMS機制比NMS機制平均準確率提升了約1%。

表6 不同非極大值抑制的平均準確率對比
本文中通過對Faster R-CNN模型進行改進,提出了一種高效且準確的多尺度選區推薦網絡,使用Soft-NMS機制進行候選框篩選,并在SD_data數據集上進行實驗。結果表明,本文模型在不影響檢測速度的情況下,提高了檢測的準確性,降低了漏檢率,對各種尺度的帶鋼表面缺陷目標均取得了良好的檢測效果,可以更好地滿足實際工程應用。