王科平, 連凱海, 楊藝, 費樹岷
(1. 河南理工大學 電氣工程與自動化學院,河南 焦作 454003;2. 河南理工大學 河南煤礦裝備智能檢測與控制重點實驗室,河南 焦作 454003;3. 東南大學 自動化學院,江蘇 南京 210096)
煤炭作為我國最豐富的能源資源,是國家能源安全的“壓艙石”[1-4]。隨著人工智能技術的不斷發展,基于計算機視覺的深度學習算法在提升煤炭開采效率、保障采煤安全及煤炭智能化開采等方面發揮的作用愈發重要[5-9]。目標檢測是計算機視覺技術的重要分支,針對綜采工作面關鍵設備及人員的目標檢測算法,是煤炭智能化開采信息感知的重要內容[10]。
目前,應用于煤礦井下的目標檢測常用算法有傳統目標檢測算法和基于卷積神經網絡(Convolutional Neural Networks,CNN)的目標檢測算法[11]。傳統目標檢測算法通過人工提取特征實現目標檢測,如趙謙[12]提出了一種基于小波分解的Canny 邊緣檢測算法對井下員工進行檢測,程健等[13]針對帶式輸送機視覺場景復雜、視頻圖像質量差等問題,采用改進的高斯混合模型提取視頻背景,實現視頻背景分離,從而實現煤矸石檢測和識別。但上述算法復雜度高,不具有普適性,易受環境影響,且無法適應待檢測目標的大幅度動作,穩定性很差。隨著深度學習的興起,基于CNN 的目標檢測算法被應用到綜采工作面智能化建設中。與傳統目標檢測算法相比,基于CNN 的目標檢測算法可以自適應地提取深層信息,具有泛化能力強、穩定性高等特點。李偉山等[14]以Faster RCNN 為基礎,對候選區域網絡結構進行改進并加入特征融合技術,構建了一種金字塔結構的煤礦井下行人檢測算法。劉備戰等[15]提出了一種具有層級相連結構的RetinaNet 算法,可實現井下人員檢測。付燕等[16]使用YOLOv3 算法設計了一種井下工作人員持續檢測系統。任志玲等[17]提出了一種改進的CenterNet 算法,可對煤礦膠帶運輸異物進行準確識別。但上述算法大多僅針對簡單場景,且檢測目標單一。而綜采工作面常見的是多個檢測目標出現在同一場景,且常伴有煤塵干擾、目標運動、光照干擾等,導致采集的視頻圖像質量較差,檢測精度難以保證;另外,基于CNN 的目標檢測算法大多網絡結構復雜、參數多、計算量大[18],不利于綜采工作面工業部署的實際應用。
本文提出了一種基于改進YOLOv4 的綜采工作面目標檢測算法。為解決井下復雜環境下目標難以檢測問題,在YOLOv4[19]模型基礎上,融合CNN 的高效局部信息聚合能力和殘差自注意力(Residual Self-Attention,RSA)模塊的長距離依賴信息獲取能力,在確保局部上下文信息質量的同時加強全局信息的獲取,增強待檢測目標的顯著度,進而提升檢測精度;為減小綜采工作面目標檢測模型的工業部署難度,引入深度可分離卷積來簡化模型,以減少模型參數量和計算量。
為準確從綜采工作面復雜環境中檢測到所需目標,借鑒Google 提出的BoTNet[20]設計思想,本文提出輕量級改進YOLOv4 模型。該模型主要由特征提取網絡CSPDarkNet53、空間金字塔池化(Spatial Pyramid Pooling,SPP)模 塊、路 徑 聚 合 網 絡(Path Aggregation Network,PANet)模塊構成,結構如圖1所示(Conv 為卷積,dw 為深度可分離卷積,Conv_dw_ Conv 表示分別進行卷積、深度可分離卷積、卷積操作)。特征提取網絡CSPDarkNet53 融合了RSA 模塊,在提取局部特征的同時增強全局信息獲取 能 力;SPP 模 塊 利 用13×13、9×9、5×5 和1×1 這4 個不同尺度的最大池化對特征進行處理,以增大特征感受野,豐富特征圖表達能力;PANet 模塊引入深度可分離卷積,簡化網絡的同時加強了特征融合,有利于多樣化特征的提取。

圖1 改進YOLOv4 模型結構Fig. 1 Improved YOLOv4 model structure
針對綜采工作面復雜環境,原有CSPDarkNet53網絡僅能捕獲局部信息,無法獲取長距離依賴信息,可能導致網絡提取過多的冗余信息而不能提取到關鍵信息,減弱語義信息和位置信息的依賴關系,進而導致誤檢、漏檢現象產生。RSA 模塊主要通過局部之間的關系來引入權重,分別在通道、空間2 個層面,通過計算每個單元(通道與通道之間、像素與像素之間)的值,來加強局部信息間的聯系,進而掌握長距離依賴信息,從而增強待檢測目標的顯著度。因此,在CSPDarkNet53 中引入RSA 模塊,既可以發揮CNN 參數共享及高效局部信息聚合優勢,又能充分利用自注意力獲取全局信息能力,增強圖像關鍵目標特征表達能力,進而提高特征提取網絡聚集關鍵信息的能力。
RSA 模塊結構如圖2 所示。

