于海濤,李健升,劉亞姣,李福龍,王 江,張春暉,于利峰
(1.天津大學 電氣自動化與信息工程學院,天津 300072;2.河北津西鋼鐵集團股份有限公司,河北 唐山 064302)
型鋼是一種經濟高效的型材,已被廣泛應用在民用和工業領域,是工業生產當中的一種重要鋼材。由于環境和生產工藝等因素,型鋼生產過程當中總會不可避免地產生各種表面缺陷,若不能及時調整生產過程當中的問題,將嚴重影響型鋼產品的質量和安全系數[1-2]。型鋼表面采集的圖像具有背景復雜、光照不均勻和噪聲等問題,傳統的基于機器視覺的表面缺陷檢測方法主要采用手工提取特征與機器學習分類算法相結合的分離式設計,過程繁瑣,魯棒性差,缺陷識別效率較低[3]。
深度學習提供了一種端到端的學習范式,并借助其強大的挖掘數據潛在特征的能力,已成為缺陷檢測領域的主要方法。Weimer 等[4]將深度卷積神經網 絡(Deep Convolution Neural Network,DCNN)應用于工業缺陷檢測領域,驗證了該方法可以通過大量的訓練數據與分層學習策略獲得有效的缺陷圖像特征,并且展示了出色的缺陷分類效果;鄧澤林等[5]構建了基于最大穩定極值區域分析與卷積神經網絡協同的疵點實時檢測系統,通過預檢測與精確檢測兩級檢測機制,能夠精確地檢測無紡布中的疵點;Chen 等[6]在語義分割模型的基礎上,僅使用了少量的訓練數據即可對缺陷圖像實現特征提取與像素級預測,進而得到表面缺陷輪廓。上述研究均針對提高缺陷識別準確率的問題給出了解決方案,但是生產過程中的型鋼運動速度可達5~10 m/s,并且由于缺陷出現位置的不確定性,需要同時采集型鋼的各個表面圖像。由此產生的大量圖像數據對檢測方法的實時性要求高,缺陷檢測難度大,使得上述方法難以滿足要求。
Ren 等[7]提出 Faster R-CNN(Faster Region-based Convolutional Neural Network)的兩階段檢測方法,由區域推薦網絡(Region Proposal Network,RPN)替代原始分割算法生成候選框,據此得到的特征提取結果送入分類網絡,最終實現目標的分類與定位,大幅提升了網絡推理速度;Redmon等[8-10]則脫離兩階段目標檢測框架,提出了單階段的目標檢測網絡YOLO(You Only Look Once)系列,通過頂端的檢測網絡直接預測每一個提前設定好的錨框的類別、位置信息和置信度,由包含物體中心的錨框負責檢測當前物體,這種單階段檢測方法進一步縮短了模型檢測的時間;Yin 等[11]采用極限學習機算法作為目標檢測的特征提取網絡,提出了一種Faster-YOLO 目標檢測算法,其檢測速度較YOLOv3 模型提高了2 倍。目前,基于上述方法的拓展與應用在保證檢測效果的同時通過優化網絡結構和預測推理過程提高了網絡的檢測效率。
經現場實驗數據統計可知,型鋼生產過程中產生的大量圖像數據中,有缺陷圖像數量僅占總圖像數量的7%左右。有缺陷圖像的出現概率低,導致上述的表面缺陷檢測算法將計算時間主要集中在了大量的無缺陷圖像上,從而嚴重拖慢了檢測環節在整體上的有效檢測速度。其中,整體上的有效檢測速度指的是一段時間內檢測算法處理的有缺陷圖像數量除以總時間。因此,本文提出了一種基于級聯式網絡的型鋼表面缺陷檢測算法SDNet(Select and Detect Network)用于型鋼表面缺陷檢測任務。該算法首先在ResNet 為基準的預檢測分類網絡中引入深度可分離卷積(Depthwise Separable Convolution,DSC)與多通道并行卷積操作,將圖像準確分類為有缺陷圖像和無缺陷圖像;然后,在以YOLOv3 模型為基礎的檢測網絡中引入對偶注意力模塊(Dual Attention)和改進空洞空間金字塔池化(Atrous Spatial Pyramid Pooling,ASPP)模塊,將有缺陷圖像送入檢測網絡當中完成缺陷的分類與定位。SDNet 將缺陷分類算法的快速性與缺陷檢測算法的精準定位特性相結合,能夠同時兼顧檢測的效率與精度。本文的主要工作如下:
1)構建了基于深度可分離卷積的DSC-ResNet 輕量化預檢網絡,以圖像預檢測分類任務為驅動,將ResNet 模型中的殘差單元替換為多尺度并行殘差卷積模塊,并利用深度可分離卷積替代原有卷積操作,提升模型分類效果的同時減少了運算量。
2)提出了AA-YOLOv3(ASPP and Attention YOLOv3)缺陷檢測模型,基于原有YOLOv3 模型作出改進:在特征提取主干網絡中引入改進ASPP 模塊保持感受野,提升網絡小尺寸物體特征提取能力,并在YOLOv3 的預測網絡分支加入了對偶注意力層(Dual Net),增強模型特征聚合與選擇的能力,提升模型檢測效果。
3)以級聯方式融合DSC-ResNet 預檢測網絡和AAYOLOv3 檢測網絡,提出了一種型鋼表面缺陷快速檢測算法SDNet。與原始YOLOv3 模型相比,所提算法顯著提高了檢測速度和檢測精度,適用于型鋼表面缺陷的快速檢測。
本文提出了一種級聯式型鋼表面缺陷快速算法——SDNet,由DSC-ResNet 預分類模型和AA-YOLOv3 缺陷檢測模型構成,在檢測過程中剔除了對無缺陷圖像的無效檢測,大幅提升了缺陷檢測效率。具體地,在以ResNet 為基礎網絡構建預分類模型時,引入多尺度并行卷積殘差模塊以提升網絡特征提取能力,與此同時采用深度可分離卷積替代標準卷積操作,使卷積過程的運算量極大減少;在缺陷檢測模型YOLOv3 的基礎上,通過將改進ASPP 模塊嵌入主干特征提取網絡DarkNet53 的殘差模塊之前,增強了對于微小尺寸缺陷的特征提取能力,提升了型鋼表面缺陷檢測效果。預測過程如圖1 所示,由工業相機實時采集得到的型鋼表面圖像送入預分類模型,如果預分類模型判斷型鋼表面存在缺陷分布,則采用缺陷檢測模型進行精確分類與定位。

