蔡秀凡,謝金辰
(1.神馬實(shí)業(yè)股份有限公司簾子布公司,河南 平頂山 467000;2.西安科技大學(xué) 通信學(xué)院,陜西 西安 710600)
矸石是在成煤過(guò)程中與煤層伴生的黑灰色巖石,開采出的煤炭中難免會(huì)夾雜有矸石成分。矸石含量過(guò)高不僅會(huì)使煤炭商品價(jià)值降低,還會(huì)造成煤炭燃效效率低下,嚴(yán)重污染環(huán)境;同時(shí),矸石在帶式輸送機(jī)轉(zhuǎn)載過(guò)程中容易造成膠帶破損,產(chǎn)生安全隱患[1]。矸石具有密度大、發(fā)熱量小的特性,主要成分包括:二氧化硅、三氧化二鐵、氧化鈣等氧化物和微量稀有元素[2]。
對(duì)于煤矸石檢測(cè)方法的研究,國(guó)外起步稍早于國(guó)內(nèi),目前比較有代表性的方法有:射線法、光譜探測(cè)法以及圖像識(shí)別等[3]??琢4]等提出中、低雙能γ射線透射法煤矸石在線識(shí)別與分選系統(tǒng)。光譜探測(cè)法的原理是由于煤和矸石的光譜差異大,并以此區(qū)分二者;申利飛[5]等人提出了基于加權(quán)方差的煤矸石X射線圖像分形維數(shù)最優(yōu)估計(jì)方法,仿真結(jié)果表明,采用該方法進(jìn)行煤矸石X射線圖像分形維數(shù)估計(jì)的精度較高,提高了煤矸石X射線圖像的識(shí)別和檢測(cè)能力。宋亮[6]等提出聯(lián)合分析可見-近紅外和熱紅外光譜通過(guò)兩次分類實(shí)現(xiàn)煤與矸石區(qū)分。Hobson D[7]等人研究發(fā)現(xiàn)在煤矸石圖像中,兩者的灰度和紋理特征存在差異,從而可達(dá)到識(shí)別的效果。Tripathy D[8]等人提出將灰度共生矩陣運(yùn)用于提取煤矸石圖像特征,將提取到的5種紋理特征與顏色相結(jié)合,最后通過(guò)神經(jīng)網(wǎng)絡(luò)進(jìn)行識(shí)別和分類。丁澤海等人[9]通過(guò)計(jì)算煤矸石圖像的灰度直方圖,從中提取灰度均值和標(biāo)準(zhǔn)差指標(biāo),研究發(fā)現(xiàn),煤炭的灰度均值明顯小于矸石的灰度均值,因此可以作為煤矸分選的依據(jù)。吳景濤[10]等利用灰度共生矩陣提取煤矸石圖像的角二階矩、相關(guān)性、對(duì)比度和熵4種紋理特征,并以此作為支持向量機(jī)的識(shí)別依據(jù)進(jìn)行分類。余杰[11]提出將煤巖圖像進(jìn)行多尺度分解并結(jié)合灰度共生矩陣的方式進(jìn)行特征抽取,最后通過(guò)SVM和改進(jìn)的BP神經(jīng)網(wǎng)絡(luò)進(jìn)行分類?;莺槌琜12]在前人對(duì)于特征提取的基礎(chǔ)上采用基于權(quán)值剪枝的神經(jīng)網(wǎng)絡(luò)壓縮策略,并運(yùn)用稀疏矩陣進(jìn)行存儲(chǔ)和運(yùn)算,提高了識(shí)別網(wǎng)絡(luò)的速度。煤礦實(shí)地調(diào)研結(jié)果表明,射線法所需設(shè)備系統(tǒng)昂貴,并且射線對(duì)人體有害;光譜探測(cè)法的系統(tǒng)復(fù)雜、步驟繁多;傳統(tǒng)的圖像識(shí)別法需要人工設(shè)計(jì)提取特征,識(shí)別的準(zhǔn)確率依賴設(shè)計(jì)者的算法和經(jīng)驗(yàn)[13]。
自2012年以來(lái)以卷積神經(jīng)網(wǎng)絡(luò)為代表的深度學(xué)習(xí)算法在圖像識(shí)別領(lǐng)域展示出強(qiáng)大的潛力,現(xiàn)在已在各個(gè)行業(yè)得到了廣泛應(yīng)用[14],計(jì)算機(jī)視覺(jué)領(lǐng)域的技術(shù)也不斷發(fā)展成熟,大量針對(duì)圖像處理方向的學(xué)者將特征提取工作向卷積神經(jīng)網(wǎng)絡(luò)模型轉(zhuǎn)型,抽象特征數(shù)據(jù)通過(guò)卷積神經(jīng)網(wǎng)絡(luò)也能夠自主獲取[15],單鵬飛等人[16]提出改進(jìn)的Faster R-CNN模型、郜亞松[17]提出的將Mobile Net v3與YOLOv3相結(jié)合,以及來(lái)文豪[18]等人提出的將多光譜成像與改進(jìn)的YOLOv4相結(jié)合的目標(biāo)檢測(cè)模型均能夠在煤矸石檢測(cè)和分類的任務(wù)中均有較好的效果。本文通過(guò)在手選膠帶處搭建視頻采集系統(tǒng),對(duì)煤矸傳送中圖像大量采集后進(jìn)行基于深度學(xué)習(xí)的煤矸圖像的識(shí)別,通過(guò)特征卷積提取的方法,及改進(jìn)算法克服了小塊物體無(wú)法識(shí)別的問(wèn)題,最終將圖像識(shí)別系統(tǒng)在手選膠帶上進(jìn)行系統(tǒng)測(cè)試。
在煤礦手選膠帶處實(shí)地采集煤矸石圖像作為訓(xùn)練集,初篩后剩余煤炭圖像800張,矸石圖像550張,煤和矸石混合圖像500張。
獲得數(shù)據(jù)集后,需要對(duì)其進(jìn)行標(biāo)準(zhǔn)化處理,包括統(tǒng)一尺寸、圖像增強(qiáng)、格式統(tǒng)一等。其中,圖像增強(qiáng)是為了增強(qiáng)圖中的重要信息,減弱或除去某些不需要的信息,首先采用中值濾波器去噪,然后采用Gamma變換提升暗部細(xì)節(jié),輸出圖像的灰度值:
式中,Vin為輸入圖像的灰度值;A為系數(shù),一般取值為1;γ為Gamma變換值,通過(guò)取值不同對(duì)圖像達(dá)到不同的處理結(jié)果。
不同的圖像采集設(shè)備獲取的圖像格式和尺寸存在差異;當(dāng)圖像尺寸不斷變大時(shí),模型學(xué)習(xí)量增大,但是當(dāng)圖像尺寸過(guò)小時(shí),又會(huì)丟失掉原圖中的一些細(xì)節(jié)信息,所以需要統(tǒng)一圖像的尺寸和格式。將圖像裁剪到適合的尺寸送入模型訓(xùn)練,并通過(guò)Labeling標(biāo)注數(shù)據(jù)集生成VOC格式。經(jīng)過(guò)對(duì)比,將圖像尺寸固定在512×512能夠保留煤矸石圖像的細(xì)節(jié)信息。原始圖像與經(jīng)過(guò)上述處理后的圖像效果如圖1所示??梢钥吹?,處理后的圖像效果更好,暗部更為清晰。
圖1 煤矸石圖像標(biāo)準(zhǔn)化
由于深度學(xué)習(xí)對(duì)于數(shù)據(jù)集數(shù)量要求很大,還需要對(duì)標(biāo)準(zhǔn)化處理后的煤矸石數(shù)據(jù)集進(jìn)行擴(kuò)充;目前數(shù)據(jù)增強(qiáng)的方法主要有:翻轉(zhuǎn)、旋轉(zhuǎn)、縮放、平移[19]等;本文在傳統(tǒng)數(shù)據(jù)增強(qiáng)手段的基礎(chǔ)上,采用基于深度卷積生成對(duì)抗網(wǎng)絡(luò)(DCGAN)的數(shù)據(jù)集擴(kuò)充方法,最終達(dá)到煤矸石數(shù)據(jù)集量大且標(biāo)準(zhǔn)的要求。DCGAN由生成器G、判別器D兩部分組成,其核心思想是通過(guò)G和D相互競(jìng)爭(zhēng),最終達(dá)到納什平衡[20]。DCGAN的訓(xùn)練過(guò)程如圖2所示。生成器輸入隨機(jī)噪聲,經(jīng)過(guò)不斷反卷積(fractional-strided convolution)過(guò)程,最終生成圖像;判別器則相反,輸入圖像經(jīng)過(guò)不斷卷積提取特征進(jìn)行判別,經(jīng)過(guò)全連接層處理后通過(guò)sigmoid函數(shù)輸出圖像的真假概率。
圖2 DCGAN訓(xùn)練過(guò)程
DCGAN的損失函數(shù)采用的是交叉熵?fù)p失函數(shù),生成器G與判別器D的優(yōu)化目標(biāo)可以表示為:
Ez~pz(z)[lg(1-D(G(z))]
(2)
式中,Ex~pdata(x)為真實(shí)數(shù)據(jù)分布的數(shù)學(xué)期望;Ez~pz(z)為輸入噪聲數(shù)據(jù)分布的數(shù)學(xué)期望;D(G(z))、D(x)為分別為判別器判別生成數(shù)據(jù)與真實(shí)數(shù)據(jù)的概率。
由于生成器最終的目的是達(dá)到以假亂真的程度,此時(shí)D(G(z))應(yīng)盡可能的大(理想值為1),而D的目標(biāo)是鑒別能力達(dá)到最強(qiáng),此時(shí)D(G(z))應(yīng)盡可能的小(理想值為0)。由于V(G,D)是連續(xù)的,將其寫成積分形式:
設(shè)生成器G(z)生成的數(shù)據(jù)是x,定義輸入噪聲z的生成分布為pg(x),則:x=G(z)?z=G-1(x)?dz=(G-1)'(x)dx、pg(x)=pz(G-1(x))(G-1)'(x);將其代入(3)式中,同時(shí)固定生成器G,對(duì)判別器D進(jìn)行優(yōu)化,整理后可得到判別器D的最優(yōu)解函數(shù):
式中,pdata(x)為真實(shí)數(shù)據(jù)的分布;pg(x)為生成數(shù)據(jù)的分布。
此時(shí)D已經(jīng)取得最優(yōu)解,即D*(x)=0.5,現(xiàn)對(duì)G調(diào)整,尋求G的最優(yōu)解,經(jīng)過(guò)化簡(jiǎn)和等效代換后,引入JS散度得:
由此可知生成器網(wǎng)絡(luò)的最小值為-lg4,G和D均達(dá)到了最佳狀態(tài),證明DCGAN訓(xùn)練方法可行。
DCGAN模型訓(xùn)練過(guò)程中的損失函數(shù)變化折線如圖3所示,經(jīng)過(guò)前5000次迭代,生成器的損失值較低,此時(shí)生成器能夠仿照真實(shí)數(shù)據(jù)生成相類似的圖像;鑒別器的損失值也在不斷下降;在5000次迭代后,兩個(gè)損失值整體趨于平衡但局部是在不斷震蕩變化,表明生成器的輸出數(shù)據(jù)并不穩(wěn)定,此時(shí)生成器與鑒別器在相互制約、競(jìng)爭(zhēng),最終為了達(dá)到納什平衡。
圖3 基礎(chǔ) DCGAN 模型訓(xùn)練損失函數(shù)變化
圖像擴(kuò)充基于Pytorch框架,所有的實(shí)驗(yàn)與訓(xùn)練評(píng)估是在計(jì)算機(jī)配置為系統(tǒng):win10 64-bit、處理器:Core i5-9300HF 2.40GHz上進(jìn)行的,實(shí)驗(yàn)IDE使用的是Pycharm 2020.3;實(shí)驗(yàn)中用到的python庫(kù)有:Torch 1.2、numpy 1.19.5、opencv 4.5.1.48。最終生成圖像如圖4所示。經(jīng)過(guò)傳統(tǒng)圖像擴(kuò)充以及DCGAN擴(kuò)充后,數(shù)據(jù)集共包含5550張煤矸石圖像,其中煤炭圖像2100張,矸石圖像2450張,混合圖像1000張。
圖4 DCGAN生成圖像
在原有的數(shù)據(jù)集基礎(chǔ)上進(jìn)行擴(kuò)充標(biāo)準(zhǔn)化后可送入后續(xù)的目標(biāo)檢測(cè)模型進(jìn)行訓(xùn)練;本文采用YOLOv4目標(biāo)檢測(cè)模型;YOLO系列以其檢測(cè)速度著名,能夠滿足本課題實(shí)時(shí)檢測(cè)的需求,YOLO網(wǎng)絡(luò)結(jié)構(gòu)由24個(gè)卷積層與2個(gè)全連接層構(gòu)成,YOLOv4是在v3的基礎(chǔ)上從數(shù)據(jù)預(yù)處理、骨干網(wǎng)絡(luò)、特征融合、網(wǎng)絡(luò)訓(xùn)練方法、激活函數(shù)、損失函數(shù)等方面做出一系列改進(jìn);YOLOv4首先通過(guò)骨干特征提取網(wǎng)絡(luò)提取輸入圖像的特征,然后將圖像劃分為s×s的網(wǎng)格,每個(gè)單元格負(fù)責(zé)檢測(cè)中心落入網(wǎng)格的目標(biāo),骨干網(wǎng)絡(luò)中選取三個(gè)檢測(cè)通道進(jìn)行特征融合操作,分別對(duì)應(yīng)大、中、小三個(gè)尺寸的目標(biāo)物體。由于YOLO系列對(duì)于小目標(biāo)物體檢測(cè)存在固有的缺陷,而本課題實(shí)驗(yàn)環(huán)境中經(jīng)常會(huì)出現(xiàn)小塊煤矸石,因此提出分別對(duì)骨干網(wǎng)絡(luò)結(jié)構(gòu)以及特征融合方法進(jìn)行改進(jìn)。
基礎(chǔ)YOLOv4網(wǎng)絡(luò)選取骨干網(wǎng)絡(luò)中3個(gè)特征層作為檢測(cè)通道,分別對(duì)應(yīng)劃分13×13、26×26以及52×52的網(wǎng)格,而在檢測(cè)圖像中物體的像素低于小尺寸檢測(cè)通道的像素時(shí),就會(huì)發(fā)生漏檢的問(wèn)題。因此,在YOLOv4骨干網(wǎng)絡(luò)的基礎(chǔ)上添加一個(gè)檢測(cè)通道作為檢測(cè)微小物體的特征層。以輸入圖像尺寸416×416為例,最終的4個(gè)檢測(cè)通道特征層尺寸為(13,13,1024)(26,26,512)(52,52,256)(104,104,128)。添加一個(gè)檢測(cè)尺度后的實(shí)驗(yàn)對(duì)比結(jié)果如圖5所示,其中圖5(a)為基礎(chǔ)YOLOv4檢測(cè)結(jié)果,圖5(b)為添加13×13預(yù)測(cè)尺度后的檢測(cè)結(jié)果。
圖5 改進(jìn)YOLOv4網(wǎng)絡(luò)結(jié)構(gòu)
由圖5可知,基礎(chǔ)YOLOv4目標(biāo)檢測(cè)模型存在小目標(biāo)漏檢的問(wèn)題,經(jīng)過(guò)初次改進(jìn),YOLOv4能夠檢測(cè)出尺寸更小的煤矸石,但是檢測(cè)精度與實(shí)際應(yīng)用場(chǎng)景所需精度相差較大,因此,進(jìn)一步在主干網(wǎng)絡(luò)中不同尺度的公共卷積層后加入SE(Squeeze-and-Excitation)注意力機(jī)制,SE模塊用于增加通道維度上的注意力機(jī)制,輔助網(wǎng)絡(luò)為輸入特征圖的不同通道分配不同的權(quán)重,并有效地融合輸入特征圖的不同通道信息,使網(wǎng)絡(luò)學(xué)習(xí)到不同通道特征的重要程度,進(jìn)一步增強(qiáng)網(wǎng)絡(luò)的特征提取能力。SE模塊是通用的,可以很便捷的嵌入到現(xiàn)有的網(wǎng)絡(luò)架構(gòu)中。SE機(jī)制模塊的流程如圖6所示。
圖6 SE模塊結(jié)構(gòu)
式中,H,W分別表示特征圖的高度和寬度;uc表示特征圖的第c個(gè)通道;zc為Squeeze的特征向量;Excitation操作的公式:
s=Fex(z,W)=σ(g(z,W))=σ(W2δ(W1×z))
(7)
式中,W1,W2表示區(qū)分兩次全連接操作;z表示Squeeze操作的輸出;δ,σ分別代表ReLU激活函數(shù)與Sigmoid激活函數(shù)。改進(jìn)后的YOLOv4網(wǎng)絡(luò)結(jié)構(gòu)如圖7所示。
圖7 改進(jìn)YOLOv4網(wǎng)絡(luò)結(jié)構(gòu)
其次,先驗(yàn)框的大小對(duì)于YOLOv4目標(biāo)檢測(cè)非常重要,原始先驗(yàn)框是通過(guò)對(duì)VOC數(shù)據(jù)集進(jìn)行聚類得到的。由于原始VOC數(shù)據(jù)集中的類別數(shù)量較多,大小差異較大,聚類得到的初始錨框也存在較大差異。為了提高實(shí)驗(yàn)的準(zhǔn)確性,采用k-means算法對(duì)自制數(shù)據(jù)集進(jìn)行聚類,并不斷增加聚類中心的數(shù)量。經(jīng)過(guò)多次迭代,得到聚類中心。對(duì)煤矸石數(shù)據(jù)集在圖像中長(zhǎng)寬歸一化處理后的分布,結(jié)果如圖8所示,顏色的深度對(duì)應(yīng)煤矸石的數(shù)量,由圖8可知,數(shù)據(jù)集中小塊煤矸石所占比重較大,根據(jù)此特點(diǎn),采用K-means聚類算法對(duì)初始錨框進(jìn)行處理,設(shè)置4個(gè)聚類中心,生成針對(duì)本課題煤矸石數(shù)據(jù)集的初始錨框參數(shù),用以提高目標(biāo)檢測(cè)模型的精度與速度。經(jīng)過(guò)K-means聚類算法處理后得到的12組初始錨框參數(shù)見表1。
圖8 煤矸石長(zhǎng)寬歸一化分布
表1 K-means聚類算法處理后初始錨框參數(shù)
測(cè)試環(huán)境為煤礦場(chǎng)的手選膠帶處,目標(biāo)檢測(cè)模型的訓(xùn)練及調(diào)試在Win 10操作系統(tǒng)下完成,采用的開發(fā)框架為Pytorch。配件配置為:中央處理器(CPU);圖形處理器(GPU):NVIDIA GTX1660Ti。數(shù)據(jù)集共5550張圖像,按照9∶1劃分為訓(xùn)練集與驗(yàn)證集,同時(shí)采用YOLOv4的Mosaic數(shù)據(jù)增強(qiáng)方法增加數(shù)據(jù)集的豐富性。模型訓(xùn)練參數(shù)參考其他采用YOLOv4算法的參數(shù)設(shè)定,共設(shè)定100個(gè)epoch,權(quán)重衰減系數(shù)為5×10-4,批處理大小為16,lr=1×10-3。
使用基礎(chǔ)YOLOv4對(duì)訓(xùn)練集數(shù)據(jù)完成訓(xùn)練后,對(duì)本實(shí)驗(yàn)煤矸石檢測(cè)結(jié)果的準(zhǔn)確率(Precision)、召回率(Recall)進(jìn)行檢驗(yàn):
準(zhǔn)確率=正確檢測(cè)煤矸石的數(shù)量/(正確檢測(cè)煤矸石的數(shù)量+錯(cuò)誤檢測(cè)煤矸石的數(shù)量)
召回率=正確檢測(cè)煤矸石的數(shù)量/(正確檢測(cè)煤矸石的數(shù)量+漏檢的煤矸石數(shù)量)
共檢測(cè)550張煤矸石圖像,其中共包含840塊煤矸石,檢驗(yàn)結(jié)果如下:正確檢測(cè)煤矸石數(shù)量750,錯(cuò)誤檢測(cè)煤矸石數(shù)量47,漏檢煤矸石數(shù)量43,準(zhǔn)確率94.1%,召回率94.5%。
通過(guò)對(duì)基礎(chǔ)YOLOv4的實(shí)驗(yàn)可以發(fā)現(xiàn),漏檢的基本上都是小塊的煤矸石,與是采用針對(duì)此問(wèn)題的改進(jìn)YOLOv4算法進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)過(guò)程中的各項(xiàng)損失曲線如圖9所示,橫坐標(biāo)表示迭代epoch次數(shù),縱坐標(biāo)分別表示錨框回歸、置信度、分類概率損失值,其值越接近0,表明訓(xùn)練收斂效果越好。
圖9 改進(jìn)YOLOv4的各項(xiàng)損失曲線
圖10 改進(jìn)YOLOv4實(shí)驗(yàn)結(jié)果對(duì)比圖
同樣使用改進(jìn)的YOLOv4算法對(duì)550張煤矸石圖像進(jìn)行檢測(cè),檢驗(yàn)結(jié)果如下:正確檢測(cè)煤矸石數(shù)量791,錯(cuò)誤檢測(cè)煤矸石數(shù)量39,漏檢煤矸石數(shù)量10,準(zhǔn)確率95.3%,召回率98.7%。改進(jìn)后的目標(biāo)檢測(cè)算法克服了基礎(chǔ)算法針對(duì)小塊煤矸石檢測(cè)漏檢的缺陷,在提高小目標(biāo)檢測(cè)精度的同時(shí)也提高了整體的檢測(cè)精度。為了更加清晰地展現(xiàn)添加SE注意力機(jī)制后的改進(jìn)效果,實(shí)驗(yàn)截取兩組結(jié)果進(jìn)行對(duì)比,如圖10所示,圖10(a)為未添加SE注意力模塊檢測(cè)結(jié)果,圖10(b)為添加SE注意力模塊后的檢測(cè)結(jié)果。最終測(cè)試結(jié)果如圖11所示。
圖11 改進(jìn)YOLOv4檢測(cè)結(jié)果
1)針對(duì)煤矸石圖像數(shù)據(jù)集樣本不足,煤和矸石數(shù)量不成比例的問(wèn)題,提出通過(guò)DCGAN模型對(duì)數(shù)據(jù)集進(jìn)行擴(kuò)充,提高煤矸石圖像識(shí)別模型的質(zhì)量與多樣性。
2)針對(duì)YOLOv4目標(biāo)檢測(cè)模型存在對(duì)于小塊煤矸石漏檢的缺陷,提出在主干網(wǎng)絡(luò)中添加一個(gè)檢測(cè)通道用于針對(duì)小目標(biāo)檢測(cè),以及在主干網(wǎng)絡(luò)中不同尺度的公共卷積層后加入SE(Squeeze-and-Excitation)注意力機(jī)制,同時(shí)采用K-means聚類算法生成針對(duì)本文煤矸石圖像的初始錨框參數(shù),最終通過(guò)實(shí)驗(yàn)表明,改進(jìn)的YOLOv4算法能夠克服較小煤矸石目標(biāo)漏檢的問(wèn)題,有效提升了小塊矸石的檢測(cè)精度。
3)通過(guò)深層卷積神經(jīng)網(wǎng)絡(luò)對(duì)煤和矸石進(jìn)行了特征提取,并能較準(zhǔn)確的分類,在光線良好的情況下,排序后的煤矸石檢測(cè)準(zhǔn)確率可以達(dá)到95%以上。基于卷積神經(jīng)網(wǎng)絡(luò)的圖像分類模型,存在對(duì)圖片質(zhì)量,標(biāo)注準(zhǔn)確性的嚴(yán)重依賴,需要隨著訓(xùn)練集的更新不斷更新,否則會(huì)大大降低準(zhǔn)確率,如何形成有效的通用學(xué)習(xí)神經(jīng)網(wǎng)絡(luò),使網(wǎng)絡(luò)能夠自主更新,自適應(yīng)環(huán)境變化,是煤矸分類檢測(cè)下一階段研究重點(diǎn)。