秦宇龍, 程繼明, 任一個(gè), 王曉晴, 趙青, 安翠娟
(1.北京科技大學(xué) 自動(dòng)化學(xué)院,北京 100083;2.煤炭科學(xué)技術(shù)研究院有限公司,北京 100013)
煤礦在綜采過程中會(huì)產(chǎn)生大塊煤,過大的煤塊會(huì)導(dǎo)致帶式輸送機(jī)的出煤口堵塞,進(jìn)而造成槽內(nèi)積煤過多、煤體溢流、輸送鏈磨損等危害,嚴(yán)重威脅煤礦生產(chǎn)安全[1-2]。因此,對(duì)帶式輸送機(jī)上大塊煤進(jìn)行實(shí)時(shí)精準(zhǔn)檢測,可降低帶式輸送機(jī)發(fā)生故障的風(fēng)險(xiǎn),保障煤礦生產(chǎn)安全并提高生產(chǎn)效率。
傳統(tǒng)的煤塊檢測方法通常需要人工提取煤塊的顏色、紋理等特征,該過程消耗人力物力,且效率較低。張渤等[3]通過OpenCV對(duì)圖像進(jìn)行預(yù)處理,再進(jìn)行灰度化操作和閾值分割,去除背景部分,對(duì)輸送帶上運(yùn)動(dòng)的煤塊進(jìn)行標(biāo)記,實(shí)現(xiàn)了大塊煤檢測。然而,煤礦生產(chǎn)中的復(fù)雜場景和多變工況使得傳統(tǒng)方法往往無法實(shí)現(xiàn)較高的檢測精度,且在處理大規(guī)模數(shù)據(jù)集時(shí),人工提取特征容易引入誤差。近年來,隨著人工智能發(fā)展,基于深度學(xué)習(xí)的煤塊檢測方法得到大量研究[4],其中YOLO系列模型[5]在煤塊檢測場景應(yīng)用廣泛。杜京義等[6]提出了融入Canny算子的大塊煤檢測方法,降低了煤塊邊緣檢測誤差,有效統(tǒng)計(jì)了大塊煤數(shù)量。葉鷗等[7]提出了一種融合輕量級(jí)網(wǎng)絡(luò)和雙重注意力機(jī)制的改進(jìn)YOLOv4模型,通過引入MobileNet輕量級(jí)網(wǎng)絡(luò)模型,并嵌入具有雙重注意力機(jī)制的卷積塊注意模塊,提高了煤塊檢測精度和速度。沈科等[8]在YOLOv5s模型中嵌入自校正卷積(Self-Calibrated Convolutions,SCConv),提高了檢測實(shí)時(shí)性。張旭輝等[9]通過改進(jìn)YOLOv5s模型檢測輸送帶上的煤塊,再通過DeepSORT跟蹤實(shí)現(xiàn)煤塊滯留和堵塞行為異常識(shí)別。高凱等[10]將YOLOv5主干網(wǎng)絡(luò)中殘差模塊替換為遞歸門控卷積模塊(Recursive Gated Convolution Block,GnBlock),提取高階語義特征,并加入注意力機(jī)制提高模型對(duì)煤塊邊緣特征的敏感度,從而提高煤塊檢測精度。
然而井下環(huán)境復(fù)雜,存在高粉塵、低光照的特點(diǎn),且大塊煤和普通煤塊在外形和顏色上的差異較小,煤塊間存在遮擋和堆疊的情況,現(xiàn)有方法對(duì)大塊煤與普通煤塊的區(qū)分不夠精確,容易出現(xiàn)漏檢或誤檢。本文在YOLOv5模型中引入并行空洞卷積模塊和聯(lián)合注意力模塊,提出了一種改進(jìn)YOLOv5模型,并與PLC聯(lián)動(dòng)示警,實(shí)現(xiàn)對(duì)帶式輸送機(jī)上大塊煤的精準(zhǔn)檢測。
帶式輸送機(jī)大塊煤檢測方法原理如圖1所示。首先,利用5G礦用攝像儀采集煤礦帶式輸送機(jī)的輸煤視頻,并進(jìn)行抽幀和數(shù)據(jù)預(yù)處理,獲得樣本圖像;其次,對(duì)樣本圖像進(jìn)行標(biāo)注(僅標(biāo)注大塊煤),構(gòu)建大塊煤檢測的訓(xùn)練集、驗(yàn)證集、測試集;然后,對(duì)改進(jìn)YOLOv5模型進(jìn)行訓(xùn)練,保存訓(xùn)練結(jié)果最優(yōu)的權(quán)重文件;最后,利用訓(xùn)練好的改進(jìn)YOLOv5模型對(duì)攝像儀采集的實(shí)時(shí)輸煤視頻進(jìn)行檢測,存儲(chǔ)大塊煤的位置和數(shù)量信息并上傳數(shù)據(jù)庫,實(shí)時(shí)聯(lián)動(dòng)PLC示警。
圖1 煤礦帶式輸送機(jī)大塊煤檢測原理Fig.1 Detection principle of large coal blocks in coal mine belt conveyor
YOLOv5是一種基于深度神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測與定位模型,其主要由輸入端(Input)、骨干網(wǎng)絡(luò)(Backbone)、頸部(Neck)、頭部(Detection Head)4個(gè)部分組成。骨干網(wǎng)絡(luò)采用CSPDarknet結(jié)構(gòu),對(duì)傳統(tǒng)Darknet結(jié)構(gòu)進(jìn)行了優(yōu)化,提高特征提取能力。頸部包括特征金字塔網(wǎng)絡(luò)(Feature Pyramid Networks,F(xiàn)PN)和路徑聚合網(wǎng)絡(luò)(Path Aggregation Network,PAN),以提高不同尺度特征的表達(dá)能力[11];頸部采用CSP(Cross Stage Partial)結(jié)構(gòu),有助于提升模型的表達(dá)能力和檢測精度[12]。頭部的3個(gè)分支分別負(fù)責(zé)處理不同尺度的特征圖。
為提取更多底層的多尺度特征輔助判斷[13],對(duì)YOLOv5模型進(jìn)行改進(jìn),如圖2所示。將骨干網(wǎng)絡(luò)中第3個(gè)和第5個(gè)普通卷積模塊CBS(由卷積、歸一化函數(shù)和激活函數(shù)組成)替換為并行空洞卷積模塊DCBS3(由3個(gè)并行的空洞卷積、歸一化函數(shù)和激活函數(shù)組成),并在頸部特征融合過程中加入2個(gè)聯(lián)合注意力模塊DCTR(由空洞卷積和注意力模塊組成)。
圖2 改進(jìn)YOLOv5模型Fig.2 Improved YOLOv5 model
1.2.1 并行空洞卷積模塊
煤炭運(yùn)輸過程中的大塊煤與普通煤塊的主要區(qū)別是體積大小。由于帶式輸送機(jī)長度較長,在獲取圖像時(shí),遠(yuǎn)處的煤塊在圖像中的橫截面積較小,難以判斷是否為大塊煤,所以需要加強(qiáng)多尺度特征學(xué)習(xí)。普通卷積無法很好地識(shí)別多尺度特征,因此,提出了并行空洞卷積模塊,結(jié)構(gòu)如圖3所示(圖中k為卷積核大小;s為卷積步長;d為空洞卷積(ConvD)的膨脹率)。通過拼接3個(gè)不同膨脹率的空洞卷積特征,得到圖像的多尺度信息,擴(kuò)大感受野[14],有效區(qū)分大塊煤和普通煤塊,提高模型精度。
圖3 并行空洞卷積模塊結(jié)構(gòu)Fig.3 Structure of parallel dilated convolution module
空洞卷積通過在卷積核元素之間加入一些空洞(補(bǔ)充零)來擴(kuò)大卷積核,在擴(kuò)大感受野的同時(shí)不丟失空間分辨率[15]。空洞卷積的實(shí)際卷積核大小為
空洞卷積的感受野為
式中:Tl+1為第l+1層空洞卷積的感受野;si為第i(i=1,2,···,l,l為空洞卷積層數(shù))層空洞卷積的步長。
并行空洞卷積模塊中,輸入特征圖x先通過膨脹率分別為1,2,4的空洞卷積。
式中:Fd為膨脹率為d的空洞卷積的輸出特征向量;δ(·)為SiLU激活函數(shù);h(·)為歸一化函數(shù);fCDd(·)為膨脹率為d的空洞卷積操作。
之后對(duì)相同大小的特征向量進(jìn)行特征拼接,并通過線性卷積(Conv)保持特征維度不變,得到豐富的多尺度信息。
式中:ycd為并行空洞卷積模塊輸出的特征圖;fC(·)為普通卷積操作;g(·)為特征拼接操作。
1.2.2 聯(lián)合注意力模塊
煤塊間的堆疊、遮擋等現(xiàn)象會(huì)導(dǎo)致大塊煤難以識(shí)別,加入注意力機(jī)制可增強(qiáng)模型上下文感知能力及對(duì)大塊煤的定位能力[16-19]。但注意力機(jī)制長距離結(jié)構(gòu)可能導(dǎo)致信息遺漏,且煤塊形狀不規(guī)則導(dǎo)致檢測難度大,因此可通過結(jié)合空洞卷積來擴(kuò)大感受野,獲取更全面的特征信息。對(duì)原始的C3模塊進(jìn)行改進(jìn),加入空洞卷積和注意力機(jī)制構(gòu)建聯(lián)合注意力模塊,結(jié)構(gòu)如圖4所示。輸入特征圖依次通過空洞卷積和殘差模塊(Bottleneck)得到空洞卷積分支輸出,并行通過注意力模塊(Transformer)得到注意力分支輸出,2個(gè)分支的輸出拼接后通過卷積得到輸出特征圖。
圖4 聯(lián)合注意力模塊結(jié)構(gòu)Fig.4 Structure of joint attention module
殘差模塊包含2個(gè)普通卷積模塊和1個(gè)殘差連接,空洞卷積分支輸出為
注意力模塊包含多頭注意力層和多層感知器層[20]。多頭注意力層輸出為
式中:α(·)為Softmax激活函數(shù);Q為查詢矩陣;K為鍵矩陣;nK為鍵矩陣K的維度;V為值矩陣。多層感知器層輸出為
式中:β(·)為ReLU激活函數(shù);W1,W2為感知器權(quán)重;c1,c2為感知器偏置。
聯(lián)合注意力模塊輸出的特征圖為
通過多次實(shí)驗(yàn)發(fā)現(xiàn),當(dāng)帶式輸送機(jī)上出現(xiàn)超過3塊大塊煤時(shí)幾乎無法避免堵塞,因此根據(jù)帶式輸送機(jī)上大塊煤數(shù)量制定合理的PLC聯(lián)動(dòng)示警策略,流程如圖5所示。檢測到大塊煤后,根據(jù)大塊煤數(shù)量分為0塊、1塊、2塊、大于2塊4種情況,由本地計(jì)算機(jī)進(jìn)行邏輯判斷并向PLC發(fā)送信號(hào)指令;之后,PLC對(duì)輸出端口完成相應(yīng)的置位和復(fù)位操作,連接在PLC輸出端口的繼電器指示燈則相應(yīng)點(diǎn)亮(根據(jù)大塊煤數(shù)量亮起不同數(shù)量的繼電器指示燈),達(dá)到3塊大塊煤時(shí)蜂鳴器報(bào)警。
圖5 PLC聯(lián)動(dòng)示警流程Fig.5 Flow of PLC linkage alarm
GPU為NVIDIA RTX 3090;操作系統(tǒng)為Ubuntu 22.04;開源框架為PyTorch;顯卡為Cudnn 8.2,Cuda 11.3;PLC為CPU 1214C。
2.2.1 數(shù)據(jù)來源
模擬平臺(tái)數(shù)據(jù)集:基于實(shí)驗(yàn)室的帶式輸送機(jī)模擬平臺(tái),利用KBA12(5G)礦用本安型攝像儀采集帶式輸送機(jī)輸煤視頻。對(duì)采集的17個(gè)視頻進(jìn)行抽幀,對(duì)原圖像進(jìn)行預(yù)處理,最終獲得800張分辨率為1 024×768的樣本圖像。按照7∶2∶1的比例劃分?jǐn)?shù)據(jù)集,隨機(jī)選取560張樣本圖像作為訓(xùn)練集,160張樣本圖像作為驗(yàn)證集,剩余80張樣本圖像作為測試集。
煤礦井下數(shù)據(jù)集:采集國能神東煤炭集團(tuán)有限責(zé)任公司上灣煤礦實(shí)際帶式輸送機(jī)輸煤過程的視頻。井下作業(yè)時(shí)光照條件較差、輸送帶運(yùn)行速度較快,獲得的樣本圖像較為模糊。經(jīng)過預(yù)處理后,得到140張分辨率為1 024×1 024的樣本圖像,并按照8∶2的比例劃分為訓(xùn)練集和驗(yàn)證集。
2.2.2 圖像預(yù)處理
1) 圖像裁剪。帶式輸送機(jī)僅占樣本圖像的一部分區(qū)域,背景包含較多無關(guān)因素。為去除無關(guān)背景、突出目標(biāo)區(qū)域,對(duì)樣本圖像進(jìn)行裁剪。
2) 圖像增強(qiáng)。通過自適應(yīng)Gamma校正方法對(duì)樣本圖像每個(gè)像素點(diǎn)的亮度進(jìn)行自適應(yīng)調(diào)整,改善樣本圖像的亮度和對(duì)比度。
為驗(yàn)證模型性能,使用精確率、召回率、平均精度作為評(píng)價(jià)指標(biāo)。
精確率P表示被正確檢測出的大塊煤數(shù)量占所有檢測為大塊煤數(shù)量的比例,召回率R表示被正確檢測出的大塊煤數(shù)量占樣本中實(shí)際大塊煤數(shù)量的比例。
式中:NTP為被正確檢測出的大塊煤數(shù)量;NFP為誤檢的大塊煤數(shù)量;NFN為沒有被檢測出的大塊煤數(shù)量。
交并比閾值設(shè)置為0.5時(shí)檢測的平均精度為
式中P(R)為精確率-召回率曲線。
為驗(yàn)證改進(jìn)YOLOv5模型引入并行空洞卷積、聯(lián)合注意力機(jī)制的效果,在原始YOLOv5模型基礎(chǔ)上增加不同模塊,利用模擬平臺(tái)數(shù)據(jù)集進(jìn)行消融實(shí)驗(yàn),結(jié)果見表1??煽闯雠c原始YOLOv5模型相比,僅加入并行空洞卷積模塊進(jìn)行多尺度特征學(xué)習(xí)后,精確率、召回率、平均精度分別提升0.1%,2.6%,0.9%;僅加入聯(lián)合注意力模塊后,精確率、召回率、平均精度分別提升0.5%,1.6%,0.3%;2種模塊均加入后,精確率、召回率和平均精度分別提升0.2%,3.4%,2.0%。
表1 消融實(shí)驗(yàn)結(jié)果Table 1 Results of ablation experiments
為進(jìn)一步驗(yàn)證本文改進(jìn)YOLOv5模型性能,在模擬平臺(tái)數(shù)據(jù)集上與經(jīng)典模型Faster R-CNN和其他改進(jìn)YOLOv5模型進(jìn)行對(duì)比,結(jié)果見表2??煽闯雠cYOLOv5模型相比,F(xiàn)aster R-CNN模型召回率和平均精度更低,且檢測速度明顯更慢;文獻(xiàn)[8]由于優(yōu)化了YOLOv5模型的頸部并刪除了頸部和頭部的1個(gè)特征分支,檢測速度有所提升,但對(duì)大塊煤檢測的召回率提升較?。晃墨I(xiàn)[10]和本文由于在YOLOv5模型的頸部加入注意力機(jī)制,增大了計(jì)算量,導(dǎo)致檢測速度有所下降,但檢測精度均有所提升,尤其本文提出的改進(jìn)模型精度提升更加明顯。
表2 不同模型性能對(duì)比結(jié)果Table 2 Performance comparison results of different models
本地計(jì)算機(jī)上部署本文改進(jìn)YOLOv5模型,對(duì)攝像儀采集的視頻進(jìn)行實(shí)時(shí)檢測,獲得帶式輸送機(jī)上大塊煤數(shù)量,并向PLC發(fā)送信號(hào)指令,由PLC控制繼電器執(zhí)行相應(yīng)操作,結(jié)果如圖6所示。檢測到只有1塊大塊煤時(shí),亮起1個(gè)指示燈,進(jìn)行提示;檢測到2塊大塊煤時(shí),亮起2個(gè)指示燈,進(jìn)行警告;檢測到3塊及以上大塊煤時(shí),3個(gè)指示燈均亮起,進(jìn)行報(bào)警。
圖6 PLC聯(lián)動(dòng)示警結(jié)果Fig.6 Results of PLC linkage alarm
為驗(yàn)證改進(jìn)YOLOv5模型的泛化性,在煤礦井下數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),不同模型檢測精度對(duì)比結(jié)果見表3,可看出本文改進(jìn)YOLOv5模型檢測精度最高。
表3 不同模型檢測精度對(duì)比結(jié)果Table 3 Precision comparison results of different models
實(shí)際場景檢測結(jié)果如圖7所示??煽闯鲈糦OLOv5模型和YOLOv5+GnBlock模型出現(xiàn)了漏檢,YOLOv5+SCConv模型出現(xiàn)了誤檢,而本文改進(jìn)YOLOv5模型有效避免了漏檢和誤檢現(xiàn)象。
圖7 實(shí)際場景檢測結(jié)果Fig.7 Detection results of actual scene
1) 為提升大塊煤檢測精度,對(duì)YOLOv5模型進(jìn)行改進(jìn),在骨干網(wǎng)絡(luò)引入并行空洞卷積模塊以擴(kuò)大感受野、提高多尺度特征學(xué)習(xí)能力,并在頸部引入聯(lián)合注意力模塊來提高對(duì)大塊煤的定位能力。
2) 實(shí)驗(yàn)結(jié)果表明,改進(jìn)YOLOv5模型的召回率、平均精度相對(duì)于原始YOLOv5模型分別提高了3.4%,2.0%,且有效避免了大塊煤漏檢和誤檢現(xiàn)象。