圖1 型鋼表面缺陷檢測模型Fig.1 Section steel surface defect detection model
普通卷積神經網絡在誤差反向傳播過程中存在梯度消失現象,He 等[12]通過將殘差模塊引入到卷積神經網絡構建了殘差神經網絡(Residual Neural Network,RNN),有效地解決了深度神經網絡模型訓練困難的問題。ResNet18 是ResNet 淺層網絡的一種實現形式,其殘差塊使用兩個3×3 卷積和跨層連接,相較于LeNet、AlexNet 等經典卷積神經網絡,分類準確率更高[13-14]。殘差網絡定義如下:

其中:H(x,wh)為非線性層,x為輸入特征,wh為特征層參數;y為輸出特征,由輸入引入的短連接與非線性層的輸出相加得到。
然而,與經典神經網絡模型類似,ResNet18 采用的標準卷積使用多通道特征融合采樣方式造成了網絡參數量過大、計算效率較低等問題,不利于目標檢測的快速性與實時性。因此,本文在以ResNet 為預分類網絡的基礎上作出改進。該模型最終將特征提取結果經過最大池化層與全連接層,分類結果由softmax 函數將輸出映射為(0,1)。值得注意的是,考慮到型鋼圖像當中大部分屬于背景區域,最大池化有助于輸出中顯著區域部分特征在訓練過程中得到最大響應[15-16]。最大池化輸入特征X的尺寸為m×n、卷積核尺寸p×q、步長為1 時,最大池化計算過程如下:

