带式输送机是井下常用的运输设备, 具有持续运输能力强、运行效率高、易于自动控制等优点[1]. 输送带作为带式输送机的核心部件, 在运输过程中会受到钢钎、煤矸石、废金属等硬物划伤造成纵向撕裂影响正常的运输, 如果不能及时发现故障并进行处理, 将会导致巷道堵塞, 甚至造成人员伤亡[2, 3]. 因此, 快速准确地对输送带纵向撕裂故障进行检测至关重要. 然而, 早期的输送带纵向撕裂检测方法以接触式检测为主, 例如: 漏料检测法[4]、浮动托辊检测法[5]、压力检测法[6]等. 该类方法准确度较低且容易受到灰尘干扰, 逐渐被淘汰.
现有的输送带纵向撕裂检测方法以非接触检测方法为主, 包括闭合线圈法[7]、X射线检测法[8]、基于机器视觉的方法与基于深度学习的方法等, 该类方法具有稳定性强的特点, 从而被广泛应用. 其中, 基于机器视觉的方法具有成本低、准确度相对较高、易于维护等特点, 基于深度学习的方法在缺陷检测、损伤检测方面表现出实时性、准确度高等优点. 因此, 这两种方法得到越来越多的关注与研究.
现有的机器视觉方法主要有文献[9]采用红外热图像监测温度变化来识别撕裂, 但是井下输送带撕裂时与外界温度差异较小, 导致该方法失灵. 文献[10]采用基于多道线性激光的带式输送机纵向撕裂检测方法, 但是线形激光条纹被撕裂带的表面调制后, 法线方向发生了很大的变化, 使得提取中心非常困难. 尽管基于机器视觉的方法在输送带纵向撕裂检测上已取得了不错的成绩, 但大多研究仅限于实验室环境, 在实际场景中仍然存在检测精度不足、漏检与误检的问题.
近年来随着深度学习的发展, 深度学习逐渐应用于各行各业, 在工业缺陷检测方面表现出独特的优势. 目前基于深度学习的目标检测算法主要分为两阶段和一阶段方法.
两阶段目标检测算法, 代表算法为RCNN[11]系列, 例如: 文献[12]提出一种有效提取细长路面病害特征的骨干网络用于细长路面病害检测方法. 该类目标检测算法的特点是检测精度较高但是速度较慢, 工业上使用该类方法较少.
一阶段目标检测算法, 代表算法为YOLO[13]和SSD[14]系列, 在保证一定精度的同时具有较强的实时性, 因此工业上更青睐于使用一阶段目标检测算法实现缺陷检测. 相关研究主要有文献[15]采用YOLOv4-tiny算法对输送带纵向撕裂进行检测, 在撕裂较短的情况下检测性能较好, 缺乏对长撕裂检测性能的验证. 文献[16]提出一种融合多尺度特征的工业缺陷检测通用模型, 在热轧钢带和印刷电路板等公开数据集上表现良好. 文献[17]通过在特征金字塔网络中引入残差模块与注意力机制模块, 实现对电子换向器的缺陷检测. 文献[18]通过改进SSD目标检测算法的损失函数以及修改锚框比例, 实现了矿井输送带的异物检测. 基于深度学习的方法相较于传统机器视觉的方法具有更高的检测精度. 然而在实际应用中由于数据量不足、撕裂形态具有多样化、极致的宽高比, 仍然存在漏检率和误检率较高的问题.
1 YOLOv4网络概述YOLOv4网络结构如图1所示, 主要由输入层、主干网络(backbone)层、neck层及预测层4个部分组成, 其中输入层对输入图像进行Mosaic数据增强、大小缩放、自适应锚框聚类便于训练.
Backbone层主要由CSPDarknet53特征提取网络与增加感受野的空间金字塔池化(SPP)模块对输入图像进行特征提取, 并输出不同尺度特征图.
Neck层采用特征金字塔网络 (FPN)与路径聚合网络 (PANet)特征融合方式对backbone阶段输出的不同尺度特征图进行融合, 采用自上而下与自下而上的结构, 以适应检测目标尺度变化.
预测层采用单阶段目标检测中常用的YOLO head分别输出不同大小的特征图, 即76×76, 38×38, 19×19大小的特征图.
最后进行锚框回归, 在特征图的每个地方用3个锚框来对检测目标进行回归, 最后通过非极大值抑制算法进行后处理, 去除冗余检测框, 得到最终的检测结果.
2 数据集构建与增强 2.1 数据集的获取与标注由于输送带纵向撕裂并没有公开的数据集, 因此本文使用某公司提供的煤矿井下输送带下表面红外真实图像, 图片规格为2048×2000, 共有未标注图像2000张. 对所有数据进行清洗并建立输送带纵向撕裂数据集, 采用Labelme软件进行标注, 标注过程如图2所示.
2.2 数据增强为了提高模型的泛化性能, 增加样本数据是最好的一种方法, 由于输送带纵向撕裂数据较为稀缺, 通过Mosaic、翻转与随机移动实现撕裂位置的多样性、对比度调整模拟不同光照条件下的损伤图像、拉伸原有撕裂图像区域以模拟不同损伤长度下的图像, 丰富现有数据, 增加训练样本. 图3给出了图像增强的一些样本.
2.3 数据集划分
数据增强之后, 共得到6866张输送带图像, 其中撕裂图像与背景图像比例为1:1, 随机抽取5488张图像作训练集、689张图像作验证集、689张图像作测试集. 训练集和验证集参加模型的训练与调参, 测试集不参与训练, 最终在测试集上评测模型的整体性能.
3 改进YOLOv4的输送带纵向撕裂检测 3.1 模型的网络结构输送带纵向撕裂的损伤形态具有多样化, 如图4所示, 但现有数据量不足, 对于每种损伤形式的覆盖不全, 对于一些特殊损伤形式检测性能较差. 在CSPDarknet53网络结构中使用的均为传统的CNN卷积, 但传统的CNN卷积核使用固定尺寸、固定大小的方形卷积核, 对于输送带未知损伤形态的几何变换建模能力较差. 为了降低损伤形态多样化对模型检测精度的影响, 在主干网络中添加可变形卷积, 提升模型的建模能力.
另一方面, 由于输送带纵向撕裂长短不一, 且在水平与垂直方向尺寸差别较大, 无法单纯的定义检测目标为大目标小目标. 因此更有效的特征融合对输送带纵向撕裂检测尤为重要. 为了更好地检测不同大小目标, 在特征融合阶段, 添加跨阶段部分网络改进的残差模块以增强特征融合, 提升网络检测性能. 改进后模型的整体结构如图5所示, 虚线框内即为改进的部分.
3.2 基于可变形卷积改进的主干网络可变形卷积(DCN)[19]主要是通过在原有卷积的基础上添加一个偏移变量, 使卷积计算的采样点发生偏移, 从而更好地适应检测目标形态的变化, 整体结构如图6所示.
在规则的3×3卷积核, 每个位置的单位坐标则可定义为
$ Y\left( {{p_0}} \right) = \mathop \sum \limits_{{p_n} \in P} w\left( {{p_n}} \right)\cdot x\left( {{p_0} + {p_n}} \right) $ | (1) |
其中,
可变形卷积在普通卷积的基础上, 将通道数为
$ Y\left( {{p_0}} \right) = \mathop \sum \limits_{{p_n} \in P} w\left( {{p_n}} \right)\cdot x\left( {{p_0} + {p_n} + \vartriangle {p_n}} \right) $ | (2) |
如图4所示, 输送带撕裂形态差异较大, 使用固定尺寸、固定大小的普通方形卷积核, 多层卷积之后会引入无用的上下文区域特征干扰特征提取, 从而导致网络检测性能下降. 而可变形卷积, 通过偏移量的学习与采样点的偏移, 可以减少对无用区域特征的提取, 增强模型学习复杂目标不变性的能力, 提升网络形变建模能力, 从而提高检测精度.
因此, 本文在YOLOv4的backbone层的最后两个CSPn下采样模块中添加可变形卷积, 增强主干网络的形变建模能力, 从而提升网络对输送带不同损伤形态的检测性能, 改进后的CSPn结构如图7所示.
3.3 基于跨阶段局部网络改进的残差模块
卷积网络中的特征图往往具有很大的冗余性, 不同通道的特征图可能包含相似的信息, 因此, 无需处理全部的通道数, 就可以保证在性能不变的前提下, 削减计算量, 使网络更加高效地利用特征信息.
跨阶段局部网络(CSPNet)[20]就是通过分割梯度流, 使梯度流通过不同的网络路径传播, 在减少计算量的同时, 实现更丰富的梯度组合. 在普通的DenseNet结构[21]中每一个堆叠层的输出都将成为第
$ {x_k} = {w_k}*\left[ {{x_0}, {x_1}, \cdots , {x_{k - 1}}} \right] $ | (3) |
其中, *表示卷积运算, 括号内表示前
$ w'_1= f({w_1}, {h_0})x $ | (4) |
$ w'_2= f({w_2}, {h_0}, {h_1}) $ | (5) |
$ \vdots $ |
$ w'_{k - 1} = f({w_{k - 1}}, {h_0}, {h_1}, \cdots, {h_{k - 2}}) $ | (6) |
$ w'_k = f({w_k}, {h_0}, {h_1}, \cdots , {h_{k - 2}}, {h_{k - 1}}) $ | (7) |
其中,
在此基础上引入跨阶段局部网络, 整体结构如图8所示, 将上层输出的特征映射拆分通道, 其中
$ {x_k} = {w_k}*[x''_0, {x_1}, \cdots, {x_{k - 1}}] $ | (8) |
其中, xk输出后再经过一个卷积层得到:
$ {x_a} = {w_a}*[x''_0, {x_1}, \cdots, {x_k}] $ | (9) |
最后
$ {x_b} = {w_b}*[x'_0, {x_a}] $ | (10) |
整体权重更新过程如下:
$ w'_k = f({w_k}, h''_0, {h_1}, {h_2}, \cdots, {h_{k - 1}}) $ | (11) |
$ w''_a = f({w_a}, h''_0, {h_1}, {h_2}, \cdots, {h_k}) $ | (12) |
$ w'_b = f({w_b}, h'_0, {h_a}) $ | (13) |
其中,
本文主要CSP结构中的稠密块替换为残差块, 构建图10中的CSPRes模块, 实现对FPN与PANet特征融合的增强, 丰富梯度组合的同时减少参数冗余, 降低输送带水平与垂直方向大小差异对检测性能的影响.
4 实验结果与分析 4.1 实验环境及参数设置
本文实验硬件环境为: Intel(R) Core(TM) i9-11900K CPU, NVIDIARTX 3090独立显卡. 软件环境为: Ubuntu 20.04 LTS操作系统, PyTorch深度学习框架版本为1.7.1, OpenCV-Python等相关工具包.
实验超参数设置为初始学习率0.01, 动量0.937, 权重衰减系数为0.0005, 采用余弦退火策略, 预热训练轮数为3, 预热训练的梯度动量为0.8, 预热训练的偏置学习率为0.1, 训练epoch设置为300.
4.2 评价指标实验采用精确率(precision, P)、召回率(recall, R)、平均精度均值(mAP)与F1指标作为评价标准来评估网络的整体性能. 同时, 采用每秒浮点运算次数(FLOPS)、参数量(params)来统计模型的计算量与参数量, 最后采用FPS指标来评估模型的实时性. 其中精确率、召回率的计算公式如式(14)、式(15)所示:
$ P = \frac{{TP}}{{TP + FP}} $ | (14) |
$ R = \frac{{TP}}{{TP + FN}} $ | (15) |
其中, TP、TN、FP、FN的含义如下:
TP表示真正的正类样本预测为正类样本的个数.
TN表示真正的正类样本预测为负类样本的个数.
FP表示真正的负类样本预测为正类样本的个数, 即误检的个数.
FN表示真正的正类样本预测为负类样本的个数, 即漏检的个数.
由式(14)、式(15)可以得知, 精确率越高相应模型的误检率越低, 召回率越高相应的漏检率越低, 因此本文采用精确率和召回率来反映模型的误检率与漏检率.
平均精度均值、F1指标的计算公式如式(16)、式(17)所示:
$ mAP = \frac{{\displaystyle\sum\nolimits_{i = 1}^N {\int_0^1 {P(R)dR} } }}{N} $ | (16) |
其中, N为类别个数.
$ F1 = \frac{{2 \times {{P}} \times {{R}}}}{{P + {{R}}}} $ | (17) |
经过300个epoch的训练, 模型精度、召回率、平均精度均值趋于稳定, 总体损失曲线如图11所示. 通过观察验证集的损失函数曲线, 模型达到收敛, 图12展示模型训练中的目标损失曲线、回归损失曲线与各项检测指标.
对SSD、YOLOv3、YOLOv4-tiny、YOLOv4模型训练与测试, 在测试集上的对比结果如表1所示, 实验结果表明, YOLOv4算法相较其他算法, 具有更好的检测性能与速度, 因此本文选择YOLOv4作为基线网络进行改进. 本文算法相较于其他算法, F1指标均提升了1.2%–3.8%, 精确率与召回率相对较高, 检测速度达到58.8 帧/s, 满足矿用输送带纵向撕裂在线检测速度要求. 表明本文算法在实时检测的同时具有更低的漏检误检率, 更好的平衡了模型的检测速度与检测性能, 体现了本文算法的优势.
为了验证本文模块的有效性, 对本文算法的改进模块进行消融实验, 实验结果如表2、表3所示, 表2实验结果表明, 本文算法所提出的模块, 有效提升了检测性能, 更好地平衡了精度与召回率, 其中F1指标达到93.1%, 精度达到92.5%, 相较于初始基线网络分别提升1.2%, 1.7%. 基本满足工业检测中输送带纵向撕裂检测要求, 证明本文算法中提出的模块对检测精度具有重要的提升作用, 漏检率和误检率更低.
表3实验结果表明, 在加入CSPn-d模块以后, 增加了计算量与参数量, FPS指标明显降低, 此时, 引入跨阶段局部网络改进的残差模块, 一定程度上对网络模型的计算量、参数量与检测速度进行平衡, 在满足实时检测速度的前提下, 相较于基线网络计算量减少了10%, 参数量减少了5%, 验证了该模块的作用.
图13选取了7组测试集图片, 用不同的模型对其进行检测, 其中图13(a)–图13(c)分别表示原图标注、YOLOv4检测结果、本文算法检测结果. 实验结果表明本文算法相较于YOLOv4, 具有更低的漏检率和误检率, 且置信度更高, 检测框更接近真实标注框, 验证了本文算法的有效性.
5 结论与展望
本文提出一种基于YOLOv4进行改进的输送带纵向撕裂检测算法, 通过对现有数据进行增强与扩充, 丰富了数据集, 提升了模型的泛化性能. 同时, 在主干网络的最后两个CSP模块中使用可变形卷积替换普通卷积, 提升模型的特征提取能力与几何建模能力. 最后, 在特征融合阶段引入跨阶段局部网络, 增强特征融合能力. 实验结果表明, 改进的YOLOv4检测算法在输送带纵向撕裂检测任务中可以有效提高检测精度、降低漏检和误检的概率, 且满足实时检测要求. 下一步的工作是在保证检测精度的基础上, 减少参数量与计算量, 实现网络模型轻量化, 以便于矿用小设备的模型部署.
[1] |
张安宁, 孙宇坤, 尹中会. 带式输送机防纵撕保护研究现状及趋势. 煤炭科学技术, 2007, 35(12): 77-79. DOI:10.3969/j.issn.0253-2336.2007.12.023 |
[2] |
Che J, Qiao TZ, Yang Y, et al. Longitudinal tear detection method of conveyor belt based on audio-visual fusion. Measurement, 2021, 176: 109152. DOI:10.1016/j.measurement.2021.109152 |
[3] |
曹成, 金林, 赵娜娜. 矿用带式输送机纵向撕裂检测方法研究. 煤炭工程, 2010(2): 85-86, 89. DOI:10.3969/j.issn.1671-0959.2010.02.033 |
[4] |
王广丰, 钟海娜. 输送机胶带纵向撕裂防护与监测. 矿山机械, 2005, 33(8): 73-75. |
[5] |
杨庆宏, 张安宁, 陶选. 带式输送机输送带纵向撕裂保护装置的研究. 煤矿机械, 2006, 27(7): 139-140. DOI:10.3969/j.issn.1003-0794.2006.07.059 |
[6] |
游春霞, 张申. 新型输送带纵向撕带监测系统的设计. 煤炭科学技术, 2010, 38(8): 89-92, 96. DOI:10.13199/j.cst.2010.08.95.youchx.019 |
[7] |
童敏明, 汪博, 蒋昌龙, 等. 新型矿井输送机输送带纵向撕裂检测方法. 煤矿机械, 2013, 34(10): 191-193. DOI:10.13436/j.mkjx.2013.10.098 |
[8] |
荣锋, 苗长云, 徐伟. 强力输送带X光无损检测仪的研制. 光学 精密工程, 2011, 19(10): 2393-2401. |
[9] |
Yang RY, Qiao TZ, Pang YS, et al. Infrared spectrum analysis method for detection and early warning of longitudinal tear of mine conveyor belt. Measurement, 2020, 165: 107856. DOI:10.1016/j.measurement.2020.107856 |
[10] |
徐辉, 刘丽静, 沈科, 等. 基于多道线性激光的带式输送机纵向撕裂检测. 工矿自动化, 2021, 47(7): 37-44. DOI:10.13272/j.issn.1671-251x.17681 |
[11] |
Girshick R, Donahue J, Darrell T, et al. Rich feature hierarchies for accurate object detection and semantic segmentation. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Columbus: IEEE, 2014. 580–587.
|
[12] |
许慧青, 陈斌, 王敬飞, 等. 基于卷积神经网络的细长路面病害检测方法. 计算机应用, 2022, 42(1): 265-272. |
[13] |
Redmon J, Divvala S, Girshick R, et al. You only look once: Unified, real-time object detection. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas: IEEE, 2016. 779–788.
|
[14] |
Liu W, Anguelov D, Erhan D, et al. SSD: Single shot multibox detector. Proceedings of the 14th European Conference on Computer Vision. Amsterdam: Springer, 2016. 21–37.
|
[15] |
张梦超, 周满山, 张媛, 等. 基于深度学习的矿用输送带损伤检测方法. 工矿自动化, 2021, 47(6): 51-56. DOI:10.13272/j.issn.1671-251x.2021040010 |
[16] |
何思锐, 张孙杰, 王永雄. 融合多尺度特征的工业缺陷检测模型. 小型微型计算机系统, 1–7. http://kns.cnki.net/kcms/detail/21.1106.TP.20220227.1653.002.html. (2022-02-28)[2022-07-04].
|
[17] |
周宣, 沈希忠. 基于多模型级联的轻量级缺陷检测算法. 电子测量技术, 2022, 45(7): 125-130. DOI:10.19651/j.cnki.emt.2108625 |
[18] |
Wang YB, Wang YJ, Dang LF. Video detection of foreign objects on the surface of belt conveyor underground coal mine based on improved SSD. Journal of Ambient Intelligence and Humanized Computing, 2020, 1-10. DOI:10.1007/s12652-020-02495-w |
[19] |
Dai JF, Qi HZ, Xiong YW, et al. Deformable convolutional networks. Proceedings of the IEEE International Conference on Computer Vision. Venice: IEEE, 2017. 764–773.
|
[20] |
Wang CY, Liao HYM, Wu YH, et al. CSPNet: A new backbone that can enhance learning capability of CNN. Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops. Seattle: IEEE, 2020. 1571–1580.
|
[21] |
Huang G, Liu Z, van der Maaten L, et al. Densely connected convolutional networks. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Honolulu: IEEE, 2017. 2261–2269.
|