圖2 RSA 模塊結構Fig. 2 Residual self-attention module architecture
輸入特征圖經過3 次1×1 逐點卷積進行單點特征提取,分別得到查詢Q、鍵K、值V。Q與K相乘得到局部關系矩陣,并加入垂直、水平位置嵌入矩陣Rh和Rw,分別從垂直、水平2 個方向逐元素求和,之后再與Q交互,得到相對位置編碼Srel,以增強網絡對輸入特征圖位置信息的感知能力。局部關系矩陣與相對位置編碼求和后通過softmax 操作與V相乘,可得
式中:A為自注意力;為超參數,其作用是防止分子向量點積后結果過大,確保softmax 梯度穩定性。
RSA 模塊對輸入特征圖先進行1 次下采樣操作以減小特征圖尺寸,之后將輸入支路分成主分支和短連接分支。主分支的特征圖通過多個由1×1 卷積和自注意力模塊堆疊而成的殘差結構對輸入特征圖進行上下文信息處理和聚合,以獲得融合全局信息的主分支輸出,增強特征表達能力。主分支輸出經過1×1 卷積后與短連接分支的特征圖拼接,得到輸出特征圖。
為了提升網絡檢測性能,引入深度可分離卷積[21]替代傳統卷積,如圖1 中綠色模塊所示。深度可分離卷積通過串聯深度卷積和逐點卷積的方式提取特征信息。先使用深度卷積逐通道獨立進行卷積計算來過濾空間信息,再串聯逐點卷積來映射通道信息。這種將空間信息與通道信息相結合的方式既提取了關鍵特征,又大大減少了計算量和參數量。
傳統卷積是將通道數為M的輸入特征圖與相應的N個卷積核進行卷積操作,其計算量為
式中:Dk為 卷積核大小;Dw,Dh分別為輸出特征圖的寬和高。
深度可分離卷積過程如圖3 所示,將通道數為M的輸入特征圖與相應的M個卷積核進行深度卷積,再用N個1×1 卷積核對深度卷積得到的特征圖進行逐點卷積,其計算量為

圖3 深度可分離卷積操作Fig. 3 Depthwise separable convolution operation
深度可分離卷積與傳統卷積的計算量比值為
本文輸入圖像大小為416×416×3,假設經過通道數為16 的3×3 卷積,最后輸出16 個特征圖,則N2與N1比值約為1∶6。利用深度可分離卷積后,計算量和參數量大幅度減少,提高了特征提取網絡的運算速度,節約了運算成本。
實驗平臺為Ubuntu18.04 操作系統,硬件配置:Intel Xeon Gold 6146 CPU,12 核24 線 程;顯 卡 為6 塊RTX 2080Ti,顯存72 GB;內存250 GB。網絡基于PyTorch 框 架 實 現, 并 調 用OpenCV, CUDA,cuDNN 庫。在網絡訓練過程中,設定輸入圖片尺寸為416×416,訓練輪次為100,1 輪訓練處理16 張樣本圖片,初始學習率為0.001,采用等間隔學習率調整方法(StepLR),設置調整間隔(step_size)為1,動量(momentum) 為0.92, 權 值 衰 減(weight_decay) 為0.000 5。當網絡連續多個訓練輪數(epoch)的損失差值在0.01 以內振蕩時,則完成網絡訓練,得到最優的模型權重。
實驗數據集來自某煤炭開采公司調度室存儲的各個角度攝像視頻,將視頻中包含工作面關鍵設備及人員的選取出來進行剪輯、拼接,使用視覺目標標注工具(Visual Object Tagging Tool,VOTT)對處理過的視頻圖片進行標注處理。
為了使神經網絡模型更好地適應井下工作面復雜環境,數據集涵蓋各種情況下的工作面關鍵設備及人員,包括采煤機、滾筒、線槽、刮板輸送機、大煤塊、護幫板和行人等7 類,共29 569 張圖片。數據集分為訓練集、驗證集及測試集,其中23 951 張圖片用于訓練模型,2 661 張圖片用于驗證模型,2 957 張圖片用于測試模型。
本文采用目標檢測常用的評價指標:平均精度(Average Precision, AP) 、 平 均 精 度 均 值(mean Average Precision,mAP)、參數量、浮點運算次數(Floating-point Operations,FLOPs)和模型大小。AP和mAP 越大,則檢測精度越高;參數量、FLOPs 和模型大小越小,則檢測性能越好。
mAP 與查準率和召回率密切相關。查準率是指在所有正樣本中,被檢測為正確的設備及人員所占比例;召回率是指在所有真實目標中,被模型正確檢測的設備及人員所占比例。
式中:p為查準率;nTP為被檢測為正確目標的關鍵設備及人員數量;nFP為被誤測為正確目標的非關鍵設備及人員數量;r為召回率;nFN為漏檢的樣本數量。
以查準率為橫坐標,召回率為縱坐標,繪制p(r)曲線。該曲線在坐標軸上的面積即AP。
式中PAP為AP。
根據各個類別的p(r)曲線在坐標軸上的面積,求取mAP。
式中:PmAP為mAP;c為工作面關鍵設備及人員的類別數;PAPd為第d(d=1,2,…,c)個類別的AP。
為驗證本文改進YOLOv4 模型的優勢,選取YOLOv3,CenterNet,YOLOv4 這3 種井下常用目標檢測模型與改進YOLOv4 模型進行對比實驗。YOLOv3, CenterNet, YOLOv4 模 型 分 別 使 用DarkNet53,ResNet50,CSPDarkNet53 作為骨干特征提取網絡。
不同模型在井下綜采工作面數據集上的mAP見表1。可看出改進YOLOv4 模型的mAP 最高,達92.59%,且改進YOLOv4 模型在綜采工作面各個關鍵設備及人員上的檢測精度均為最高。

