楊建偉,涂興子,梅峰漳,李亞寧,范鑫杰
(1.平頂山天安煤業股份有限公司煤礦機電運輸,河南 平頂山 467000;2.山西戴德測控技術有限公司研發部,山西 太原 030000)
芳綸帶在煤炭、運輸和工礦等能源行業以及物流行業中廣泛應用。在煤礦生產和運輸過程中,通過芳綸帶傳送,可以有效減少人力和物力,從而節省時間,使生產利益最大化。在使用過程中,由于異物損傷、生產磨損和煤塊砸落等原因,皮帶會出現損傷、劃傷等問題。如果沒有及時預防和解決,會產生經濟損失和人員傷亡。針對輸送帶的損傷檢測,國內外研究者做了很多相關的研究。國內方面:劉尹霞等[1]通過圖像增強,增加了6個方向的模板,優化了傳統的Sobel圖像邊緣提取算法,準確定位到皮帶邊緣損傷部位;劉波[2]運用X光的穿透特性,采集到鋼絲繩芯的傳送帶圖像,運用紋理濾波和LBP算法使檢測精度可以達到90%。國外方面:KIRJANOW-BLAZEJ等[3]以DiagBelt移動系統采集的數據為基礎,對鋼繩芯輸送帶進行非侵入性診斷,基于損傷分析的回歸方法對鋼繩輸送帶剩余壽命進行預測,并通過后續的圖帶掃描進行識別。
隨著計算機GPU性能的提升、深度學習以及神經網絡的發展,相比于傳統的視覺檢測需要預處理,對光照條件要求比較嚴格,需要人為提取感興趣區域,神經網絡可以通過卷積層提取出圖像特征,實現端到端的輸入輸出模式,并且檢測時效性強。唐士宇等[4]基于卷積神經網絡Faster R-CNN,可以監測井下工人的安全問題,識別準確率達到87.6%。
在芳綸帶的損傷檢測方面,國內研究較少。目前的芳綸帶檢測更多依靠人工皮尺測量寬度來判斷,但這種檢測方式看不到芳綸帶內部結構,對于內部的結構損傷和破損無法準確判定。在測試初期,嘗試傳統的視覺檢測系統檢測芳綸帶缺陷,是基于頻域濾波和紋理濾波來提取圖像的紋理特征,但是現場的圖像白噪聲較多,并且現場的圖像一致性不好,所以傳統的視覺檢測魯棒性較差,精度較低。嘗試未改進的YOLOV3算法,在實際現場測試中發現,YOLOV3算法對小物體檢測精度不足。本文提出了優化的YOLOV3算法,借鑒了DenseNet的傳輸過程,并運用卷積降維來減少檢測時間,改善了以上兩種檢測方法的弊端,以改善目前檢測方法對小目標的敏感度不足,提升檢測精度。
ROSS等[5]在CNN深度學習神經網絡的基礎上,設計了RCNN網絡,將分類問題轉化為回歸問題,實現了檢測算法的轉化。隨后又優化了檢測算法,設計了Fast R-CNN網絡[6]和Faster R-CNN網絡[7],Faster R-CNN網絡要先提出候選區,再識別候選區中的對象。JOSEPH等[8]提出了YOLOV1算法,創造性地將候選區和對象識別兩個階段合二為一,識別檢測速度大幅提升。隨后在YOLOV1算法的基礎上,從預測更準確(better)、速度更快(faster)、識別對象更多(stronger)三方面進行了改進,設計了YOLOV2算法[9]。
YOLOV3算法是JOSEPH等[10]在YOLOV2算法基礎上設計和優化的深度神經網絡。YOLOV3算法主要的改進有:調整了網絡結構、利用多尺度特征進行對象檢測、對象分類用Logistic模型取代了Softmax模型,在圖像基本特征提取方面,YOLOV3算法采用Darknet-53框架的網絡結構(含有53個卷積層),它借鑒了殘差網絡[11]的做法,在一些層之間設置了快捷鏈路。Darknet-53框架的網絡結構如圖1所示。圖1由53個卷積層、1個池化層、1個全連接層構成[12],網絡結構中,輸入尺寸為256×256×3,每個殘差組件有2個卷積層和1個快捷鏈路,殘差組件示意圖見圖2。
圖1 Darknet-53框架的網絡結構Fig.1 Network structure of Darknet-53 framework

圖2 殘差組件Fig.2 Residual components
利用多尺度特征進行對象檢測,YOLOV2算法采用Passthrough結構來檢測細粒度特征,YOLOV3算法在此基礎上采用了3個不同尺度的特征圖來進行對象檢測。圖3為YOLOV3算法網絡結構。由圖3可知,YOLOV3算法在79層之后,經過檢測層得到尺度的檢測結果,對比輸入圖像,特征圖做了32倍的下采樣。由于下采樣倍數高,特征圖的感受野比較大,適合檢測尺寸比較大的對象。第79層的特征圖開始做上采樣,然后與第61層的特征圖融合,得到了第91層較細粒度的特征圖。經過檢測層得到16倍輸入圖像的下采樣特征圖,感受野為中等尺度,對于檢測中等尺度的對象有較好的效果。第91層的特征圖進行上采樣,并與第36層的特征圖融合,得到輸入圖像的8倍下采樣特征圖,感受野最小[13],適合檢測小尺寸的對象。對象分類Softmax模型[14]改成Logistic模型[15],預測對象類別時不使用Softmax模型,改為Logistic模型的輸出進行預測,以支持多標簽對象。
DenseNet是一種具有密集連接的卷積神經網絡,網絡每一層的輸入都是前面所有層輸出的并集,而該層所學習的特征圖也會被直接傳給其后面所有層作為輸入。這樣的設計可以有效地減少隨著網絡深度加深出現的梯度消失現象。DenseNet網絡提出了dense block的結構,來解決網絡深度和梯度消失問題,圖4為DenseNet示意圖。

