陸家林,程 穎,馮 賽,李明哲,張寧華,孫家宇
(天津科技大學(xué)機(jī)械工程學(xué)院,天津 300457)
鋼材是發(fā)展現(xiàn)代工業(yè)技術(shù)的基本材料,隨著工業(yè)制造能力的提升,鋼材廣泛應(yīng)用于建筑行業(yè)、海洋工程、航天工程,對(duì)鋼材也提出了更嚴(yán)苛的要求。然而由于生產(chǎn)工藝限制,鋼材在生產(chǎn)過(guò)程中不可避免地存在深度各異的表面缺陷,如劃痕、裂紋、凹面等。這些缺陷不僅會(huì)影響產(chǎn)品外觀,同時(shí)會(huì)導(dǎo)致鋼材耐磨性、韌性等性能下降,縮短鋼材的使用壽命。因此,分析與掌握如何提高鋼材表面質(zhì)量是現(xiàn)代鋼材生產(chǎn)廠家亟需解決的重要問(wèn)題。而要解決鋼材表面質(zhì)量問(wèn)題,其前提是要實(shí)現(xiàn)對(duì)鋼材表面缺陷的檢測(cè)。目前,國(guó)內(nèi)外對(duì)鋼材表面缺陷檢測(cè)做了大量的研究,常用的鋼材表面缺陷檢測(cè)主要包括超聲檢測(cè)、紅外檢測(cè),以及基于圖像識(shí)別等缺陷檢測(cè)方法。如陳超等[1]利用激光超聲檢測(cè)技術(shù),通過(guò)提取鋼材不同深度缺陷的透射波信號(hào),并以PSO-BP神經(jīng)網(wǎng)絡(luò)進(jìn)行分析與識(shí)別,實(shí)現(xiàn)了鋼材表面0.1~3 mm深度缺陷的檢測(cè)。劉凌等[2]結(jié)合非接觸式超聲耦合技術(shù)和相控陣超聲波檢測(cè)技術(shù),實(shí)現(xiàn)了對(duì)鋼管材表面和內(nèi)部的缺陷檢測(cè),提高了超聲波檢測(cè)的工作效率。方葉祥等[3]通過(guò)利用特征金字塔與殘差層融合特征的方式改進(jìn)YOLOv3算法,實(shí)現(xiàn)了快速準(zhǔn)確地檢測(cè)鋼材表面缺陷,檢測(cè)精度達(dá)到90%以上。陳勁等[4]通過(guò)結(jié)合紅外熱成像法和超聲波法檢測(cè),實(shí)現(xiàn)了對(duì)鋼材內(nèi)部空洞和表面缺陷的檢測(cè),為更全面地評(píng)定鋼材質(zhì)量提供了一種更簡(jiǎn)便快捷的方法。陶顯等[5]基于圖像識(shí)別,采用卷積神經(jīng)網(wǎng)絡(luò)對(duì)鋼材表面缺陷進(jìn)行了檢測(cè),為鋼材表面缺陷檢測(cè)提供了一種新思路。上述檢測(cè)方法雖一定程度上實(shí)現(xiàn)了鋼材表面的缺陷檢測(cè),但在檢測(cè)精度上有待進(jìn)一步改善,且能夠滿足實(shí)際生產(chǎn)檢測(cè)需求的檢測(cè)方法還待研究。為解決以上檢測(cè)方法存在的問(wèn)題,本文基于Faster R-CNN目標(biāo)檢測(cè)算法,提出一種基于機(jī)器視覺(jué)的鋼材表面缺陷檢測(cè)方法。
Faster R-CNN算法是一種端到端的目標(biāo)檢測(cè)算法,網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示,分為4個(gè)部分,具體如下。
圖1 Faster R-CNN網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Network structure of fast R-CNN
(1)主干網(wǎng)絡(luò)
Faster R-CNN算法的主干網(wǎng)絡(luò)通常為VGG-16、ResNet等網(wǎng)絡(luò),負(fù)責(zé)提取輸入圖像特征。通過(guò)查閱參考文獻(xiàn),本文選用VGG-16網(wǎng)絡(luò)作為主干網(wǎng)絡(luò),其結(jié)構(gòu)如圖2所示。
圖2 VGG-16網(wǎng)絡(luò)結(jié)構(gòu)Fig.2 VGG-16 network structure
(2)RPN網(wǎng)絡(luò)
RPN網(wǎng)絡(luò)負(fù)責(zé)提取候選框,其基本原理如圖3所示。當(dāng)輸入模型圖像通過(guò)主干網(wǎng)絡(luò)進(jìn)行特征提取后輸入RPN,RPN對(duì)特征圖進(jìn)行滑窗以產(chǎn)生描框。將描框得分高的部分作為推薦區(qū)域,即為候選框。
圖3 RPN原理Fig.3 RPN principle
(3)ROI池化
ROI池化負(fù)責(zé)對(duì)特征圖進(jìn)行一定比例的縮放,以使特征圖滿足預(yù)設(shè)定大小。目前,常用的縮放方式首先是將區(qū)域提案劃分為大小相同的n等分,然后找到每個(gè)部分的最大值,最后復(fù)制最大值并輸出[6]。
(4)R-CNN檢測(cè)網(wǎng)絡(luò)
R-CNN網(wǎng)絡(luò)負(fù)責(zé)分類與識(shí)別候選框樣本類別。首先根據(jù)實(shí)際情況設(shè)定一個(gè)閾值a,然后計(jì)算真實(shí)與預(yù)測(cè)目標(biāo)框的交并比(IoU),最后判斷IoU與a大小,即可確定候選框樣本類別。當(dāng)IoU>a,則判定其為正樣本;反之則為負(fù)樣本。
Faster R-CNN算法具有魯棒性強(qiáng)、檢測(cè)精度高的特點(diǎn),但在特征提取階段存在容易丟失結(jié)構(gòu)信息的問(wèn)題,同時(shí)在R-CNN網(wǎng)絡(luò)檢測(cè)過(guò)程中對(duì)區(qū)域建議框的分類與定位精度有待提高。因此,為進(jìn)一步提高網(wǎng)絡(luò)的檢測(cè)精度,本文從主干網(wǎng)絡(luò)和檢測(cè)網(wǎng)絡(luò)兩個(gè)方面進(jìn)行改進(jìn)[7-8]。
1.2.1 主干網(wǎng)絡(luò)
為解決Faster R-CNN網(wǎng)絡(luò)容易丟失結(jié)構(gòu)信息的問(wèn)題,本文通過(guò)對(duì)主干網(wǎng)絡(luò)特征進(jìn)行融合,實(shí)現(xiàn)Faster RCNN網(wǎng)絡(luò)改進(jìn)。首先,分別將VGG-16網(wǎng)絡(luò)Block3的conv3-256-1與conv3-256-3進(jìn)行融合,VGG-16網(wǎng)絡(luò)Block5的conv3-512-1與conv3-512-3進(jìn)行融合。然后對(duì)融合后的特征進(jìn)行再次融合。設(shè)置每個(gè)Block之后為最大池化,全連接層不變。通過(guò)上述操作,可使主干網(wǎng)絡(luò)盡可能地保留結(jié)構(gòu)信息。主干網(wǎng)絡(luò)Block3和Block5改進(jìn)前后結(jié)構(gòu)對(duì)比如表1所示。
表1 主干網(wǎng)絡(luò)改進(jìn)前后結(jié)構(gòu)對(duì)比Tab.1 Comparison of backbone network structure before and after improvement
1.2.2 R-CNN檢測(cè)網(wǎng)絡(luò)
R-CNN網(wǎng)絡(luò)可通過(guò)增大IoU閾值使區(qū)域建議框更準(zhǔn)確,進(jìn)而提高模型的檢測(cè)準(zhǔn)確性,但過(guò)度增大IoU閾值容易導(dǎo)致模型擬合不足的問(wèn)題。為解決該問(wèn)題,提高模型的檢測(cè)準(zhǔn)確性,本文采用級(jí)聯(lián)兩個(gè)不同IoU閾值的RCNN檢測(cè)網(wǎng)絡(luò)對(duì)模型進(jìn)行改進(jìn)。分別設(shè)置兩個(gè)R-CNN檢測(cè)網(wǎng)絡(luò)的IoU閾值0.5和0.6,并根據(jù)其IoU閾值劃分分別對(duì)正負(fù)樣本進(jìn)行訓(xùn)練修正區(qū)域建議框,即可得到更準(zhǔn)確的邊界框,進(jìn)而提高檢測(cè)效果[10-12]。
基于上述對(duì)Faster R-CNN網(wǎng)絡(luò)的改進(jìn)思路,本文將基于機(jī)器視覺(jué)的鋼材表面缺陷檢測(cè)設(shè)計(jì)如圖4所示。首先,采用融合特征的VGG-16提取輸入模型的鋼材表面圖像,以減少鋼材表面圖像的結(jié)構(gòu)信息丟失。其次,采用RPN網(wǎng)絡(luò)提取生成鋼材缺陷特征圖候選框。然后采用ROI池化將鋼材表面缺陷特征圖進(jìn)行縮放。最后,先后采用IoU閾值為0.5和0.6的R-CNN檢測(cè)網(wǎng)絡(luò)對(duì)特征圖進(jìn)行分類與識(shí)別,得到鋼材表面缺陷檢測(cè)結(jié)果。
圖4 基于Faster R-CNN網(wǎng)絡(luò)的鋼材表面缺陷檢測(cè)流程Fig.4 Steel surface defect detection process based on Fast R-CNN network
本次實(shí)驗(yàn)在Linux Centos7操作系統(tǒng)上進(jìn)行,基于MXNet框架下進(jìn)行測(cè)試。系統(tǒng)環(huán)境CPU為2.10 GHz的E5-2620,GPU為NVIDIA1080,內(nèi)存為64 GB,編譯器為Pycharm Community 1.3,解釋器為Python 3.7。
本次實(shí)驗(yàn)數(shù)據(jù)來(lái)自NEU-CLS數(shù)據(jù)集,共1 800張鋼材表面缺陷圖像,具體如表2所示。
表2 NEU-CLS數(shù)據(jù)集數(shù)據(jù)分布情況Tab.2 Data distribution of NEU-CLS dataset
本次實(shí)驗(yàn)選用平均準(zhǔn)確度(AP)作為評(píng)估模型性能的指標(biāo),其計(jì)算方法如式(1)。選用平均AP(mAP)評(píng)估整體性能,其計(jì)算方法如式(4)。選用每秒幀率(幀/s)評(píng)估模型運(yùn)行效率。
式(1)~(3)中:T P為真正例;FP為假正例;F N為假負(fù)例。
式(4)中:N c為檢測(cè)缺陷類別數(shù)。
3.4.1 模型驗(yàn)證
(1)主干網(wǎng)絡(luò)驗(yàn)證
為驗(yàn)證所提模型改進(jìn)主干網(wǎng)絡(luò)的有效性,實(shí)驗(yàn)對(duì)比了不同主干網(wǎng)絡(luò)作為提取特征的模型性能,結(jié)果如表3所示。由表可知,相較于ResNet-50,VGG-16作為模型的主干網(wǎng)絡(luò)的平均檢測(cè)準(zhǔn)確率更高,達(dá)到84.06%,提高了2.3%;檢測(cè)速度由6.2幀/s提升到12.23幀/s,提高了近一倍。由此說(shuō)明,所提模型以VGG-16作為主干網(wǎng)絡(luò),可提高模型的檢測(cè)性能,模型改進(jìn)有效。
表3 特征提取效果驗(yàn)證Tab.3 verification of feature extraction effect
(2)融合策略驗(yàn)證
為驗(yàn)證模型特征融合的有效性,實(shí)驗(yàn)采用不同融合策略構(gòu)建模型,并對(duì)比了其平均檢測(cè)精度與檢測(cè)速度,結(jié)果如表4所示。由表可知,策略B的平均檢測(cè)準(zhǔn)確率最高,達(dá)到95.92%,檢測(cè)速度最快,達(dá)到22.45幀/s,說(shuō)明該融合策略可達(dá)到最佳檢測(cè)效果,即融合Block3和Block5的融合策略最好,所提模型的改進(jìn)有效。
表4 不同特征融合策略對(duì)比Tab.4 Comparison of different feature fusion strategies
(3)檢測(cè)網(wǎng)絡(luò)驗(yàn)證
為驗(yàn)證所提模型對(duì)不同IoU閾值檢測(cè)網(wǎng)絡(luò)的級(jí)聯(lián)效果,實(shí)驗(yàn)對(duì)比了不同級(jí)聯(lián)IoU閾值時(shí)模型性能,結(jié)果如表5所示。由表可知,級(jí)聯(lián)一個(gè)IoU=0.6的檢測(cè)網(wǎng)絡(luò)可提高網(wǎng)絡(luò)的平均檢測(cè)精度,達(dá)到98.29%,提高了2.37%。相較于級(jí)聯(lián)一個(gè)IoU=0.7檢測(cè)網(wǎng)絡(luò),具有一定的優(yōu)越性。由此說(shuō)明,所提模型具有一定的有效性,對(duì)檢測(cè)網(wǎng)絡(luò)的改進(jìn)有效。
表5 級(jí)聯(lián)不同IoU閾值的檢測(cè)網(wǎng)絡(luò)性能對(duì)比Tab.5 performance comparison of detection networks cascaded with different IOU thresholds
所提模型消融實(shí)驗(yàn)結(jié)果如表6所示。由表可知,相較于特征融合前,特征融合后的模型mAP值提高了11.86%;相較于級(jí)聯(lián)網(wǎng)絡(luò)前,級(jí)聯(lián)網(wǎng)絡(luò)后模型的mAP值提高了2.37%;相較于改進(jìn)前模型,所提模型檢測(cè)準(zhǔn)確率提高了14.23%,達(dá)到98.29%。分析其原因是,特征融合后產(chǎn)生的特征圖同時(shí)包含了高層和底層信息,進(jìn)而提高了模型的檢測(cè)準(zhǔn)確率,而級(jí)聯(lián)網(wǎng)絡(luò)可提高模型的IoU,使模型的檢測(cè)準(zhǔn)確率得到提高[13-15]。由此說(shuō)明,特征融合和級(jí)聯(lián)網(wǎng)絡(luò)可明顯提升模型的檢測(cè)準(zhǔn)確率,即所提模型具有一定的有效性。
表6 消融實(shí)驗(yàn)結(jié)果Tab.6 Ablation experimental results
3.4.2 模型對(duì)比
為進(jìn)一步驗(yàn)證所提模型的有效性,實(shí)驗(yàn)對(duì)比了所提模型與特征融合前后Faster R-CNN模型對(duì)實(shí)驗(yàn)數(shù)據(jù)集的檢測(cè)效果,結(jié)果如圖5所示。由圖可知,相較于改進(jìn)前,所提模型和FFaster R-CNN模型對(duì)各類鋼材表面缺陷的預(yù)測(cè)準(zhǔn)確率均得到了明顯提升,說(shuō)明特征融合可有效提升Faster R-CNN模型對(duì)鋼材表面缺陷的檢測(cè)準(zhǔn)確率。相較于FFaster R-CNN模型,所提模型對(duì)大部分類別的鋼材表面缺陷檢測(cè)準(zhǔn)確率均得到了不同程度地提升,說(shuō)明級(jí)聯(lián)檢測(cè)網(wǎng)絡(luò)可一定程度上提高模型的檢測(cè)準(zhǔn)確率。由此說(shuō)明,采用特征融合與級(jí)聯(lián)檢測(cè)網(wǎng)絡(luò)對(duì)提升Faster RCNN模型的檢測(cè)準(zhǔn)確率具有一定的有效性,即所提模型有效。
圖5 模型檢測(cè)結(jié)果對(duì)比Fig.5 Comparison of model test results
為進(jìn)一步驗(yàn)證所提模型的優(yōu)越性,實(shí)驗(yàn)對(duì)比了所提模型與傳統(tǒng)檢測(cè)模型的檢測(cè)效果,結(jié)果如表7所示。由表可知,相較于其他傳統(tǒng)檢測(cè)模型,所提模型在對(duì)鋼材表面缺陷檢測(cè)的精度和速率上具有一定的優(yōu)勢(shì),平均檢測(cè)準(zhǔn)確率達(dá)到98.29%,檢測(cè)速度達(dá)到12.26幀/s,可滿足鋼材表面缺陷檢測(cè)需求。
表7 模型檢測(cè)結(jié)果對(duì)比Tab.6 Comparison of model test results
3.4.3 實(shí)例驗(yàn)證
為驗(yàn)證所提模型的實(shí)際應(yīng)用效果,實(shí)驗(yàn)采用所提模型對(duì)存在缺陷的鋼材表面進(jìn)行了檢測(cè),結(jié)果如圖6所示。由圖可知,所提模型可較為準(zhǔn)確地檢測(cè)不同類別的鋼材表面缺陷,具有較強(qiáng)的泛化性能。
圖6 部分檢測(cè)實(shí)例Fig.6 Partial detection examples
綜上所述,所提的基于機(jī)器視覺(jué)的鋼材表面缺陷檢測(cè)方法,通過(guò)融合VGG-16網(wǎng)絡(luò)Block3和Block5特征,可減少結(jié)構(gòu)信息的丟失,使模型的平均檢測(cè)準(zhǔn)確率和檢測(cè)速度得到進(jìn)一步提升,達(dá)到95.92%和22.45幀/s;通過(guò)在檢測(cè)網(wǎng)絡(luò)后級(jí)聯(lián)一個(gè)IoU閾值為0.6的檢測(cè)網(wǎng)絡(luò),可實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)區(qū)域建議框更精確地分類與定位,使模型的平均檢測(cè)精度達(dá)到98.29%。改進(jìn)后的Faster R-CNN算法平均檢測(cè)準(zhǔn)確率和檢測(cè)速度分別達(dá)到84.06%和12.23幀/s,相較于基于Faster R-CNN、SSD和YOLO-V3等算法的傳統(tǒng)檢測(cè)方法,所提方法平均檢測(cè)精度和檢測(cè)速度均得到不同程度的提升,達(dá)到98.29%和12.26幀/s,具有一定的有效性和優(yōu)越性,可滿足不同類別的鋼材表面缺陷檢測(cè)需求。