表1 不同模型在井下綜采工作面數據集上的檢測結果Table 1 Test results of different models on data set of underground fully-mechanized mining face
不同模型檢測性能對比見表2。由于改進YOLOv4 模型使用了大量深度可分離卷積結構,使得模型大小、參數量及計算量得到改善。由表2 可知:與YOLOv4 模型相比,改進YOLOv4 模型的大小壓縮了123.1 MB,參數量減少了30.86×106,FLOPs 減少了10.42×109,mAP 提升了1.85%;與CenterNet 模型相比,改進YOLOv4 模型的參數量和模型大小不相上下,但在FLOPs 和mAP 上有較大提升,FLOPs減少了3.66×109,mAP 提升了4.8%;與YOLOv3 模型相比,改進YOLOv4 模型的參數量減少了28.45×106,模型大小壓縮了113.3 MB,FLOPs 減少了13.3×109,mAP 提升了5.68%。上述結果表明改進YOLOv4 模型在參數量、計算量和mAP 上具有更優的平衡。

表2 不同模型檢測性能對比Table 2 Comparison of detection performance of different models
將不同模型在測試集上進行驗證,部分結果如圖4 所示。

圖4 不同模型檢測結果Fig. 4 Detection results of different models
由圖4 可知:第1 組實驗,由于煤塵干擾造成待檢測目標與背景環境灰度值較為接近,導致YOLOv3、CenterNet 及YOLOv4 模型均沒有檢測出行人,而改進YOLOv4 模型可以較好地檢測出目標;第2 組實驗,受光照影響,圖像亮度分布不均勻且場景中包含各個尺寸大小的目標,改進YOLOv4 模型對大中小各個尺度目標的檢測均比YOLOv3、CenterNet 及YOLOv4 模型具有更好的準確性;第3 組實驗,采煤機滾筒高速運動造成獲取的圖像較為模糊,改進YOLOv4 模型相較于其他3 種模型提取到了采煤機的輪廓特征,完整地檢測出了目標。上述結果表明改進YOLOv4 模型能夠在煤塵干擾、光照不均、運動模糊等復雜場景下表現出較好的檢測性能,具有更好的魯棒性。
通過消融實驗進一步驗證改進YOLOv4 模型的有效性,結果見表3。由表3 可知:YOLOv4 模型僅加入深度可分離卷積后,雖然mAP 略有下降,但大大縮減了參數量;增加RSA 模塊后,相較于僅加入深度可分離卷積模塊,mAP 提升了2.34%,相較于YOLOv4 模型參數量降低了約1/2,滿足工業部署的要求。
1) 在YOLOv4 模型CSPDarkNet53 網絡中加入RSA 模塊,在提取局部特征的同時增強了全局信息獲取能力,提升了待檢測目標的顯著度,進而防止多目標在同一場景下誤檢、漏檢現象的發生。
2) 在YOLOv4 模型中引入深度可分離卷積替代傳統卷積,減少了模型參數量和計算量,使得模型輕量化,有利于模型的工業部署。
3) 與YOLOv3,CenterNet,YOLOv4 模型 相比,改進YOLOv4 模型的檢測精度最高, mAP 達92.59%,且在參數量、計算量和mAP 上具有更優的平衡,能夠在煤塵干擾、光照不均、運動模糊等條件下表現出較好的檢測性能。