當前最大池化輸出特征層Y尺寸為g×h,經過前向傳播與誤差計算可得:

誤差對最大池化輸出Y的梯度?e(Y)為:

則誤差對輸入層X的梯度計算過程為:

可見,包含最大池化層的神經網絡的誤差反向傳播過程只針對輸出特征圖當中最大響應的權重參數進行更新,這樣的操作使圖像當中的顯著性區域受到更多關注。
一般的ResNet 模型隨著殘差網絡深度逐漸加深而導致卷積運算過程中的感受野不斷增大,難以提取小尺度特征。針對上述問題,本文改進了ResNet 中的殘差單元ResBlock,如圖2 所示。輸入特征將分別經過1 × 1、3 × 3、5 × 5 三種不同的卷積核對特征層進行并行卷積,分別得到在不同感受野上的特征輸出層F1、F2、F3,最后經過特征維度拼接得到ResBlock 的輸出Oresblock。

圖2 DSC-ResNet框架Fig.2 Architecture of DSC-ResNet
拆分-合并拓撲策略在一定程度上能夠獲得分類精度的提升,但是隨之而來的是參數規模的指數級上升[17],因此本文引入DSC 替代普通模型中的標準卷積操作[18-19]。深度可分離卷積的過程如圖3 所示,它將普通卷積分為逐通道卷積和點向卷積。如逐通道卷積過程所示,各通道之間相互獨立,采用與輸入特征層通道數相同的卷積核分別對每一層特征層卷積,該計算過程忽略了通道之間的特征融合,因此在圖3 中使用點向卷積,將中間輸出結果經過1×1 的卷積核進行卷積運算,完成深度方向的信息聚合,得到輸出特征層。

圖3 深度可分離卷積Fig.3 Depthwise separable convolution
YOLOv3 將缺陷定位和分類集成在單一階段的神經網絡中,輸入圖像經過一次推斷,便能同時得到圖像中所有缺陷的位置和其所屬類別,大幅提升了檢測速度。該模型主要由特征提取模塊BackBone、特征融合模塊Neck 和檢測目標輸出模塊Head 三部分組成。Backbone 模塊使用基于殘差網絡的Darknet53 作為特征提取主干網絡。Neck 模塊使用金字塔結構將不同特征提取階段的輸出進行拼接,實現了多層次特征信息的有效整合,并將融合特征圖輸入到Head 模塊,最終得到3 種不同尺度特征預測圖像中的目標類別、位置和置信度。在預測網絡中將輸出特征圖劃分為S×S網格,每一個網格預測B個錨定框,每一個錨定框的置信度Con為:

如果當前網格包含目標中心,即Pr(Obj)=1,那么:

當前網格包含的物體屬于某一類別的條件概率為Pr(classi|Obj),那么包含特定類別物體的概率為條件概率與置信度的乘積:

YOLOv3 通過引入了空間金字塔拓撲結構有效地融合特征提取過程中不同層次的輸出結果,增強了對于圖像的細節信息和全局信息的理解,但仍存在少量目標漏檢現象[20]。這是由于在YOLOv3 的主干特征網絡當中隨著特征層數的加深,卷積操作使得特征層上的感受野不斷增大,導致部分缺陷檢測丟失。另外,在預測網絡當中并未選擇性地聚合來自各層級的特征,大量冗余特征的存在將導致網絡預測效果下降。因此,在YOLOv3 模型結構中作出兩點改進:在主干特征提取網絡當中加入改進ASPP 模塊;在預測網絡中的3個預測分支加入對偶注意力模塊(Dual Attention),提出了AA-YOLOv3 模型,如圖4 所示。

圖4 AA-YOLOv3模型結構Fig.4 Architecture of AA-YOLOv3 model
Darknet53 主干特征提取網絡中,將改進ASPP 模塊分別置于每一部分殘差模塊的最前端,增加特征提取網絡感受野的靈活性,從而改善小目標物體的檢測能力缺失的問題。如圖5 所示,改進空洞空間金字塔池化結構包含兩部分:第一部分由多擴張率空洞卷積和最大池化組成;第二部分針對原有ASPP 模塊,對輸入特征圖增加了最大池化分支以及1×1卷積部分的同時添加了殘差連接操作,以提取更加豐富的特征信息。

