李馥穎, 朱振杰, 杜付鑫
(1. 沈陽理工大學(xué) 藝術(shù)設(shè)計(jì)學(xué)院, 遼寧 沈陽 110159; 2. 山東大學(xué) 機(jī)械工程學(xué)院, 山東 濟(jì)南 250061)
我國是鋼材生產(chǎn)大國,根據(jù)國家統(tǒng)計(jì)局公布的數(shù)據(jù),2019年我國鋼材產(chǎn)量達(dá)到9.96×108t,同比增長8.3%[1]。 由于帶軋機(jī)具有投資少、 建設(shè)周期短的特點(diǎn), 國內(nèi)大部分鋼鐵企業(yè), 尤其是民營鋼鐵企業(yè)不斷擴(kuò)大帶鋼生產(chǎn)規(guī)模,因此近幾年國內(nèi)帶鋼產(chǎn)能增長迅速,同時(shí)也暴露出了一些亟待解決的問題。生產(chǎn)工藝、 原材料、 壓制設(shè)備等因素經(jīng)常會(huì)導(dǎo)致帶鋼表面出現(xiàn)一系列缺陷,主要是劃傷、 擦傷、 裂紋、 油污、 黑點(diǎn)等[2-3]。這些缺陷不僅影響了帶鋼的表面質(zhì)量,而且還會(huì)降低最終成品的抗腐性、耐磨性和疲勞強(qiáng)度等性能[4],因此,帶鋼在經(jīng)過酸洗后均需要采用人工檢查的方式進(jìn)行質(zhì)量跟蹤與保證。隨著帶鋼產(chǎn)能的不斷提升和生產(chǎn)節(jié)奏逐步加快,操作人員的肉眼觀察質(zhì)量的不穩(wěn)定性逐步暴露,導(dǎo)致帶鋼斷裂事故一直居高不下。
近年來, 利用深度學(xué)習(xí)檢測(cè)目標(biāo)物體的方法發(fā)展迅速, 在無人機(jī)、 輔助盲人導(dǎo)航、 無人駕駛、 語音識(shí)別等領(lǐng)域應(yīng)用廣泛[5]。 基于計(jì)算機(jī)視覺的帶鋼表面缺陷檢測(cè)技術(shù)也得到了快速的發(fā)展[6]。 計(jì)算機(jī)視覺通過非接觸式的檢測(cè)和光學(xué)的自動(dòng)采集獲得產(chǎn)品的表面圖像, 然后使用不同的算法提取表面圖像的具體特征, 進(jìn)一步實(shí)現(xiàn)檢測(cè)。 采用卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)來解決深度學(xué)習(xí)的問題是許多專家學(xué)者的首選[7-8]。 目前基于深度學(xué)習(xí)的目標(biāo)檢測(cè)算法主要包括2類, 一類是基于候選框的目標(biāo)檢測(cè), 另一類是基于回歸的目標(biāo)檢測(cè)。 Girshick等[9]在2014年提出了第一個(gè)基于候選框的目標(biāo)檢測(cè)方法——選區(qū)CNN(region CNN,R-CNN), 隨后快速選區(qū)卷積神經(jīng)網(wǎng)絡(luò)Faster R-CNN[10-11]與Mask R-CNN[12]等方法相繼出現(xiàn)?;诨貧w的目標(biāo)檢測(cè)方法主要是以You Only Look Once (YOLO)系列檢測(cè)器為主[13-16]。
基于深度學(xué)習(xí)的方法能夠較好地克服實(shí)際應(yīng)用環(huán)境下帶來的復(fù)雜變化。深度學(xué)習(xí)注重模型的深度和自動(dòng)特征提取,由高到低逐層地進(jìn)行特征學(xué)習(xí),具有較強(qiáng)的特征提取和選擇能力。深度學(xué)習(xí)的基本條件是要有海量的數(shù)據(jù)支撐以及充分的模型訓(xùn)練,但是,在對(duì)帶鋼表面進(jìn)行缺陷研究時(shí),帶鋼表面缺陷的數(shù)據(jù)基本上是基于生產(chǎn)線人工拍攝所收集,樣本之間差異較小,重復(fù)數(shù)據(jù)較多,并且實(shí)際采集到的數(shù)據(jù)量通常達(dá)不到深度學(xué)習(xí)目標(biāo)檢測(cè)模型所要求的龐大數(shù)據(jù)量的要求。針對(duì)以上問題,本文中通過基于Faster R-CNN算法進(jìn)行改進(jìn),首先利用殘差[17]作為帶鋼表面缺陷特征提取網(wǎng)絡(luò)以達(dá)到更高效的提取特征的效果,并提出一種多尺度選區(qū)推薦網(wǎng)絡(luò)(multi-scale regional proposal network,MS-RPN),對(duì)非極大值抑制(non-maximum suppression,NMS)算法[18]篩選候選框不充分的情況進(jìn)行優(yōu)化,目的是提高帶鋼表面缺陷檢測(cè)的準(zhǔn)確性。
針對(duì)初始推薦區(qū)域不能滿足多尺度目標(biāo)的需求、帶鋼表面缺陷重疊產(chǎn)生的漏檢等問題,本文中在Faster R-CNN算法的基礎(chǔ)上提出一種新的帶鋼表面缺陷檢測(cè)算法,總體結(jié)構(gòu)如圖1所示。
圖1 改進(jìn)后快速選區(qū)卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
該神經(jīng)網(wǎng)絡(luò)模型分為特征提取網(wǎng)絡(luò)、 MS-RPN、 檢測(cè)子網(wǎng)絡(luò)3個(gè)部分, 其中, 采用殘差網(wǎng)絡(luò)替換了傳統(tǒng)的特征提取網(wǎng)絡(luò)。 由于初始推薦區(qū)域不能滿足多尺度目標(biāo)需求的問題, 因此本文中提出MS-RPN網(wǎng)絡(luò)。 該網(wǎng)絡(luò)通過3條支路在3組不同的特征圖上設(shè)置不同大小的滑動(dòng)窗口, 得到大、 中、 小3種目標(biāo)尺度的錨節(jié)點(diǎn)(anchor), 與普通的選區(qū)推薦網(wǎng)絡(luò)(RPN)相比, 可以得到更加精確的推薦區(qū)域, 并在網(wǎng)絡(luò)中使用軟判決NMS(Soft-NMS)機(jī)制進(jìn)行候選框的篩選。
改進(jìn)后Faster R-CNN神經(jīng)網(wǎng)絡(luò)(以下簡(jiǎn)稱本文模型)選取Darknet-53殘差模型的前52層作為特征提取層。本文模型結(jié)合了Darknet-19以及其他新型殘差網(wǎng)絡(luò)的優(yōu)勢(shì),利用連續(xù)的尺寸為3×3和1×1規(guī)模的卷積層進(jìn)行組合,網(wǎng)絡(luò)結(jié)構(gòu)如表1所示。
表1 改進(jìn)后Faster R-CNN神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
從圖1中可以看出, 本文模型分別通過3條支路生成3組不同的特征圖饋入MS-RPN網(wǎng)絡(luò), 卷積核在淺層提取的是顏色、 邊緣等淺層特征, 隨著卷積層深度加深, 提取的細(xì)節(jié)信息更加充分。 提取的特征圖的大小會(huì)隨著層數(shù)加深變得更小, 雖然直接使用最后一層的卷積特征圖有利于圖像的識(shí)別, 但是對(duì)檢測(cè)小尺度目標(biāo)則不適合。 綜上, 本文中選擇區(qū)域5生成的特征圖作為F1; 然后, 將F1經(jīng)過上采樣(up-sample)操作后與區(qū)域3生成的特征圖結(jié)合作為F2; 最后, 將F2經(jīng)過上采樣操作后與區(qū)域2生成的特征圖結(jié)合作為F3, 分別輸入到MS-RPN網(wǎng)絡(luò)得到不同尺度的推薦區(qū)域, 同時(shí)也作為檢測(cè)子網(wǎng)的輸入。
MS-RPN網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示,該網(wǎng)絡(luò)的作用是為輸入圖像提取一定數(shù)量的具有目標(biāo)置信度的推薦區(qū)域。
圖2 多尺度區(qū)域推薦網(wǎng)絡(luò)結(jié)構(gòu)
分別為特征圖F1、 F2、 F3定義多個(gè)邊長為n的正方形滑動(dòng)窗口,檢測(cè)過程中產(chǎn)生高質(zhì)量推薦區(qū)域的關(guān)鍵是定義大小合理的滑動(dòng)窗口和錨節(jié)點(diǎn),為每個(gè)特征圖分配具有不同比例的錨節(jié)點(diǎn)。考慮到不同縱橫比的對(duì)象,設(shè)計(jì)具有不同的長寬比的錨節(jié)點(diǎn),錨節(jié)點(diǎn)形狀由物體形狀決定。本文中設(shè)置了6種類型的錨節(jié)點(diǎn),為了減小滑動(dòng)窗口數(shù)量,特征圖F3只設(shè)置1種尺寸、 1種比例的滑動(dòng)窗口且步長為2,特征圖F1、 F2分別設(shè)置3、 2種尺度, 3種比例的滑動(dòng)窗口?;瑒?dòng)窗口與錨節(jié)點(diǎn)的設(shè)置如表2所示。
表2 滑動(dòng)窗口和錨節(jié)點(diǎn)的設(shè)置
鑒于帶鋼表面缺陷中缺陷圖片相近的情況較多,本文中利用一種新的候選框篩選機(jī)制Soft-NMS進(jìn)行對(duì)候選框進(jìn)行篩選,具體算法如下:
輸入: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))的計(jì)算公式為
(1)
式中:f為當(dāng)前框得分;IOU(M,bi)為M與bi的交并比,M為當(dāng)前得分最高框,bi為待篩選框;Nt為閾值。
由式(1)可知,M和bi的交并比越大, 得分si就越小,漏檢率就會(huì)降低。
本文中的損失函數(shù)分為MS-RPN損失函數(shù)和檢測(cè)子網(wǎng)絡(luò)損失函數(shù)2個(gè)部分。
1.5.1 MS-RPN損失函數(shù)
MS-RPN損失函數(shù)ln分為2個(gè)部分,即分類損失Lcls和邊框回歸損失Lreg,表達(dá)式為
(2)
分類損失函數(shù)Lcls和回歸損失函數(shù)Lreg的表達(dá)式分別為
(3)
(4)
式中R為smoothL1函數(shù)。
MS-RPN的3條支路總損失函數(shù)L(M)為
(5)
式中:M為MS-RPN網(wǎng)絡(luò)的學(xué)習(xí)參數(shù),是由n個(gè)M組成的矩陣;n為支路數(shù),n∈[1, 3];ηn為第n條支路損失權(quán)重;Sn為第n條支路的訓(xùn)練樣本集。
1.5.2 檢測(cè)子網(wǎng)絡(luò)損失函數(shù)
檢測(cè)子網(wǎng)絡(luò)對(duì)于帶鋼表面缺陷目標(biāo)檢測(cè)任務(wù)損失函數(shù)L(M′)與MS-RPN損失函數(shù)定義類似,設(shè)M′為檢測(cè)子網(wǎng)絡(luò)所需要學(xué)習(xí)的參數(shù),檢測(cè)子網(wǎng)絡(luò)損失函數(shù)為L(M′),則
(6)
(7)
綜上,網(wǎng)絡(luò)的總體損失函數(shù)L(M,M′)為
L(M,M′)=L(M)+L(M′)
。
(8)
從帶鋼生產(chǎn)線所拍攝含有各種缺陷的帶鋼照片中分別選擇含有劃傷缺陷圖片183張、 擦傷缺陷圖片154張、 裂紋缺陷圖片190張、油污缺陷圖片205張、黑點(diǎn)缺陷圖片119張,然后運(yùn)用水平翻轉(zhuǎn)、 旋轉(zhuǎn)照片集等數(shù)據(jù)集擴(kuò)充操作進(jìn)行數(shù)據(jù)擴(kuò)充,同時(shí),為了便于對(duì)所有圖像進(jìn)行數(shù)據(jù)集標(biāo)注,本文中采用數(shù)據(jù)集標(biāo)注工具Labelimg對(duì)圖像進(jìn)行分類準(zhǔn)確性(ground truth)標(biāo)注,將該數(shù)據(jù)集命名為SD_data數(shù)據(jù)集,如圖3所示。
圖3 采用數(shù)據(jù)集標(biāo)注工具標(biāo)注的數(shù)據(jù)集
由于準(zhǔn)確率和召回率在某些情況下會(huì)出現(xiàn)矛盾情況,因此,本文中采用準(zhǔn)確率與召回率的調(diào)和均值F作為對(duì)比評(píng)價(jià)指標(biāo),計(jì)算公式為
(9)
式中:P為檢測(cè)準(zhǔn)確率,即檢測(cè)到正確的帶鋼表面缺陷數(shù)占檢測(cè)到的帶鋼表面缺陷總數(shù)的比例;R為召回率,即檢測(cè)到正確的帶鋼表面缺陷數(shù)占所有的樣本總數(shù)的比例。
根據(jù)檢測(cè)目標(biāo)的不同尺度,將SD_data數(shù)據(jù)集分為易、中等和難3個(gè)檢測(cè)難度,將本文模型與可變形組件模型(DPM)、 對(duì)象控制的可變形組件模型(OC-DPM)、 R-CNN、 Faster R-CNN、 精練網(wǎng)絡(luò)(Refine-Net)算法一同在SD_data數(shù)據(jù)集上進(jìn)行了訓(xùn)練和測(cè)試,結(jié)果見表4。
表4 在SD_data數(shù)據(jù)集下3個(gè)不同難度中的平均準(zhǔn)確率
本文模型在SD_data數(shù)據(jù)集下3個(gè)不同標(biāo)準(zhǔn)下的平均精度均值分別達(dá)到90.77%、 89.78%、 84.99%,較Faster R-CNN的分別提升2.76%、9.41%、10.27%。與其他算法相比,本文模型在3個(gè)檢測(cè)難度為“難”的檢測(cè)結(jié)果優(yōu)勢(shì)明顯。為了證明模型的泛化能力,圖4給出了SD_data數(shù)據(jù)集下的部分檢測(cè)結(jié)果。
圖4 帶鋼缺陷檢測(cè)結(jié)果
將本文模型中MS-RPN和Faster R-CNN中RPN進(jìn)行了比較,且對(duì)不同尺度目標(biāo)召回率進(jìn)行實(shí)驗(yàn)對(duì)比,結(jié)果如表5所示。由表可以看出,相較于RPN,MS-RPN在每個(gè)尺度下的召回率均有所提高,MS-RPN通過對(duì)3個(gè)不同深度的卷積層定義合理的滑動(dòng)窗口,對(duì)小型目標(biāo)而言,低層卷積層存在使得最后一層卷積層有更加豐富的特征,所以MS-RPN能夠比只在最后一層卷積層設(shè)置滑動(dòng)窗口的RPN提取到更加精確的推薦區(qū)域。
表5 推薦區(qū)域不同尺度目標(biāo)的召回率
在SD_data據(jù)集上對(duì)Soft-NMS與NMS的平均準(zhǔn)確率進(jìn)行比較,結(jié)果見表6。這2種方法都有定位的參數(shù),如NMS中的IOU閾值Nt和Soft-NMS中的規(guī)范參數(shù)σ,調(diào)整這些參數(shù)會(huì)改變平均準(zhǔn)確率。本文中采用控制變量法進(jìn)行比較,發(fā)現(xiàn)本文中提出的在網(wǎng)絡(luò)的末端選取Soft-NMS機(jī)制比NMS機(jī)制平均準(zhǔn)確率提升了約1%。
表6 不同非極大值抑制的平均準(zhǔn)確率對(duì)比
本文中通過對(duì)Faster R-CNN模型進(jìn)行改進(jìn),提出了一種高效且準(zhǔn)確的多尺度選區(qū)推薦網(wǎng)絡(luò),使用Soft-NMS機(jī)制進(jìn)行候選框篩選,并在SD_data數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)。結(jié)果表明,本文模型在不影響檢測(cè)速度的情況下,提高了檢測(cè)的準(zhǔn)確性,降低了漏檢率,對(duì)各種尺度的帶鋼表面缺陷目標(biāo)均取得了良好的檢測(cè)效果,可以更好地滿足實(shí)際工程應(yīng)用。