基于深度学习的煤矿钢丝绳缺损检测方法研究
2023-11-21刘晓磊吴国群
刘晓磊,吴国群,阚 哲
(1.晋能控股煤业集团,山西 大同 036000;2.中煤科工集团沈阳研究院有限公司,辽宁 沈阳 113112;3.辽宁石油化工大学 信息控制工程学院,辽宁 抚顺 113001)
由于矿井内工作环境恶劣以及钢丝绳长久保持高强度受力状态,并且在工作过程中,天轮、井架等部位会对钢丝绳产生摩擦[1],因此在钢丝绳投入工作过程中对钢丝绳的健康状态进行检测是极为重要的。矿用钢丝绳现有检测方法有:声波检测方法[2,3],超声波检测方法[4],电磁检测方法[5-10],视频图像检测方法[11]。胡佩东等提出一种利用弱磁励磁技术条件下的检测探头,实现对煤矿用钢丝绳的缺陷定性以及半定量检测[12]。Jie等提出一种用于钢丝绳检测的新式探头,该探头利用霍尔元件阵列结合磁聚焦技术实现钢丝绳的缺损定性检测[13]。张铭利用外部磁场对钢丝绳轴向作用影响其磁导率实现对钢丝绳的缺损检测[14]。
近年,中国矿业大学(北京)采用电磁检测方法检测矿用钢丝绳取得了一些显著成果,通过对以往煤矿用钢丝绳的缺损检测方式进行研究发现,多是利用钢丝绳的磁化特性达到检测目的,一般都会对其施加外部磁场或其他干扰因素,这可能影响其正常工作状态。本文提出一种基于计算机视觉并结合深度学习图像检测方法实现煤矿用钢丝绳的缺损检测,该方式不需要对钢丝绳施加外部作用,对生产过程不存在任何干扰,并且能有效检测出钢丝绳的缺损状态,为煤矿安全生产检测提出了一种新的解决方案。
1 煤矿用钢丝绳缺损类型
由于煤矿中恶劣的生产环境,钢丝绳会因为多种因素导致其缺损,不仅影响钢丝绳使用寿命,严重时更会危及工作人员生命安全[15]。使用过程中的机械拉伸是造成其出现缺损的重要原因,可能会导致钢丝绳断丝、磨损等很多问题。矿用钢丝绳常见状态如图1所示。
图1 钢丝绳状态
1.1 磨 损
在钢丝绳工作过程中,其外部绳周与支架沟道之间会因为摩擦产生一定的磨损。由于绳与支架接触面一般较为固定,所以在长期使用中会产生单边磨损现象,而钢丝绳的单边磨损会导致某段受力不均衡而导致中部断裂。在使用过程中,常采用定期换向使用的方法延长使用寿命,不过虽然能够使其受力均衡,但长期磨损会使钢丝绳变细,达不到安全使用标准。
另一种情况是钢丝绳在发生弯折或成卷的时候对弯折处产生挤压,使载荷集中在弯折处,导致丝与丝之间发生摩擦,导致钢丝绳内部出现磨损,从而使其内部产生断丝。
钢丝绳长期磨损会严重影响其使用寿命,产生极大的安全隐患。
1.2 断 丝
钢丝绳断丝主要有两方面原因,一是由于制造工艺或生产误差导致钢丝绳在出厂时就存在的断丝现象;二是在使用过程中,由于严重磨损、受力超载以及弯折疲劳等由于钢丝绳机械强度过载而导致的断丝现象。
针对生产断丝情况,在使用之前必须对钢丝绳出厂性能进行检测,避免生产断丝情况。而使用断丝情况,则是接下来本文需要重点研究的问题之一。另外,除了上述情况外,腐蚀断丝和磨损断丝也是较为常见的两种缺损故障。在使用过程中可能因为潮湿等因素导致钢丝绳产生一定的化学腐蚀,长期如此腐蚀加剧就会导致钢丝绳断裂。通过观察,导致断丝的原因不同,钢丝绳断口有明显区别,如由于过载导致断丝而形成的切面会呈现斜茬状,断口扁平。
综上所述,为了保证煤矿的安全生产,需要在钢丝绳使用中产生故障之前将故障检测出来。因此本文提出了用于钢丝绳使用前检测的一种可靠方案。
2 钢丝绳检测系统设计
2.1 检测平台设计
矿用钢丝绳缺损检测平台设计方案如图2所示。其中主要包括钢丝绳传送装置、摄像机、照明装置、嵌入式系统以及整体支架等部分。钢丝绳传送装置架设在矿井口外部,通过一段平行导轨使钢丝绳在井口前平缓移动。照明系统能够保证摄像头采集到的画面光照均匀并提供足够检测的亮度,避免阴影或较暗环境对检测产生干扰。嵌入式系统负责图像的处理以及深度学习程序的执行和识别结果的输出,该系统具有较强的稳定性和抗干扰性,能够适应煤矿中恶劣的工作环境。支架部分采用工字钢对各部分提供稳定支撑,避免检测过程中发生不必要抖动,产生误差。
图2 矿用钢丝绳缺损检测平台
2.2 检测系统设计
煤矿用钢丝绳缺损检测系统整体架构如图3所示。由图3可知,由摄像头采集到的图像信息,通过采集卡转码传递给嵌入式系统中的深度学习网络,对其进行实时检测,并将结果传递给监控室上位机,向其反馈钢丝绳状态。其中摄像头的采样频率可以根据钢丝绳运动速度或者检测需求进行调整,但是越高的采样频率能够实现高精度检测,同时也需要极强的算力支持。
图3 煤矿用钢丝绳缺损检测系统架构
3 基于YOLO v5的煤矿用钢丝绳缺损检测
3.1 YOLO v5深度学习网络模型
3.1.1 YOLO算法简介
You Only Look Once(YOLO)是基于深度学习one-stage系列图像识别算法,其识别速度极具优势,并且拥有很好的目标识别能力[16,17]。其V5版本新增了马赛克增强以及自适应锚框等特性。选择one-stage系列的YOLO v5网络模型作为该系统的检测算法,能够极大程度缓解算力有限边缘计算设备的压力。
3.1.2 改进的YOLO v5模型
SPIE组织规定,广义上面积占比小于整幅图像的0.12%即为小目标。而小目标一般有清晰度低、面积小、信息量不足等特点,而且很容易与其他特征和噪点等干扰混淆。所以小目标很难通过传统特征提取算法进行分析,这就导致了神经网络对于其特征的学习变得极其困难。根据小目标检测中存在的问题,本文采用YOLO v5模型为基础并针对钢丝绳缺陷检测这一问题进行了优化,提出一种基于YOLO v5的多尺度改进模型,该模型在原有网络基础上增加了一个特征提取尺度,使之可以适应更小的检测目标,弥补小目标检测尺度上的不足。改进后的网络整体结构如图4所示。
图4 改进的YOLO v5结构
1)网络主干。优化后的YOLO v5由Backbone、Neck和Head三个部分组成。其中Backbone中包括Focus、CSPNet、CBL以及SPP结构,如图5所示。Focus结构对输入网络的图像进行切片后进行一次卷积,得到320×320×32的特征图,该结构有效的减少了特征损失,提高了运算速度;CSPNet由残差组件构成,将梯度变化集成到特征图之中,解决了梯度冗余问题,减少了参数量;CBL通常是指卷积-BN-激活函数,该结构是模型中一个基本的下采样模块;SPP利用不同核体积的池化层提取不同尺度的特征,再将得到的特征以空间金字塔形式融合,达到多尺度特征提取的目的。
图5 模型模块介绍
2)网络颈部及头部。网络的颈部(Neck)和头部(Head)组合实现了多尺度预测的功能。颈部通过改进的PANet结构,采用新的叠加方式将特征融合起来,使得模型具有多尺度目标检测的能力。网络的头部是检测的关键模块,选用模型最后的特征图作为基底,并利用锚框将类别信息、置信度等整合到输出结果中,从而实现目标检测。
3)尺度扩张。本文改进的YOLO网络在原来的基础上增加了一个尺度,即160×160。增加该尺度的主要目的是为了解决小目标缺陷的检测需求。本文通过将模型重复进行一次上采样和拼接工作实现了多一次的特征提取,提高了对小目标的检测准确度,对于一幅样本图像,最小能够检测的目标为1/(160×160)。
4)激活函数。本文针对钢丝绳样本对YOLO v5网络进行了改进和优化,其中BackBone部分采用ACON-C激活函数,其图像如图6所示。ReLU强制的稀疏处理会减少模型的有效容量,且由于ReLU在负半轴上的梯度为0,这导致该部分神经元出现坏死现象。而ACON Family可以自适应的选择是否激活神经元这一特征有效克制了ReLU导致的神经元坏死出现。本文Backbone部分采用ACON Family之中最广泛的ACON-C激活函数,即:
图6 ACON-C激活函数图像
ACON-C(x)=Sβ(p1x,p2x)=
(p1-p2)xσ[β(p1-p2)x]+p2x
(1)
式中,p1和p2是两个能够自主学习的参数用以自适应调整,其图像如图6所示。
式(2)为ACON-C的一阶导:
考虑式(3)可知当x趋近于正无穷时,其梯度趋近于p1,趋近于负无穷时,梯度趋近于p2。
对ACON-C求二阶导,有:
令上式为0,得到一阶导上下界分别为:
(β>0)
(5)
根据式(3)、式(5)可以看出,ACON-C的梯度完全由p1、p2决定。
5)损失函数。YOLO v5系列图像检测网络模型的损失函数由三个部分组成,包括边界框回归损失/置信度预测损失以及类别预测损失。在本文所设计模型中采用GIoU作为边界框回归损失,其公式如下:
式中,GIoU的含义为:对于预测定位框A和实际定位框B,计算能够同时包含A和B的最小矩形区域C。考虑实际框与预测框重合及完全分离状态可知GIoU Loss在[-2,0]之间。
置信度及类别预测损失采用Binary Cross Entropy Loss,其公式为:
其中,σ(x)是sigmoid函数,即:
3.1.3 YOLO v5算法实现
该算法使用Python3.7,基于Pytorch框架实现。本文使用的训练机为AMD R7-4800H CPU,GTX1650 GPU的Windows10系统PC机对网络模型进行预训练。在训练之前首先要对虚拟环境进行配置,在Python3.7环境下安装torch1.7.1、torchvision0.8.2等支持库和相关依赖。之后对样本数据集进行处理,将采集到的钢丝绳缺损图像通过LabelImg软件进行标记,并将样本数据集放到JPEGImages文件夹中,将标记软件生成的.xml文件放入Annotations文件夹中。
之后对数据集按照8∶1∶1随机划分为训练集、验证集和测试集,并将标注信息以及分类情况放入YOLOLabels文件夹中。数据集准备完毕既可开始网络的训练,训练通过迁移学习方式,采用原生权重参数作为网络超参数,其他有关初始化参数设置见表1。经过1000次训练之后将最好的权重结果保存为best.pt文件,即训练完成。
表1 网络训练初始化参数设置
3.1.4 模型测试
使用已知缺陷的钢丝绳视频样本输入到训练好的网络中,对测试程序进行调试后执行,最终将识别结果保存在runs/detect文件夹中。
3.2 模型评价
本实验通过与应用广泛的Faster RCNN、YOLOv3-dense、CNN、Tiny-YOLOv4以及CSPD-YOLO在接受者操作特征曲线(receiver operating characteristic curve,ROC)和精确召回曲线(precision recall curve,PR)来分析评估目标检测模型的准确度。ROC曲线是反映敏感性与特异性关系的曲线,可以用来描述检测模型对钢丝绳缺损图片变化敏感性及特异性连续变化指标,根据ROC曲线的位置把整个图划分了两个部分,曲线下方的面积称为AUC值。当AUC的值越大,也就是当ROC的曲线越靠近左上方,说明目标检测的准确性越高。若正负样本的比例存在不平衡的现象,可以采用PR曲线进一步地判定模型分类的效果,与ROC曲线相同,AUC值越大,即PRC曲线越靠近右上方,目标检测的准确率越高。
在ROC曲线当中,横坐标是假阳性率(False Positive Rate,FPR),代表的是假阳性率,纵坐标是真阳性检出率(True Positive Rate,TPR)。两者的计算公式如下:
其中,P代表测试样本正例的数目,N代表测试样本负例的数目,很明显地可以看出,TPR越大模型的效果越好。
不同模型下钢丝绳缺损检测的ROC曲线,如图7所示,从图7可以看出,所提出的模型的ROC曲线更接近坐标轴的左上角,对缺损检测的准确性较高,并且识别出各个故障类型的准确率达到93%以上,能够较好地把缺陷状态进行分类。
图7 不同模型下钢丝绳缺损检测的ROC曲线
不同模型下钢丝绳缺损检测的PR曲线如图8所示,结合如图8PRC曲线来看,虽然CSPD-YOLO模型比所提出模型的ROC-AUC高0.02,但是对各个缺陷状态的准确率整体上均高于CSPD-YOLO模型。相比于其它网络模型下的PRC曲线,所提出的模型更加地接近坐标轴的右上方,并且其PRC曲线上的AUC值均大于在其他网络模型上所对应的值。因此可以得出,所提出的模型在钢丝绳缺损检测准确率要高于其它诊断模型下的准确率。模型实验检测结果如图9所示。
图8 不同模型下钢丝绳缺损检测的PR曲线
图9 模型实验检测结果
4 结 语
利用YOLO v5深度学习模型,设计了一套用于煤矿用钢丝绳缺陷检测装置,实现了对钢丝绳缺损的实时检测,综合识别准确率达到90%以上。该装置既可在现场查看结果,也能通过HTTP协议将识别信息传输到主控室上位机中。可根据实际工况要求,实现对单根钢丝绳或多跟钢丝绳的缺损检测。