圖5 改進空洞空間金字塔池化模塊Fig.5 Module of improved ASPP
相較于普通卷積需要降采樣增加感受野,空洞卷積在保持空間分辨率的前提下增大了特征圖的感受野,有效解決了由于空間分辨率降低導致的信息丟失問題;同時,通過設置不同的空洞卷積擴張率,可以動態捕獲多尺度上下文信息,有利于強化視覺檢測任務中的小目標特征提取能力。ASPP模塊分別加入擴張率為1、3 和5 的空洞卷積,通過并行的空洞卷積操作和特征融合組成空洞空間金字塔池化結構。空洞卷積在普通卷積的基礎上加入擴張率參數d用來表示空洞數。普通卷積的擴張率默認為1,空洞卷積的卷積核根據設定的擴張率進行膨脹。設空洞卷積的卷積核大小為k,擴張率為d,則空洞卷積等效的卷積核大小k*計算式為:

改進的空洞空間金字塔池化利用不同擴張率的空洞卷積以及最大池化操作,得到基于多種感受野的特征圖,從多尺度角度進行特征提取和學習訓練,同時通過殘差分支使模型在不丟失輸入特征圖的基礎上聚集高層語義信息,提升了型鋼表面多尺度缺陷的檢測性能。
由于卷積操作會受到局部感受野的限制,在特征提取過程當中缺少了全局信息的聚合過程,導致缺陷識別準確率下降。因此,引入具有全局上下文信息探索能力的對偶注意力模塊(Dual Attention)[21],分別在空間與通道兩個層面上自適應地聚合長距離信息,增強網絡的特征表達能力,從而提升缺陷檢測效果,如圖6 所示。
在空間長距離注意力部分,通過獲取特征圖中任意兩個位置的特征相似性計算特征權重掩膜。具體地,輸入特征圖I(I∈RC×H×W)經過3 個并行1×1 卷積分別得到特征嵌入后結果Q1(Query)、K1(Key)、V1(Value),大小均為m×H×W。
Q1和K1分別經過矩陣重塑、矩陣相乘與權重歸一化操作之后得到空間位置特征掩膜S,并與經過矩陣重塑后的V1進行相乘并重塑,最終經過1×1 卷積與恒等映射連接,得到空間注意力選擇后輸出特征Op∈RC×H×W。上述過程計算式為:

其中:Sji為空間位置i對于j的關聯性值;OP為空間長距離注意力部分的輸出特征;Vj為原位置j的自身特征值。通道注意力部分屬于無參數注意力掩膜生成過程,其結構如圖6(b)所示。相同的輸入特征分別作為K2、Q2經過特征矩陣重塑與矩陣相乘操作后,得到通道注意力掩膜C∈RC×C,最終與V矩陣相乘輸出通道特征選擇后的Oc,計算式表達如下:

其中:Cji是位于通道索引i的特征對于j的關聯性值,空間長距離注意力部分的輸出特征為Oc(Oc∈RC×H×W)。
Dual Attention 分別被嵌入在AA-YOLOv3 的3 個預測分支中,輸入輸出特征圖尺寸保持不變,即C×H×W分別為27 × 52 × 52、27 × 26 × 26 和27 × 13 × 13。如圖6 所示,由于空間長距離注意力模塊的1 × 1 卷積操作將占據大量的內存訪問,因此特征嵌入后的Q1、K1和V1的通道數m為3;而Q2、K2和V2則不需要進行特征嵌入操作,因此在矩陣重塑之前與輸入尺寸相同為C×H×W。