圖3 YOLOV3算法網絡結構Fig.3 YOLOV3 algorithm network structure

圖4 DenseNet示意圖Fig.4 Schematic of DenseNet
由圖4可知,如果記第1層的變換函數為Hl(通常對應于一組或兩組Batch-Normalization,ReLU和Convolution的操作),輸出為xl,其輸出為:xl=Hl([X0,X1,…,xl-1])xl=Hl([X0,X1,…,xl-1])。該算法設計使DenseNet網絡更窄,參數更少,梯度消失主要是因為當前面隱藏層的學習速率低于后面隱藏層的學習速率,即隨著隱藏層數目增加,分類準確率下降。而DenseNet的連接結構每一層都連接著輸入值和損失值,這樣可以緩解梯度消失的問題。由于DenseNet用bottleneck和transition layer[16]操作,所以網絡結構參數大大減小,使網絡具有正則化的效果,對過擬合有很好的抑制作用。圖5為DenseNet的數據圖。

圖5 DenseNet數據圖Fig.5 Data graph of DenseNet
在YOLOV3算法中,為了減少梯度消失[17],訓練更深層次的網絡,每個殘差組件有2個卷積層[18]和1個快捷鏈路。由于殘差網絡參數比較多,在訓練時,容易出現過擬合問題,所以選用DenseNet神經網絡替換原來的快捷鏈路。在實際現場的檢測中,檢測精度偏低主要是因為對小物體的魯棒性較差,所以優化后的殘差組件主要組用于YOLOV3算法的第36層,優化后的殘差組件如圖6所示。

圖6 優化后的殘差組件Fig.6 Optimized residual components
優化后的神經網絡,融合了DenseNet的網絡特征,為了減少參數,使得網絡更窄,簡化了DenseNet神經網絡,將YOLOV3算法的第4層、第8層、第11層、第15層、第18層、第21層、第24層、第27層、第30層和第33層輸出。經過卷積操作傳入到第36層神經網絡,為減少檢測時間,在每個殘差組件添加了1×1的卷積操作,即Translation layer。卷積層數和卷積核大小設計見表1。

表1 優化的神經網絡卷積層Table 1 Optimized convolutional layer of neural network
與第91層特征圖進行融合,使圖像信息更完整,對小目標的檢測更準確。最終誤差損失包括邊框位置誤差、置信度誤差、對象分類誤差,見式(1)。

(1)

優化的YOLOV3算法,實驗環境為RTX2070顯卡和Caffe框架,本文選用COCO數據集作為訓練和數據預測的預處理,保存后,配置訓練模型,本文權重衰減率0.000 2,動量0.76,初始學習率0.000 15。訓練樣本為600張圖片,迭代6萬次,類別為瑕疵,背景。整體的實驗流程如圖7所示。最后的損失值由式(1)計算得出,損失值見圖8。由圖8可知,在訓練階段,迭代到4萬次左右時收斂。

圖7 整體流程圖Fig.7 Overall flowchart

圖8 損失值圖Fig.8 Loss value figure

表2 三種方法實驗數據Table 2 Three methods of experimental data network

圖9 測試結果圖Fig.9 Test results diagram
在實際測試集中,正負樣品的比例為1∶1,訓練樣本均為200張,傳統的基于機器視覺的方法、基于YOLOV3算法和基于改進的YOLOV3算法,對測試集檢測數據見表2。由表2可知,傳統的基于OTSU和紋理濾波的檢測方法,相較于其他兩種算法,檢測準確率差,達不到實時性,誤檢率和漏檢率數據都很差。未優化的YOLOV3算法,相比于改進的YOLOV3算法,檢測準確率低0.15,誤檢率高0.19,漏檢率高0.1,檢測時間基本一致,這是因為本文采用了卷積降維的設計,使得檢測時間沒有加長,檢測精度有明顯改善。
圖9為測試集部分檢測結果。由圖9可知,在檢測接頭抽動斷裂時,傳統的機器視覺檢測方法,依靠OTSU和紋理濾波的方式,對于背景復雜的檢測效果很差,未改進的YOLOV3算法,對于小目標的敏感度不佳,本文的檢測方法,由于利用多尺度特征進行對象檢測,并且優化了神經網絡,使得對小目標的檢測更加準確,并且對物體的表征能力也比較好。
本文基于YOLOV3算法的做了優化,借鑒了DenseNet網絡的dense block模塊,替代了YOLOV3算法中的殘差模塊,從而使得芳綸帶檢測對小瑕疵魯棒性更好,可以應對復雜背景的檢測。實驗數據表明,優化后的YOLOV3算法準確性更高,證明優化的YOLOV3算法是有效的。但是,本文的算法對小目標的表征能力比較強,對于背景特別復雜的瑕疵檢測,效果不是很好,所以,下一步要解決的是應對復雜背景的瑕疵檢測,優化神經網絡。