移动扫码阅读
高速精准的煤矸识别是实现煤炭行业智能化发展的关键,对提高采煤和选煤的生产效率至关重要。因此,煤矸识别研究一直是煤炭智能化技术领域的研究重点和热点,关系到煤炭开采技术水平的进一步提升和安全绿色开采的发展[1-2]。
目前煤矸识别技术的研究方向逐渐从煤和矸石的物理性质差异[3-4]转向更简单、直观的视觉差异,其中包括煤和矸石的纹理、灰度差异等手动提取的图像特征[5-9],然后结合机器学习方法进行分类识别的传统图像识别技术,此类方法在实验室的环境中有较高的准确率。由于传统机器学习图像识别方法基于的是手动提取的图像特征,所生成模型的泛化能力较弱。此外,传统机器学习方法的识别速度低,不能满足实际生产需求。后来有学者提出基于迁移学习的深度学习方法进行煤矸识别,能很好地解决传统机器学习泛化能力差的缺点,也相对提高了识别精度[10-11],但是此类方法使用的深度学习网络结构复杂,训练所产生的网络模型参数体积庞大,实际运行时所要求的设备较为昂贵,所以投入到实际生产环境中仍存在很多困难。
针对以上问题,提出一种识别精度高、速度快且易嵌入到实际生产设备中的轻量型煤矸识别网络模型。深度计算模型轻量化的概念是近些年才逐渐地在深度学习领域中被提出来,深度学习的概念刚开始盛行时,研究人员为了训练出精度更高的模型,使网络模型从开始的只具有简单卷积的LeNet[12]结构,到采用并联卷积模块化的Inception[13-15],最后研究出可使得网络深度大幅度提升的ResNet[16-17]模块,而对应的深度学习网络从开始只含有8层卷积计算的LeNet[12]到如今有269层ResNetSt_269[18]的深度网络模型。伴随着网络深度和复杂度的递增,对应的模型精度也得到了很大的提升,尤其在图像识别方面,一些网络的识别效果已经超过了人类的识别能力。虽然深度网络的表征能力随着深度和复杂度提升得到了很大的加强,但是随之也带来了诸多的实际应用问题。例如采用常规深度网络训练所得的网络参数体积通常会占用几百兆甚至上千兆的内存,这对于嵌入到内存只有几十兆的嵌入式设备中是非常困难的,这也是基于Inception模块迁移学习的煤矸识别分类网络没有很好地应用到实际生产环境中的主要原因[10]。为应对深度计算模型高复杂网络结构和参数体积庞大所带来的实际应用问题,Google公司于2017年针对边缘计算中的嵌入式设备和移动设备所提出的MobileNet[19-20]网络模型很好地解决了常规深度网络结构无法嵌入到实际生产环境中的这一问题。该网络通过使用深度可分离卷积来替代常规的卷积运算,在损失很小精度的前提下,使得整个网络的参数大幅度下降。MobileNet从2017年提出到现在已经发展到了第3个版本,得益于注意力机制模块对网络表征能力的提升,使得MobileNetV3相比前2个版本的网络结构更加简单,识别精度同时也得到较大的提升。通过对文献的查阅得知目前尚未有针对煤和矸石实际应用所进行研究的深度识别模型,所以考虑使用轻量级的MobileNet模型对煤和矸石的图像识别进行研究。但当直接将MobileNetV3应用于煤矸识别时,发现该模型不能很好地应对实际生产的复杂环境。因此,笔者将以MobileNetV3-large为基础特征网络骨架,将原MobileNetV3中的SE(Squeeze and excited block)[21]模块替换为CBAM(Convolutional Block Attention Module)模块[22]。该模块在原SE注意力机制的基础上对通道信息提取操作添加了全局最大池化,弥补了仅使用全局平均池化操作所带来的部分信息丢失的问题。除对模型结构进行改进之外,还对图像增强技术进行了调整,不同于以往研究人员对煤和矸石采用图像增强技术使得图像特征信息更加清晰化,对参与训练的数据集采用了较为复杂的图像变换增强技术以及背景噪声增强,以此提升深度网络的学习难度,达到提升网络对煤和矸石复杂图像信息表征能力的目的,进而实现提升网络模型的鲁棒性。
MobileNetV3网络也是一种CNN网络,但其结构完全打破了传统卷积的计算方式,该网络主要由MobileNetV3模块所组成,包括深度可分离卷积层、点卷积层、逆残差块和通道注意力SE[21]模块,结构如图1所示。
图1 MobileNetV3结构
Fig.1 MobileNetV3 structure
由图1可知,MobileNetV3模块能够大幅降低计算量以及参数体积,主要依靠深度卷积层(Depthwise Convolution Layer)和点卷积层(Pointwise Convolution Layer)组成的深度可分离卷积运算。此外,V3中将一个点卷积层放置在整个MobileNetV3模块最前端,即Linear bottleneck结构,该结构能够解决邻近模块输入位置相邻的深度卷积核个数受限的问题。假设MobilenetV3模块输入特征图为Finput∈RHin×Win×Cin,其中Hin,Win,Cin分别为特征图的高,宽以及通道数量,传统卷积运算中的卷积核可表示为K∈RHk×Wk×Cin×N,其中Hk,Wk,Cin分别为卷积核的宽,高以及通道数量,而N为卷积核的数量,即输出特征图的高和宽分别为Hout,Wout,通道数量为N的特征图Foutput∈RHout×Wout×N。另外假设结构中的点卷积核为KPC∈R1×1×Cin×N,其中N同样为输出Foutput通道数,这就是解决输入层相邻的深度可分离卷积核个数受限的关键操作。然后深度卷积计算的卷积核为KDC∈RHk×Wk×Cin,其中卷积核的维度大小与传统卷积相同,不同的是深度卷积的输出通道大小与输入相同,即将输入特征图拆分后,在各个通道维度进行卷积计算。最后就可以得到传统卷积运算中的计算量C和S参数大小,以及使用深度卷积与点卷积的计算量Cd和参数容积Sd,可用式(1)—式(4)表示。
(1)
(2)
(3)
(4)
由上可知,在计算量上减少了CdC-1=N-1+(Hk+Wk)-1,而在参数大小上来说SdS-1=N-1+(HkWk)-1,因此每一次进行深度可分离卷积运算相对传统卷积运算节约出(N-1+(HkWk)-1)的计算量和参数体积,那么对于整个网络来说计算量和参数容量将会被极大地缩减,这也是MobileNetV3被广泛作为嵌入实际生产应用中的深度学习网络框架的主要原因。
虽然经过以上的卷积操作可以极大地缩减计算量和参数大小,但在一定程度上损失了识别的精度,所以MobileNetV3中引入了SE模块,该模块的主要作用是增强通道信息量,提高网络的表征能力,虽然相对来说精度有一定的提高,但是难以应对煤矸识别的复杂环境。为此,在SE的基础上改进并加入改进后的注意力机制,进一步提升网络在特征提取的表征能力,提升其应对煤矸复杂工作环境的能力。
最后是引入反残差模块(Inverted Residual)结构,反残差结构与传统残差网络不同的地方在于使用残差模块的深度网络结构模块输出特征图的尺寸,使用反残差网络的输出特征图大小与输入特征图尺寸相同,整个MobileNetV3网络结构如纺锤状,中间大两边小。反残差网络结果的好处是可以让深度网络在保证特征提取过程中参数计算量的前提下,充分利用残差网结构对网络的搜索能力提升的优点,从而有效地提升深度网络的可训练性。
为了进一步提高MobileNetV3对煤和矸石图像的表征能力,进而提升识别精度,在原MobileNetV3模块的注意力机制模块上进一步完善。由于原SE模块中只对通道信息进行全局平均池化的操作,会导致一些显著信息的丢失,因此,本文引入了通道信息的全局最大池化操作。同时将原框架中SE模块更换为CBAM(Convolutional Block Attention Module)模块,因为除通道信息外,空间信息同样可以对卷积网络的表征能力有很大的提升[23],最终形成MobileNetV3-CBAM结构如图2所示。
图2 CBAM结构
Fig.2 CBAM structure
由图2可知,假设输入到通道注意力模块的特征图为Finput∈RH×W×C,其中H,W,C分别为特征图的高,宽和通道数量;uc∈RH×W×1为特征图的第c∈RC个通道中的二维特征图像,uh,w∈R1×1×C为任意1个(h,w)(h∈RH,h∈RW)坐标在通道维度上的向量值;Fc∈RH×W×C为通道注意力模块的输出,Fs∈RH×W×C为空间注意力模块的输出,Foutput∈RH×W×C为整个注意力模块的输出;那么模块对输入的特征图数据的处理过程总结如所示:
(5)
(6)
(7)
(8)
(9)
其中,和分别为某个通道的(h,w)的二维图像数据的全局平均池化和全局最大池化操作,用于提取通道信息,而和分别为两种池化操作后所输出的两种通道信息向量。γ作为隐藏层的缩减因子,用来减少模型建立过程中的计算量,σrelu和σsigmoid分别为对非线性关系建模过程中全连接层的Relu和Sigmoid的激活函数,而W0和W1为对应全连接层的权重参数。通道注意力模块通过池化操作提取通道信息,然后对通道信息进行关系建模,最后将两种经过非线性变换后的通道信息相加并与输入的特征图按通道维度进行融合,这样就可以对特征图中每个通道中的特征信息进行增强。完成融合通道信息的特征图再传入到空间注意力模块进行下一步操作,过程如下所示:
(10)
(11)
(12)
(13)
(14)
其中,和分别为在特征图的像素点(h,w)处顺着通道维度所得到的大小为(1,1,C)的向量进行全局平均池化和全局最大池化操作输出的空间信息值;而和为对整个特征图(h,w)进行2种池化操作后的空间信息二维信息;f7×7为对连接后空间信息进行关系建模的卷积核,对应的σsigmoid是对应的卷积核的Sigmoid非线性变换激活函数。最后将输出的空间信息与从通道注意力模块输出的特征图进行加权,形成整个CBAM的输出特征图。将MobileNetV3结构中SE模块替换为CBAM模块后形成了MobileNetV3-CBAM模块,构建煤矸识别网络模型MobileNetV3-large-CBAM。
本次试验图像数据的采集样品均来自河北省峰峰集团万年矿区,所选择的样本共含有煤和矸石各200个,另外图像采集设备使用的是Gopro hero 7 Black和大疆灵眸action运动相机。
能否训练出一个稳定高效的深度识别网络模型取决于训练数据规模的大小,而煤或矸石在不同角度的视觉差异特点使得试验时可采集到大量优质的图像训练数据。即使如此也要防止在拍摄过程中因旋转过度或重复翻转所导致采集到相同视觉效果的图像,为避免上述问题采用2种方式:①在样品选择方面选择形状差异较大的样品,尽量避免因样品本身的视觉相似所导致的图像相似;②在图像采集过程中对样品旋转起始角度和已翻转面进行标记,除此之外还会通过调整背景中的煤粉分布的量来控制样品背景信息的差异。通过上述方式进行图像数据采集,可以从400个煤和矸石样品采集出约26 000张质量较好的图像数据。其中煤的图像数据为15 000张,矸石的为11 000张,最后将全部数据进行随机划分,其中包括19 000张训练集数据,3 000张验证集数据以及3 000张测试集数据,至此完成所有图像数据的采集。相对较多的图像数据,但在煤和矸石的复杂生产环境中所采集的图像数据,无法很好地包含所有煤和矸石在所处环境中导致的复杂像素信息,所以需要采用图像增强技术对图像中的颜色、位置等进行调整,也可以达到对数据集进一步扩增的目的。
在进行网络训练之前,针对煤和矸石图像的位置或色彩信息进行图像增强操作,来减少识别模型对目标对象的位置和环境色彩等因素的敏感度,使得网络能够训练出更加适应复杂生产环境中煤和矸石识别的深度识别模型。试验中所采取的图像增强方式包括随机翻转、灰度增强,对比度以及饱和度增强等,增强效果如图3所示。
图3 图像增强效果
Fig.3 Effection of image augmentatio
本次试验对改进后的模型训练所采用的平台为Ubuntu18.04,计算环境为内存16 GB的Tesla V100 GPU,所使用的深度学习框架为MxNet。模型训练的参数初始化设定如下,其中输入图像大小固定为224,迭代周期为100次,通过理论及试验分析,最终确定了学习率初始值为0.1,学习率衰减周期为4,衰减率为0.5,而权重衰减率为0.000 5,最后网络的初始化方式采用了MSRA,该方法可以更好配合网络中的PRelu激活函数,可以有效抵抗网络训练过程中出现的梯度消失的情况。
学习率0.1学习率衰减比例0.5学习率衰减周期4权重衰减率5×10-4网络初始化参数方法MSRA输入图像大小224
通过将训练完成的模型参数载入网络中对含有2 600张图像的测试数据集进行预测,查看预测结果来判断模识别模型的效果,下面列举出预测结果的前10个图像,如图4所示,其中预测输出中包括2个类别煤(coal)和矸石(gangue),位于图像上部的标签中第1行是真实标签,第2行为预测标签。从识别数据和结果中可以看到,模型的识别效果是比较好的,对于一些人眼都难以识别的图像依旧可以准确地识别出图像属于煤还是矸石。
图4 模型预测结果
Fig.4 Results of model prediction
为探究MobileNet模型改进的效果,试验中同时对原模型中的MobileNetV3结构在训练集上进行训练,通过对比MobileNetV3-large网络模型和改进后模型MobileNet-large-CBAM的训练过程中训练准确率和验证准确率的变化曲线,以及2个网络框架训练产生的模型的准确率、召回率、参数体积大小以及识别速度等方面来分析,对应的2种变化曲线如图5和图6所示。
图5 MobileNet-large-SE模型的训练准确率和验证准确率训练变化曲线
Fig.5 Training accuracy rate and verification accuracy rate training change curve of MobileNetV3-large
图6 MobileNet-large-CBAM模型的训练准确率和验证准确率训练变化曲线
Fig.6 Training accuracy rate and verification accuracy rate training change curve of MobileNetV3-large-CBAM
其中图5为采用了SE注意力模块的原模型,图6为改进后采用CBAM注意力模块的分类模型。
从图5、图6中可以清晰地看到2个模型在随着训练轮次的推进不断地变化,从变化趋势上来看,前期的验证准确度波动都较为剧烈,这是由于2个模型没有采用预训练权重,同时前期的学习率较高所引起的。但是由图5、图6中可以看到在经过50次迭代之后,2个模型的验证精度曲线都逐渐地趋向于平稳,所以从训练过程来说,CBAM模块的引入没有增加新网络模型的训练难度。另外从训练结果可以看到,图6所显示引入了CBAM改进后的模型的验证精度相比图5中原模型的95.4%提升了2.3%,达到了97.7%。最后从2种模型对应的验证准确率和训练准确率曲线的相对位置可以看到,当训练轮次进入平稳期之后,改进后模型中的验证准确率曲线,即图6中的红色曲线一直位于训练准确率的上方,而图5中的训练精度位于验证精度上面,由此可以得知,对于同样采用了人工噪声增强的训练集,改进后的模型具有更好的特征学习能力,对验证集中未知数据分布的泛化效果更好。
由表1中可以看到,CBAM注意力机制模块引入之后所形成的新网络模型的参数体积相比原模型只有几百字节的增大,所带来的识别精度和召回率提升却是明显有效的,而从识别速度角度观察,排除因试验设备所带来的数据读取所消耗的时间分析,新模型和原始模型识别速度相比没有发生明显的变化。另外对于煤和矸石识别的应用场景来说,模型精度直接反映了模型识别的准确度,而召回率则是反映模型识别的结果中被正确分类的样本比例,所以从实际应用角度出发,模型应具有“查得准,查得全”的优点。综合以上所有试验结果数据可得知,改进后的模型相比原模型更能够适应煤和矸石的实际生产环境。
表1 煤矸石识别模型性能对比
Table 1 Performance comparison of coal and gangue recognition model
模型注意力模块参数体积/Bytes识别速度-GPU/(2 500张·s-1)识别速度-CPU/(2 500张·s-1)准确率/%召回率/%MobileNetV3-largeSE16 934 36324.37209.7895.495.8MobileNetV3-large-CBAMCBAM16 939 16724.51220.6497.797.8
1)提出一种轻量级深度识别网络进行研究,目的是为了有效避免传统机器学习方法在煤矸识别中的泛化能力差的问题,以及一般深度学习框架因参数体积过大难以嵌入使用的实际问题。
2)通过对轻量型网络结构进行改进,并且在训练过程中采用多种图像相关的增强技术,从而实现了网络性能的提升。通过试验结果数据对比可知,改进后的模型相比原模型在识别精度和召回率都有较大的提升,对应的网络结构复杂度和参数体积只有较小的增加,并且改进后的网络训练难度和识别速度与原轻量型网络基本持平。
3)综合以上对比结果,可以得知新模型更适合在未来作为煤和矸石的智能化选拣和开采任务识别算法。此外,未来可进一步细分煤和矸石的类别,将MobileNetV3-CBAM模型扩展到对含有多目标煤和矸石图像的在线检测模型,以实际生产为设计目标,实现可嵌入使用的轻量型深度目标检测模型,进一步地推进自动化选煤技术的发展。
[1] 许永祥,李申龙,王国法,等.特厚坚硬煤层超大采高综放首采工作面智能化技术[J].煤炭科学技术,2020,48(7):186-194.
XU Yongxiang, LI Shenlong, WANG Guofa, et al. Intelligent technology of first mining face with super large mining height in extra thick and hard coal seam [J]. Coal Science and Technology,2020,48(7):186-194.
[2] 曹现刚,费佳浩,王 鹏,等.基于多机械臂协同的煤矸分拣方法研究[J]. 煤炭科学技术,2019,47(4):7-12.
CAO Xian’gang, FEI Jiahao, WANG Peng, et al. Study on coal gangue sorting method based on multi manipulator coordination [J]. Coal Science and Technology, 2019,47(4):7-12.
[3] 张锦仁.选煤技术的现状及发展趋势探索[J]. 内蒙古煤炭经济,2020(6):194.
ZHANG Jinren. Present situation and development trend of coal preparation technology [J]. Inner Mongolia Coal Economy,2020(6):194.
[4] 孔 力,李 红,徐 琦,等.基于双能γ射线的煤、矸石区域分割识别方法[J]. 华中理工大学学报,1998,24(1):39-40,62.
KONG Li, LI Hong, XU Qi,et al. Coal and gangue region segmentation and recognition method based on dual energy gamma ray[J]. Journal of Huazhong University of Technology,1998,24(1):39-40,62.
[5] 张 朴,孔 力,黄心汉. 基于双能γ射线的煤矸在线识别模型研究[J]. 工业仪表与自动化装置,2000(2):53-55.
ZHANG Pu, KONG Li, HUANG Xinhan. Study on coal gangue online identification model based on dual energy gamma ray[J]. Industrial Instrument and Automation Device,2000(2):53-55.
[6] 廖阳阳. 基于BP网络和图像处理的煤矸石的动态识别[J]. 工业控制计算机,2015,28(7):119-120.
LIAO Yangyang. Dynamic identification of Coal Gangue Based on BP network and image processing[J]. Industrial Control Computer,2015,28(7):119-120.
[7] 吴开兴,宋 剑. 基于灰度共生矩阵的煤与矸石自动识别研究[J]. 煤炭工程,2016,48(2):98-101.
WU Kaixing, SONG Jian. Research on automatic identification of coal and Gangue Based on gray level co-occurrence matrix[J]. Coal Engineering,2016,48(2):98-101.
[8] 谭春超. 基于图像处理技术的煤矸识别与分选技术研究[D]. 太原:太原理工大学,2017.
TAN Chunchao. Research on coal gangue identification and separation technology based on image processing technology[D].Taiyuan:Taiyuan University of Technology,2017.
[9] 余 乐. 一种煤和矸石识别的新方法[J]. 现代计算机(专业版),2017(17):66-70.
YU Le. A new method of coal and gangue image recognition[J]. Modern Computer(Professional Edition),2017(17):66-70.
[10] 沈 宁,窦东阳,杨 程,等.基于机器视觉的煤矸石多工况识别研究[J]. 煤炭工程,2019,51(1):120-125.
SHEN Ning, DOU Dongyang, YANG Cheng, et al. Research on coal gangue multi condition recognition based on machine vision[J]. Coal Engineering,2019,51(1):120-125.
[11] 曹现刚,薛祯也. 基于迁移学习的GoogLenet煤矸石图像识别[J]. 软件导刊,2019,18(12):183-186.
CAO Xiangang, XUE Zhenye. Image recognition of Googlenet coal gangue based on transfer learning[J]. Software Guide,2019,18(12):183-186.
[12] LECUN Y, BOTTOU L, BENGIO Y,et al. Gradient-based lear-ning applied to document recognition[J]. Proceedings of the IEEE,1998,86(11):2278-2324.
[13] SZEGEDY C,LIU W, JIA Y,et al.Going deeper with convol-utions[J]. Computer Vision and Pattern Recognition,2015:1-9.
[14] SZEGEDY C, VANHOUCKE V, IOFFE S,et al. Rethinking the inception architecture for computer vision[J]. Computer Vision and Pattern Recognition,2016:2818-2826.
[15] SZEGEDY C, IOFFE S,Vanhoucke V,et al. Inception-v4, inception-resnet and the impact of residual connections on learning[J]. National Conference on Artificial Intelligence,2016:4278-4284.
[16] HE K M, ZHANG X Y, Ren S Q, et al. Deep Residual Learning for Image Recognition, June 27-30,2016 [C]. Las Vegas: IEEE Xplore,2016.
[17] HE K M, ZHANG X Y, REN S Q, et al. Identity Mappings in Deep Residual Networks[EB/OL].[2021-02-20]. https://link.springer.com/chapter/10.1007%2F978-3-319-46493-0_38.
[18] HANG Z, WU C R, ZHANG Z Y, et al. ResNeSt:split-attention network[EB/OL].[2021-02-20]. https://github.com/Steven9402/ResNeSt.
[19] HOWARD A, ZHU M L, CHEN B, et al. MobileNets: efficient convolutional neural networks for mobile vision applications[EB/OL].[2021-02-20]. https://arxiv.org/abs/1704.04861.
[20] SANDLER M, HOWARD A, ZHU M L, et al. MobileNetV2: Inverted Residuals and Linear Bottlenecks, June 18-23,2018 [C]. Salt Lake City:IEEE Xplore,2018.
[21] HU JIE, LI SHEN, ALBANIE S,et al.Squeeze-and-Excitation Networks[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,2020,42(8):2011-2023.
[22] WOO S, PARK J, LEE J, et al. CBAM. Convolutional Block Attention Module[EB/OL].[2021-02-20]. https://link.springer.com/chapter/10.1007/978-3-030-01234-2_1#citeas.