圖6 對偶注意力模塊Fig.6 Module of dual attention
型鋼表面數據集共有1 600 張型鋼表面圖像,分為有缺陷類型和無缺陷類型。本文所用型鋼表面缺陷數據集包含結疤、剝落、劃傷和擊傷四種缺陷類型用于訓練缺陷檢測模型,每類缺陷200 張,共計800 張缺陷圖像,均為1 024 像素×1 024 像素的BMP 格式單通道灰度圖。另外,為了與現場缺陷數據分布相同,數據集包含800 張無缺陷表面圖像,用于訓練預分類模型。
2.2.1 預檢網絡損失函數
預檢網絡訓練時,本文采用了具有權值的二值交叉熵函數(Binary Cross Entropy Loss,BCELoss)作為損失函數:

其中:xi和yi表示訓練集的數據與標注;f(·)表示預分類模型分類函數;ω1和ω2分別為關于有缺陷和無缺陷兩種類別的損失函數權重,具體數值與訓練策略在2.3 節展開介紹。
2.2.2 精檢網絡損失函數
精簡網絡訓練過程中,損失函數分為三部分:Ecoord表示坐標誤差,Econ表示目標置信度誤差,Ecls表示分類誤差。

坐標誤差Ecoord采用均方誤差(Mean Square Error,MSE)損失函數,具體計算過程為:

模型訓練過程將型鋼表面數據集通過圖像垂直翻轉、水平翻轉、旋轉、隨機填充等方式將樣本量擴充10 倍。在預檢模型訓練過程當中,采用所有型鋼表面數據集圖像,學習率設置為0.000 1,二值交叉熵損失函數中的正負樣本權重比值為10∶1,使用隨機梯度下降算法(Stochastic Gradient Descent,SGD)優化。在精檢模型的訓練過程中僅使用缺陷圖像,數據集按照7∶2∶1 的比例被劃分為訓練集、驗證集和測試集。特別地,為了模擬在工業生產過程中的實際情況,本文在總體表現的測試過程中,將無缺陷圖像和有缺陷圖像數量比例設為14∶1。實驗采用批次迭代訓練法,訓練批大小設置為32,迭代次數設置為100,動量設置為0.9,權重衰減率為0.000 2,學習率設置為0.001,使用SGD 算法優化。實驗在PC 上進行,使用Intel Xeon Silver 4110 CPU,2080Ti GPU。預檢模型迭代損失曲線如圖7(a)所示,精檢模型迭代損失曲線如圖7(b)所示。預分類模型和精檢模型在訓練前期損失均快速下降,預檢模型在迭代100 次以后趨于穩定,精檢模型在迭代300 次以后趨于穩定。

圖7 損失函數迭代過程Fig.7 Loss function iteration process
在預檢網絡的驗證結果中,本文使用了二分類模型的分類精確率以及有缺陷圖像的召回率作為預檢模型的評價指標。在缺陷檢測的實驗結果驗證中選用多類別平均精度(mean Average Precision,mAP)和每秒幀數(Frames Per Second,FPS)作為模型評價指標。mAP 為模型檢測精度評價指標,表示所有缺陷類別的平均預測效果。單類別的評價指標AP 為該類別的PR 曲線下面積。召回率(Recall,R)和精度(Precision,P)的計算中,設置IOU 閾值為0.5,計算式如下:

mAP 的計算式為所有類別AP 值的平均:

FPS 表示每秒可以完成缺陷檢測的圖像幀數,為模型檢測速度評價指標,計算式如下:

式中Tavg表示處理一張圖像的平均時間,單位為秒(s)。
SDNet 算法的核心思想就是通過預檢模型將占比更高的無缺陷圖像通過預分類的方式剔除,避免無效運算。因此,預檢模型的分類精確率以及正樣本召回率對于模型整體檢測效果至關重要,只有預檢模型擁有足夠高的召回率和良好的分類效果,表面缺陷算法SDNet 才能有較好的檢測效果。為了觀察本文所提出的DSC-ResNet 的分類效果,采用了圖像分類中的常用深度學習模型進行對比,分別包括ResNet18、VGGNet[22]、DenseNet[23]和MobileNet[24]。如表1 所示為在相同驗證集下5 種模型的分類準確率和針對有缺陷圖像的召回率。

