• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      改進YOLOv3的礦石輸送帶雜物檢測方法

      2021-11-12 15:18:32薄景文張春堂樊春玲李海菊
      計算機工程與應用 2021年21期
      關鍵詞:雜物殘差卷積

      薄景文,張春堂,樊春玲,李海菊

      青島科技大學 自動化與電子工程學院,山東 青島266100

      在選礦生產過程中,礦石輸送是重要的一環(huán)。由于礦山井下開采出的礦石夾雜了大量的廢舊木頭、鋼釬、塑料管、起爆線、鋼板、鋁方管等雜物,必須要清除。目前,雜物清理主要依靠人工作業(yè),工人的勞動強度大,效率低,且有些雜物在現(xiàn)場很難被發(fā)現(xiàn),會有諸多漏揀的雜物進入到后續(xù)破碎、選礦環(huán)節(jié),其中剛性雜物容易損壞設備,軟性雜物容易造成堵塞,給生產帶來嚴重的經濟損失。因此有必要將目標檢測技術引入到礦石輸送環(huán)節(jié),實現(xiàn)對雜物的快速準確識別。

      近年來,基于深度學習的目標檢測算法被初步應用于采礦業(yè)領域[1-4],實現(xiàn)了人工智能技術與礦山某些特定業(yè)務的結合,推動了智慧礦山[5]的建設。目前目標檢測算法主要有兩類:一類是雙階段檢測算法,以RCNN[6]、Fast RCNN[7]、Faster RCNN[8]和Mask RCNN[9]等為典型代表,這類算法先通過選擇搜索(Selective Search)或候選區(qū)域生成網(wǎng)絡(Region Proposal Network)生成一系列候選框,再通過卷積神經網(wǎng)絡對候選框內目標的位置和類別進行預測;另一類是單階段檢測算法,以SSD[10]、YOLO[11]和RetinaNet[12]等為代表,這類算法是一種端到端的算法,直接通過網(wǎng)絡最后的輸出層得到目標的位置和類別信息,因此單階段算法檢測速度更快但精度低,雙階段算法則檢測精度高但速度慢。由于現(xiàn)場輸送帶實時運行,對檢測速度的要求更高,因此輸送帶雜物檢測中首先考慮單階段算法。相比于其他單階段算法,YOLOv3[13]更好地平衡了檢測精度與檢測速度,但其網(wǎng)絡結構復雜,對硬件資源配置要求較高。因此本文提出一種改進的YOLOv3算法YOLO-Ore,可以同時兼顧速度與精度,并能滿足礦石輸送帶雜物檢測的要求。

      本文首先利用Mobilenetv2[14]具有的深度可分離卷積和逆殘差結構的特點,將其作為YOLOv3的backbone,縮減了模型容量和參數(shù)量,避免了因殘差結構導致深度可分離卷積提取的特征信息減少的問題;然后將像素級場景解析網(wǎng)絡PSPnet[15]的空間金字塔池化結構PPM(Pyramid Pooling Module)添加到backbone最后一層之后,聚合了不同尺度的全局信息;接著在neck部分引入注意力機制CBAM[16](Convolution Block Attention Module),提高網(wǎng)絡對主要特征的學習能力;最后搭建實驗平臺,結合數(shù)據(jù)增廣技術,構建了包含廢舊木頭、鋼釬、塑料管、起爆線、鋼板、鋁方管6種礦石雜物的數(shù)據(jù)集。將改進后的算法YOLO-Ore在礦石雜物數(shù)據(jù)集上進行消融實驗,結果表明,在保證較高檢測精度的同時,縮小了模型容量,提高了模型推理速度,滿足了檢測實時性。

      1 改進的YOLOv3算法

      1.1 YOLOv3 backbone的改進

      YOLOv3的backbone是Darknet53,它是一種結構復雜的全卷積網(wǎng)絡,包含了23個殘差單元,具有較強的特征提取能力,但是隨著殘差單元個數(shù)和網(wǎng)絡通道數(shù)的增加,將會導致網(wǎng)絡參數(shù)量劇增,進而影響模型檢測速度。對于礦石輸送帶雜物檢測,更需要網(wǎng)絡實現(xiàn)快速檢測,因此并不需要如此復雜的backbone。由谷歌針對移動設備設計的輕量級網(wǎng)絡Mobilenet系列,提出用深度可分離卷積取代標準卷積,能夠有效解決模型參數(shù)量冗余的問題。因此,本文考慮將YOLOv3的backbone由Darknet53改為Mobilenetv2。

      為了驗證Mobilenetv2的特性,首先給出標準卷積與深度可分離卷積的結構圖,如圖1所示。

      圖1 標準卷積和深度可分離卷積結構Fig.1 Standard convolution and depth separableconvolution structure

      標準卷積的計算量為:

      深度可分離卷積的計算量為:

      其中,H表示輸入特征圖的高度,W表示輸入特征圖的寬度,M表示輸入通道數(shù),N表示輸出通道數(shù),F(xiàn)表示卷積核的尺寸。通過上式可以得出,深度可分離卷積的計算量和標準卷積的計算量之比為:

      由計算結果可以看出,深度可分離卷積使得backbone的參數(shù)量和計算量大大減少,縮小了網(wǎng)絡模型容量,有利于提高模型推理速度,同時解決了因硬件設備的限制導致網(wǎng)絡訓練緩慢的問題。

      雖然深度可分離卷積可以有效降低模型參數(shù)量,但會使網(wǎng)絡層數(shù)加深,進而出現(xiàn)梯度消失現(xiàn)象,而殘差結構可有效解決此問題。在Darknet53中,它雖然使用了殘差結構,然而隨著層數(shù)加深,殘差結構將會破壞特征信息,而Mobilenetv2在保留深度可分離卷積的基礎上,采用一種逆殘差結構使深度卷積能夠在高維空間提取特征,從而保留更多的特征信息。兩種結構分別如圖2和圖3所示。圖中Conv表示標準卷積,DConv表示深度卷積,Add為元素相加操作,C表示通道數(shù),n表示通道降維的倍數(shù),m表示通道升維的倍數(shù)。其中Mobilenetv2根據(jù)卷積步長的不同分為兩種Block類型。

      圖2 Darknet53殘差結構Fig.2 Darknet53 residual structure

      圖3 Mobilenetv2逆殘差結構Fig.3 Mobilenetv2 inverse residual structure

      由圖2和圖3可以看出,殘差結構是“降維-卷積-升維”的過程,逆殘差結構是“升維-深度卷積-降維”的過程,這是由于深度可分離卷積無法像標準卷積那樣提取足夠豐富的特征信息,若降維再提取,勢必會在經過多次殘差單元循環(huán)后,導致網(wǎng)絡提取的特征減少,進而影響網(wǎng)絡性能。因此,先升維再深度卷積,可以在保證主干網(wǎng)絡提取豐富特征的同時,減少參數(shù)量和計算量。

      改進YOLOv3的backbone結構如表1所示,主干網(wǎng)絡總共有155層。類似Darknet53,可以選擇第55、117、155層(52×52×32、26×26×96、13×13×1 280)作為backbone的輸出層,但是為了獲取更多通道的特征信息,分別選取第58、120、155層(52×52×192、26×26×576、13×13×1 280)作為backbone的三個輸出層。

      表1 改進YOLOv3的backbone結構Table 1 Backbone structure of improved YOLOv3

      1.2 YOLOv3 neck的改進

      輕量級backbone的引入必然會損失一定的精度,為了保證檢測精度基本不變,本文提出在YOLOv3的neck部分引入金字塔池化結構PPM和注意力機制CBAM。

      基于全卷積的網(wǎng)絡不能有效處理目標在空間位置上的信息,而傳統(tǒng)池化又會使特征圖的部分邊緣信息丟失。為了解決此問題,語義分割網(wǎng)絡PSPnet提出一種空間金字塔池化模塊PPM,能夠聚合不同尺度的全局上下文特征信息。空間金字塔池化模塊PPM如圖4所示,它以1×1、2×2、3×3、6×6四種不同尺寸的感受野對輸入特征圖進行全局平均池化,分別用1×1×(C/4)的卷積實現(xiàn)通道降維(其中C為輸入通道數(shù)),然后通過雙線性插值將拼接后的特征圖尺寸調整為原圖大小,將四個子特征圖按通道維度拼接,最后再與原圖拼接后經過一次3×3×(C/4)的卷積得到最終輸出。

      圖4 空間金字塔池化模塊PPMFig.4 Spatial pyramid pooling module PPM

      注意力機制在自然語言處理領域應用廣泛,近年來在計算機視覺領域逐漸取得了不錯的成績。注意力是指讓計算機更多關注重要信息,增強重要信息的特征映射。不同于SEnet[17]只關注通道維度上的注意力,CBAM在空間和通道兩個維度上都實施注意力機制,通過強調主要特征、抑制次要特征來對特征層進行權重再分配,從而使網(wǎng)絡在反向傳播時重點更新關鍵位置的權重。

      CBAM如圖5所示,其中通道注意模塊CAM(Channel Attention Module)將注意力集中在通道上,判斷哪些通道具有目標主要特征;空間注意模塊SAM(Spatial Attention Module)將注意力集中在空間位置上,判斷哪些位置上包含目標主要信息。CAM首先對輸入特征圖同時進行最大池化和平均池化,經過多層感知機MLP(Multi-Layer Perception)兩次全連接后相加,再經過sigmoid激活后得到通道維度上的權重系數(shù),與原輸入特征圖相乘得到的特征圖作為SAM的輸入;SAM對輸入在空間維度上的特征圖同時實施最大池化和平均池化,經過卷積和sigmoid激活后得到空間維度上的權重系數(shù),再與輸入相乘得到最終輸出。CBAM不僅能給網(wǎng)絡性能帶來實質性的提升,而且增加的計算量很少,全連接層和卷積層帶來的計算開銷可以忽略不計。

      圖5 CBAM結構圖Fig.5 Structure diagram of CBAM

      1.3 改進YOLOv3算法的網(wǎng)絡結構

      本文提出的改進YOLOv3算法(以下簡稱YOLOOre)整體網(wǎng)絡結構如圖6(a)所示,輸入為416×416像素的RGB格式圖片,經過主干網(wǎng)絡Mobilenetv2的5次下采樣后,分別提取52×52、26×26、13×13這三種不同尺度的特征層送入neck部分進行FPN[18]式的特征加強提取,提取后的特征圖最終經過head部分的兩次卷積后得到三種尺度的預測結果,損失函數(shù)依然保留原YOLOv3的損失函數(shù)不變。圖6(a)中,PPM為圖4所示結構,CBAM為圖5所示結構,Conv Block如圖6(b)所示。Conv Block由三次1×1×C(C為通道數(shù))的卷積組成,刪減了原來兩次3×3×2C的卷積,進一步壓縮模型。

      圖6 YOLO-Ore網(wǎng)絡結構Fig.6 YOLO-Ore network structure

      為了驗證本文所提方法的有效性,需要進行消融實驗,因此構建了三種網(wǎng)絡與本文所提方法進行對比實驗。構建的這三種網(wǎng)絡分別命名為YOLOv3_A、YOLOv3_B、YOLOv3_C,其中YOLOv3_A是在原來YOLOv3的基礎上將主干網(wǎng)絡改為Mobilenetv2;YOLOv3_B是在YOLOv3_A的基礎上增加了PPM結構;YOLOv3_C是在YOLOv3_B的基礎上增加了CBAM結構。本文所提出的YOLO-Ore是在YOLOv3_C的基礎上刪減了原Conv Block中兩次3×3×2C的卷積。

      2 實驗

      2.1 數(shù)據(jù)集制作

      根據(jù)礦場工藝人員的反饋,礦石輸送帶上的雜物主要有廢舊木頭、鋼釬、塑料管、起爆線、鋼板、鋁方管六種雜物,其中廢舊木頭和鋼釬等剛性雜物會對破碎機造成損壞,而起爆線等軟性雜物會對后續(xù)的浮選工藝環(huán)節(jié)造成影響。因此本文選取上述六種雜物,在實驗室搭建輸送帶模擬運輸環(huán)境,使用工業(yè)攝像頭對六種雜物進行拍攝。為了模擬實際生產環(huán)境,對雜物分為兩種情況進行拍攝,其中雜物表面無掩埋的情況為正常工況,雜物表面有部分被礦石掩埋的情況為復雜工況,具體情況如圖7所示??偣才臄z圖片2 000張,圖像分辨率均為1 920×1 080,使用LableImg工具對所有圖片按VOC數(shù)據(jù)集格式進行標注得到標簽文件。為了防止網(wǎng)絡訓練過擬合,采用添加高斯噪聲、亮度變化、旋轉、裁剪、平移、鏡像、隨機遮掩七種數(shù)據(jù)增廣技術進行數(shù)據(jù)擴充,每張圖片擴充10倍,最終得到的數(shù)據(jù)集數(shù)量為20 000張。按6∶2∶2比例將數(shù)據(jù)集劃分為訓練集、驗證集和測試集,得到訓練集12 000張(正常工況訓練集8 100張,復雜工況訓練集為3 900張),驗證集4 000張(正常工況驗證集2 700張,復雜工況驗證集1 300張),測試集4 000張(正常工況測試集2 700張,復雜工況測試集為1 300張),數(shù)據(jù)集具體情況如表2所示。

      圖7 兩種工況下的雜物示意圖Fig.7 Schematic diagram of sundries under two working conditions

      表2 數(shù)據(jù)集詳情Table 2 Dataset details

      2.2 網(wǎng)絡模型訓練

      本文訓練環(huán)境為ubuntu16.04操作系統(tǒng),處理器Intel Xeon E5-2640v4,顯卡NVIDIA RTX2080Ti,內存64 GB,顯存11 GB;測試環(huán)境為Windows10操作系統(tǒng),處理器Intel Core i7-9750H,顯卡NVIDIA RTX2060,內存16 GB,顯存6 GB。深度學習框架為TensorFlow,解釋器為Anaconda Python3.6。

      由于原YOLOv3是基于COCO數(shù)據(jù)集聚類得到9個錨框,COCO數(shù)據(jù)集物體類別多,尺寸比例豐富,不適用于本文礦石雜物數(shù)據(jù)集,因此使用默認的錨框尺寸勢必會影響模型訓練效果。所以在訓練前先使用k-means算法對數(shù)據(jù)集重新聚類,得到9個新的錨框尺寸(298,298)、(378,114)、(408,397)、(553,150)、(705,225)、(791,120)、(896,269)、(1 009,170)、(1 176,216)。所有數(shù)據(jù)的邊界框聚類分布結果如圖8所示,其中9種顏色的圓點表示所有邊界框尺寸分布,紅色圓點是9個聚類中心。訓練時使用Adam優(yōu)化器,設置初始學習率為0.001,采用余弦退火學習率衰減策略,batchsize為8,總共訓練200個epoch,不使用預訓練模型。

      圖8 邊界框聚類分布結果Fig.8 Cluster distribution results of bounding box

      3 實驗結果及分析

      3.1 不同工況下的檢測結果分析

      本文采用平均檢測精度mAP(mean Average Precision)和檢測速度FPS(Frame Per Second)作為實驗的主要評價指標,置信度和交并比IoU(Intersection over Union)閾值都設為0.5。在不同工況下,本文所提算法YOLO-Ore、構建的三種網(wǎng)絡,以及原有的YOLOv3的實驗測試結果如表3和表4所示。表3是正常工況下五種網(wǎng)絡的檢測結果對比,表4是復雜工況下五種網(wǎng)絡的檢測結果對比。

      表3 正常工況下五種網(wǎng)絡的檢測結果對比Table 3 Comparison of detection results of five networks under normal working conditions

      表4 復雜工況下五種網(wǎng)絡的檢測結果對比Table 4 Comparison of detection results of five networks under complex working conditions

      由表3可知,在正常工況下,YOLOv3_A的mAP值相較于原YOLOv3下降2.19個百分點,但檢測速度提高了1.83倍。YOLOv3_B的mAP相比于YOLOv3_A提高1.35個百分點,表明PPM有效地聚合了不同尺度的上下文信息,增強了主干網(wǎng)絡特征提取能力,但也導致了參數(shù)的小幅增加,使得檢測速度下降了4.58 frame/s。YOLOv3_C的mAP值比YOLOv3_B提高1.07個百分點,檢測速度降低了0.71 frame/s,變化不大,驗證了CBAM機制的有效性。本文所提方法YOLO-Ore相比于YOLOv3_C,其mAP僅降低了0.45個百分點,但在檢測速度上提高了8.69 frame/s,說明刪減掉兩次深層卷積不僅沒有降低模型學習能力,反而減少參數(shù)冗余,提升了模型推理速度。

      為了進一步驗證刪減冗余層對網(wǎng)絡學習能力的影響,將YOLOv3_C和YOLO-Ore的Conv Block最后一層的特征圖可視化,通過熱力圖與原圖融合的方式,對刪減冗余層前后的特征圖效果進行對比,如圖9所示。從圖9中可以看出,雖然在刪減冗余層之前,圖像的邊緣信息和目標特征更豐富,但是刪減后的網(wǎng)絡將注意力更加聚焦于目標的主要特征區(qū)域,即網(wǎng)絡更加關注有用區(qū)域,因此即使刪減了冗余層,對最終目標檢測效果的影響甚微。

      由表4可知,在復雜工況下,各個網(wǎng)絡的檢測速度與正常工況相比變化極小,說明模型推理速度與檢測目標的復雜性基本無關。從檢測精度方面來看,由于復雜工況下雜物的部分表面被礦石掩埋,因此相比于正常工況YOLOv3的mAP下降到88.13%,YOLOv3_A的mAP比YOLOv3降低1.61個百分點,YOLOv3_B的mAP比YOLOv3_A提高1.07個百分點,YOLOv3_C的mAP比YOLOv3_B提高1.04個百分點,由此可體現(xiàn)所提改進方法的有效性。與YOLOv3_C相比,YOLO-Ore的mAP降低了0.44個百分點,檢測速度提高了8.60 frame/s。

      總體分析來看,相較于YOLOv3,YOLO-Ore用檢測精度的微小犧牲換來了檢測速度的顯著提高。圖10為YOLO-Ore在兩種工況下的部分檢測結果,由圖可以看出在兩種工況下六種礦石雜物都能被檢測出來且定位準確。

      3.2 模型復雜度的分析

      為了比較不同網(wǎng)絡的模型復雜度,將五種網(wǎng)絡的模型容量、參數(shù)量以及浮點運算量進行對比,結果如表5所示。

      表5 五種網(wǎng)絡的模型復雜度對比Table 5 Comparison of model complexity of five networks

      從表5的數(shù)據(jù)可以看出,深度可分離卷積有效減少了參數(shù)量和浮點運算量,YOLOv3_A的模型容量為YOLOv3的38%。而PPM和CBAM的 引 入,使 得YOLOv3_B和YOLOv3_C的參數(shù)量和浮點運算量相比YOLOv3_A又 增 加 了 約1.37倍,YOLOv3_B和YOLOv3_C的模型容量約為YOLOv3的52%。本文所提方法YOLO-Ore的參數(shù)量和浮點運算量最少,模型容量減小到72.7 MB,僅為YOLOv3的31%。

      結合表3、表4和表5可以看出,本文所提YOLO-Ore方法以及構建的三種網(wǎng)絡都達到了實時檢測的需求,其中YOLO-Ore在兩種工況下,在不損失精度的前提下,檢測速度都高于原YOLOv3網(wǎng)絡和構建的三種網(wǎng)絡,且模型的容量大幅縮減,有利于模型移植到硬件條件和計算能力都較低的平臺。

      3.3 與其他目標檢測算法的對比

      為了更好地驗證所提方法的優(yōu)越性,在兩種工況下,基于本文測試集,將本文所提方法YOLO-Ore與CenterNet[19]、M2Det[20]、RetinaNet、SSD以 及YOLOv4[21]五種單階段目標檢測算法進行對比,主要從檢測精度、檢測速度和模型復雜度方面進行對比分析,結果如表6和表7所示。為保證結果的公平性,所有算法都在同樣的硬件平臺上進行訓練和測試。

      表6 本文YOLO-Ore與其他算法的檢測結果對比Table 6 Comparison of detection results between YOLO-Ore and other algorithms

      表7 本文YOLO-Ore與其他算法的模型復雜度對比Table 7 Comparison of model complexity between YOLO-Ore and other algorithms

      由表6可見,只有CenterNet、SSD和YOLO-Ore滿足檢測實時性需求,而在兩種工況下CenterNet和YOLO-Ore的檢測精度都較高且相差不大,且都明顯優(yōu)于SSD算法。從檢測速度上來看,YOLO-Ore的檢測速度是CenterNet的1.78倍,處于明顯的優(yōu)勢。因此,權衡精度和速度兩個方面,本文所提方法YOLO-Ore在大幅提高檢測速度的同時還保證了較高的檢測準確性。

      通過表7的對比數(shù)據(jù)可以看出,本文所提算法YOLO-Ore的模型容量、參數(shù)量和浮點運算量遠小于其他算法,浮點運算量壓縮至M2Det的約1/13。在實際應用場景中,硬件平臺的配置普遍不會很高,因此對于將模型移植在GPU算力較低的工控計算機上來說,YOLOOre具有顯著的優(yōu)越性,綜合考慮檢測精度、檢測速度、模型復雜度和模型可移植性幾個方面,YOLO-Ore的整體魯棒性更好。

      4 結論

      本文提出了基于YOLOv3的改進算法YOLO-Ore實現(xiàn)對礦石輸送帶上的雜物檢測。該算法以YOLOv3為基礎,將Mobilenetv2作為主干特征提取網(wǎng)絡,壓縮模型容量,提高檢測速度。引入空間金字塔池化結構PPM和注意力機制CBAM,融合多尺度上下文信息,突出重要信息的表征,提高了模型檢測精度。刪減冗余參數(shù)網(wǎng)絡層,進一步簡化網(wǎng)絡,提高了檢測速度。實驗結果表明,YOLO-Ore在保持高精度的情況下,檢測速度提高了約2倍,符合現(xiàn)場實時檢測的要求,同時模型容量壓縮了69%,有利于模型移植到硬件配置低的設備平臺上。本文是在自有數(shù)據(jù)集上進行研究實驗,算法存在一定的局限性,下一步將增加數(shù)據(jù)的多樣性和復雜性,同時進一步改進網(wǎng)絡結構,提高在復雜工況下的目標檢測精度。

      猜你喜歡
      雜物殘差卷積
      雜物電梯門鎖常見型式及檢驗中存在的問題
      基于雙向GRU與殘差擬合的車輛跟馳建模
      基于3D-Winograd的快速卷積算法設計及FPGA實現(xiàn)
      成品輪胎雜物缺陷的解決措施
      一體式頂雜物盒設計策略
      基于殘差學習的自適應無人機目標跟蹤算法
      基于遞歸殘差網(wǎng)絡的圖像超分辨率重建
      自動化學報(2019年6期)2019-07-23 01:18:32
      從濾波器理解卷積
      電子制作(2019年11期)2019-07-04 00:34:38
      基于傅里葉域卷積表示的目標跟蹤算法
      雜物窒息
      高中時代(2016年4期)2016-06-12 15:56:25
      盐池县| 南岸区| 延边| 济南市| 虎林市| 阜阳市| 洛南县| 中牟县| 新建县| 朝阳市| 灌云县| 永州市| 宿迁市| 建宁县| 沙坪坝区| 子洲县| 南靖县| 和平县| 栖霞市| 林州市| 班戈县| 西平县| 时尚| 惠水县| 博爱县| 武功县| 牙克石市| 石首市| 唐山市| 盘山县| 四会市| 龙江县| 库尔勒市| 孟连| 册亨县| 广平县| 洪湖市| 郸城县| 芷江| 花莲市| 夏津县|