表1 不同預分類模型的性能 單位:%Tab.1 Performance of different pre-classification models unit:%
ResNet18 模型在分類效果上與DSC-ResNet 相差較大:ResNet18 網絡漏檢率(漏檢率=1-召回率)為5.74%,分類準確率為94.25%,同等條件下的DSC-ResNet 網絡漏檢率為1.09%,分類準確率達到97.63%,明顯高于原模型。采用了28 層卷積神經網絡的MobileNet 同樣使用了深度可分離卷積,然而MobileNet 在型鋼表面數據集上的分類正確率只有92.35%,漏檢率為4.98%,相較于DSC-ResNet,分類正確率下降了5.28 個百分點,說明本文改進的ResBlock 中多尺度并行卷積操作對DSC-ResNet 整體分類效果有著顯著的提升。同樣地,與VGGNet 和DenseNet 相比,DSC-ResNet 也具有明顯的優勢。
3.2.1 消融實驗
為分析AA-YOLOv3 檢測算法中各改進方法對型鋼表面缺陷檢測結果的影響,本文設計消融實驗來評估對應改進部分的檢測效果。具體實驗內容以及檢測結果如表2 所示。其中,“√”表示使用了對應方法。

表2 AA-YOLOv3檢測算法消融實驗結果Tab.2 Ablation experimental results of AA-YOLOv3 detection algorithm
算法1(YOLOv3+ASPP)的主要改進在于缺陷檢測網絡的主干特征提取網絡中,通過改進空洞空間金字塔卷積操作有效地保持了特征提取過程中感受野的大小,且提供了更加豐富的特征表示,從而解決了缺陷檢測網絡中尺寸不變性的問題。因此,相較于原YOLOv3 檢測算法,算法1 的平均檢測精度提高了4.5 個百分點,表明了空洞空間金字塔的有效性。算法2(YOLOv3+Dual Attention)中,對偶注意力模塊主要作用于YOLOv3 預測網絡當中的3 個預測分支,增加缺陷位置的特征權重以及抑制背景位置的特征權重,進而提高缺陷檢測效果,其平均檢測精度相較于原YOLOv3 算法提高了11.2 個百分點,同時檢測速度FPS 降低至22.88。綜合考慮上述改進方法,本文所提出的AA-YOLOv3 在型鋼缺陷檢測任務上表現最好,相較于原YOLOv3 算法檢測精度提升了13.4 個百分點,同時,檢測速度19.51 FPS 仍然可以滿足檢測要求。
3.2.2 橫向對比
為驗證本文所提出的AA-YOLOv3 檢測算法的有效性,將缺陷檢測中常用的深度學習算法進行橫向對比,包括兩階段檢測算法Faster R-CNN 和單階段檢測算法SSD[25]、YOLOv3、YOLOv5-s。圖8 為5 種檢測模型在部分缺陷圖像中的檢測效果。

圖8 5種模型的檢測效果對比Fig.8 Detection effects comparion of five models
表3 為不同模型檢測效果的橫向對比,與SSD 和Faster R-CNN 兩種模型相比,YOLO 系列模型取得了相對較高的檢測準確率。YOLOv3 模型在YOLO 系列模型中的檢測效果最差,mAP 值為81.7%,但仍比SSD 提高了11.1 個百分點,比Faster R-CNN 僅低4.5 個百分點。AA-YOLOv3 的平均檢測精度為95.1%,與YOLOv5-s 模型90.4%的準確率相比提升了4.7 個百分點,主要因為改進的ASPP 與Dual Attention 使得YOLOv3 模型檢測能力提升,從而提高了其在整體數據集上的缺陷檢測準確率。

表3 不同模型的橫向對比 單位:%Tab.3 Horizontal comparison of different models unit:%
通過分析不同模型針對單一類型缺陷的檢測性能,驗證各類缺陷的檢測特異性。圖9 所示為上述五種檢測模型在四種缺陷類型上的PR 曲線。可以發現,由于缺陷圖像的自身特征表達的不同,導致上述五種模型均對不同類型缺陷的檢測結果有明顯差別,對于剝落和劃傷兩種缺陷整體檢測效果更好,準確率更高,而對于結疤和擊傷缺陷檢測準確率則顯著下降。但AA-YOLOv3 缺陷檢測模型在四種缺陷類型上的檢測效果上均優于其他缺陷檢測模型,進一步表明了AAYOLOv3 的優越性。

圖9 不同檢測模型的四類缺陷PR曲線Fig.9 PR curves of four types of defects of different detection models
為進一步分析該缺陷檢測方法的有效性,本文通過改變測試集中缺陷圖像占比,并以FPS 為衡量指標進行了充分的實驗分析,結果如圖10 所示。該實驗在測試集圖像數量保持不變的情況下改變缺陷圖像占比,在不同比例的情況下分別進行了5 次實驗,并將平均值標記為三角形,同時上下帶狀區域表示95%置信區間。該缺陷檢測方法的FPS 隨著比例增大而增大,同時上升速度減小,逐漸逼近極限檢測速度。可見,該方法有效地解決了因缺陷圖像小概率發生事件的偶發性而導致的有效檢測速度被嚴重拖慢的問題。

圖10 不同缺陷圖像占比下的檢測速度Fig.10 Detection speed under different defect image ratio
為準確衡量所提出SDNet 模型的檢測性能,使用3.2 節中的五種檢測模型(Faster R-CNN、SSD、YOLOv3、YOLOv5-s、SDNet)進行橫向對比實驗。其中,檢測速度直接決定其能否滿足實時性要求,是本文所提出SDNet 檢測模型要解決的核心問題;檢測精度由mAP 指標衡量,決定模型能否準確識別并檢測到缺陷。5 種檢測模型在測試集上的實驗結果如表4所示,測試集中無缺陷圖像和有缺陷圖像的比例設為14∶1。

表4 不同模型的檢測速度對比Tab.4 Comparison of detection speed of different models
SDNet 模型檢測速度達到了120.63 FPS,為原YOLOv3模型檢測速度的3.7 倍,與兩階段目標檢測算法Faster RCNN 相比提升了約5.4 倍,同樣相較于SSD 和YOLOv5-s 也有著顯著的提升,主要原因是本文模型為了模擬實際生產情況,驗證集中主要由無缺陷圖像和少量的有缺陷圖像組成,無缺陷圖像經過預分類模型之后已被排除,節省了大量的計算時間。可見,在相同的情況下,本文所提出的級聯式型鋼表面缺陷檢測算法具有非常大的優勢。
針對型鋼生產過程中無缺陷圖像檢測過程造成的大量冗余計算問題,本文結合了缺陷分類的快速性和目標檢測的精準定位特性,提出了級聯式缺陷檢測模型SDNet。通過預檢測網絡首先判斷實時產生的圖像數據當中是否存在缺陷,將篩選出的有缺陷圖像再次送入缺陷檢測模型進一步檢測,大幅提高了缺陷檢測模型的檢測效率。另外,使用了深度可分離卷積和多尺度并行卷積擴展了網絡模型寬度,提高了缺陷預分類網絡的分類準確率;同時,使用了改進空洞空間金字塔池化結構與對偶注意力模塊,改善了YOLOv3 模型對缺陷的特征提取能力,提高了檢測精度。實驗結果表明,所提模型對剝落、劃傷、擊傷和結疤四種缺陷的平均檢測速度達到了120.63 FPS,與原始YOLOv3 模型和Faster-RCNN 等模型相比,檢測速度提升了2~5 倍,滿足了檢測實時性要求;對剝落、劃傷、擊傷和結疤四種缺陷的平均檢測準確率達到了92.9%,滿足快速檢測的要求。后續可對該級聯缺陷檢測模型進一步優化,采用更合理的權重分配使得先分類后檢測的策略能夠在有效降低漏檢率的同時提高檢測速度,廣泛應用至型鋼、鋼軌等表面缺陷檢測領域中。