一种将深度学习运用于地铁列车紧固件防松标识检测的方法
2022-11-22黄海东颜欢
黄海东 颜欢
(东莞市轨道交通有限公司,广东东莞 523000)
0.前言
如今,城市轨道交通飞速发展,地铁是大多数人不可或缺的交通工具。为保证列车质量可靠、运行安全,列车检查由主要人工定期巡检完成。但人工巡检安全保障模式存在以下问题:可能出现漏检或误检,检查效率低,给行车安全带来隐患。其中,地铁列车紧固件属于关键部件,而其尺寸小、数量多,给检测带来了一定困难。紧固件连接是机械设备中广泛使用的紧固件之一,因拆卸方便、紧固优异的特点,多用于受力复杂部位或重要的结构接头处,但受使用环境和力学特性的影响,紧固件又往往是此类连接方式中的薄弱环节。地铁车辆在装配过程中会大量使用紧固件连接,当车辆运行时,高速行驶的车辆和铁轨不断相互作用,产生不同方向的振动形式,很容易导致紧固件连接结构松动甚者脱落,造成安全问题。
本文中提出了一种新的紧固件异常检测方法,该方法基于图像处理与深度学习技术,通过拍摄地铁列车车底、走行部等部位,分析所得图像,自动识别紧固件位置,自动检测紧固件防松标识是否完整,从而检测紧固件是否发生松动。此前的紧固件松动检测方法大部分也是基于图像处理,不过由于地铁列车在行驶过程中紧固件处经常会被油污、灰尘等覆盖,导致防松标识不完整或不清晰,使得大部分的检测方法只能基于对比或紧固件外形来判断,但其局限性较大,当遇到紧固件表面灰尘变化或特殊形状紧固件时,往往无法进行判断。基于这些情况,我们提出了一种新的检测紧固件松动的方法,通过深度学习图像生成模型对紧固件图像进行恢复,还原其防松标识的状态,同时消除油污、灰尘等的干扰,大大提高了地铁紧固件异常检测的准确率。
1.总体介绍
在本文中我们提出了一种地铁列车紧固件异常检测的算法,通过对列车图像进行分析,检测地铁列车紧固件防松标识判断螺栓是否发生松动,在检测过程中运用了深度学习目标检测及图像生成技术。在以往的方法中,判断紧固件异常往往只能采用对比的方式,但紧固件表面的纹理或脏污等其他干扰因素会影响判断结果。我们采用的新的方法针对以往方法遇到的问题,突破了只使用对比进行检测的弊端,使紧固件防松标识可以更好地被提取出来,一定程度上解决了紧固件防松标识被灰尘、油污等遮挡后难以检测的问题,和以往的算法相比,提高了紧固件防松标识提取的成功率,降低了漏报率。
我们算法总体可分为3个部分:第一部分为紧固件定位部分,通过一个深度学习目标检测模型对地铁列车图像中需要检测的紧固件进行定位,并根据紧固件形态进行简单分类,如螺栓、螺母、方孔锁等;第二部分使用一个深度学习图像生成模型对防松标识进行还原,由于列车在行驶过程中紧固件位置很可能会积累油污、灰尘等,会对紧固件防松标识造成一定程度的遮挡,导致检测出现偏差,而这也是以往算法无法解决的问题,我们通过训练一个深度学习图像生成模型,对紧固件固定端与活动端两部分的防松标识进行还原,去除表面其他因素的干扰;第三部分中使用一个语义分割模型,对第二部分中生成的图像进行区域分割,提取紧固件防松标识,后续就可以通过判断防松标识角度、位置等检测紧固件是否发生松动异常。
2.具体过程
2.1 第一部分:目标检测部分
在算法中的第一部分是一个目标检测模型,通过识别地铁列车图像,对其中需要检测的紧固件识别定位,由于紧固件类型有多种,其防松标识的画法不同,所以,需要在定位的同时识别紧固件的类型。我们共设置了4个类别:螺栓、螺母、方孔锁以及其他。其中,螺母端紧固部分,我们将其划分为螺母类别,螺栓端紧固的部分,我们将其划分为螺栓类别,方孔锁部分,则统一划分为方孔锁类别,其余的紧固件结构全部归为其他类别。由于相机拍摄角度问题,紧固件防松标识不一定正对相机,所以我们在上述4个类别的基础上,添加了一个二级类别,分别包括:Ⅰ型紧固件和Ⅱ型紧固件,Ⅰ型紧固件指的是紧固件发生松动时防松标识在相机平面转动;Ⅱ型紧固件指的是紧固件发生松动时防松标识不在相机平面转动。
我们使用的是YOLO系列的YOLOv5模型,YOLOv5是一种单阶段目标检测算法,是YOLO系列算法中较为先进的算法模型,其基本框架与YOLOv3一致。在YOLOv4提出后,该算法又在YOLOv4的基础上添加了一些新的改进思路,使其速度与精度都得到了极大的性能提升。我们主要使用YOLOv5中的图像增强方法,如Mosaic数据增强、自适应锚框计算、自适应图片缩放等。同时,利用其特征提取结构,如Focus结构与CSP结构、FPN+PAN结构等,在最后损失函数部分,我们根据自己的实际情况做出了调整。由于我们对类别做出了特殊约束,所以在损失函数部分采用了两个交叉熵损失函数,总类别数设置为5,其中前4个类别使用一个交叉熵损失函数进行判定,即使用前4个类别表示螺栓、螺母、方孔锁以及其他,最后一个类别表示Ⅰ型紧固件或Ⅱ型紧固件。由于前4个类别相互之间是互斥的,第五个类别与前4个类别没有相关性,所以前4个类别使用Softmax函数激活后使用交叉熵损失函数得到损失,第五个类别使用Sigmoid函数激活后使用二值交叉熵损失函数得到损失,最后再将两个损失相加,具体公式如下:
其中,loss1为前4个类别的损失函数,loss2为第五个类别的损失函数,最后将两个损失相加作为最终的损失。
2.2 第二部分:图像生成部分
我们在算法第二部分中使用一个深度学习图像生成模型,列车紧固件图像中紧固件表面的防松标识可能会被表面污渍遮挡,所以我们利用深度学学习图像生成模型的目的是利用部分未被遮挡的防松标识对紧固件防松标识进行完整还原。
图像生成模型采用扩散模型框架,扩散模型不同于GAN模型,GAN模型同样在图像生成领域有着不错的效果,但其也存在训练困难,需要对参数进行大量微调才可以达到较好的效果,扩散模型则是一项受热力学启发的发明,近年来已显著普及。扩散模型通过反转逐渐添加的噪声过程来学习生成数据,是一种新型的图像生成模型结构,其中包含一个正向过程和一个逆向过程,正向过程也称扩散过程,通过逐步向图像中添加噪声使原始图像变为一个高斯分布的噪声图像,反向过程则是将噪声图像还原为原始图像,训练过程则是通过神经网络拟合反向过程使神经网络可以将带有噪声的图像还原为真实图像。在我们这里则是控制添加噪声的区域,只向紧固件防松标识附近添加噪声,模拟防松标识被污渍遮挡的特征。在噪声方面,原始的扩散模型添加的是高斯噪声,由于我们特有的图像特征不同,所以我们这里是通过提取被污渍遮挡的紧固件防松标识附近的图像区域,提取区域灰度值分布,建立特征分布图,根据特征分布对应添加噪声。
在噪声添加部分,我们选择了高斯噪声。高斯噪声是指它的概率密度函数服从高斯分布(即正态分布)的一类噪声,常见的高斯噪声包括起伏噪声、宇宙噪声、热噪声和散粒噪声等。我们认为,在图像中紧固件表面的一些污渍或其他影响因素也属于高斯噪声的一种。所谓高斯噪声,是指它的概率密度函数服从高斯分布(即正态分布)的一类噪声。由于列车紧固件图像会受水渍、污渍、天气情况、相机情况等各种各样的因素影响,各种因素在图像中灰度值并不固定,但又有一定的规律性,所以,我们认为在各种因素的加持下,可以将其灰度值分布视为高斯分布。
2.3 第三部分:图像分割部分
在算法的第三部分,我们使用了一个图像分割模型。图像分割模型主要是用于提取紧固件防松标识部分,第三部分的输入是第二部分将原始图像还原后的图像,经过第二部分处理后,图像防松标识部分特征更加突出,更容易提取对应区域。在输出部分,我们设置了3个类别,分别为:紧固件防松标识、紧固件活动段和紧固件固定端。识别紧固件活动段与固定端主要是为了在后续过程中对防松标识进行进一步区域划分,由于紧固件活动段与固定端的防松标识特征一致,很难直接进行区分,而我们关注的部分主要为紧固件活动段部分的防松标识,所以,需要将活动段与固定端的区域做一个区分。
图像分割模型我们采用的是Unet系列模型,Unet是在Fcn基础上提出的一种应用于医学影响的分割网络,由于医学网络模型通常只有很小的数据集,而Unet结构可以使模型得到很好的泛化能力,而我们的数据集也同样存在数据不足的情况,所以使用Unet结构模型可以一定程度上减少因数据不足而带来的过拟合的情况。由于图像特征较为明显,为防止过拟合,不需要使用网络深度太大的模型,我们对原始的模型结构进行了量化剪枝操作,在加快了模型推理速度的同时能够拥有更好的性能。在输出的3个类别中,紧固件活动段与紧固件固定端两个类别是互斥的,紧固件防松标识与其他两个类别不互斥,所以我们使用了与第一部分同样的操作,互斥的类别之间使用Softmax激活函数,防松标识类别使用Sigmoid激活函数,损失函数部分都使用二值交叉熵损失函数。
交叉熵是深度学习中经常用到的一个概念,常用在损失函数的定义中,用来求目标值和预测值之间的差距。二值交叉熵被普遍应用于二分类问题中,作为损失函数出现,其本质是衡量两个分布的相似度。
3.试验过程
由于整个算法中涉及多个深度学习模型,所以,我们在试验过车中将对各个部分分开进行测试。其中,第一部分的结果作为第二部分的输入,第二部分是一个图像生成模型,无法对其进行有效的单独测试,因此,我们将第二部分与第三部分合并测试。
第一部分是通过一个深度学习目标检测模型对紧固件进行定位及分类,我们将分别评估其紧固件检出的准确率和分类的准确率。在前面说到,我们共设置了5个类别,其中前4个类别是互斥的,表示紧固件的一种属性,最后一个类别表示紧固件的另外一种属性,在测试过程中我们也将对这两个属性进行分别统计。我们在测试中共使用了384张图像,共包含紧固件1865个,其中,检测出了1865个紧固件,误检了1个紧固件,检测准确率为99.95%,在分类过程中,1865个紧固件分类正确的个数为1835,分类准确率为98.39%,Ⅰ型紧固件和Ⅱ型紧固件之间测试中未发生类别错误。
第二部分与第三部分是联合测试,第二部分为一个图像生成模型,其输出作为第三部分的输入,由于我们关注的并不是生成结果的质量好坏,而是第三部分输出的结果的准确率,所以,我们只对第三部分的结果作出评估。第三部分是一个图像语义分割模型,在此部分共设置了3个类别,我们将分别计算每个类别的IOU指数,最后得出总体的mIOU作为评价指标。我们共收集了200张防松标识不明显的紧固件图像,作为第二部分的输入,在第二部分进行还原后,再将还原后的图像输入到第三部分中,然后比较第三部分结果与标签部分各类别的重叠面积比率,即mIOU,最后得出结果防松标识与紧固件部分图像语义分割准确率达到83%,除个别位置其防松标识角度本身无法满足检测的要求,其余紧固件均可通过第三部分的输出判断其是否发生松动等异常。
4.结语
本文提出的地铁列车紧固件检测方法,主要利用一些先进的深度学习图像方法,解决了以往对紧固件异常进行判断时出现的无法检测的问题,且充分考虑到了列车在行驶过程中紧固件的状态,使用深度学习生成模型对紧固件各种状态下的图像进行还原,使紧固件放松标识在各种情况下都可以被提取出来,从而大大加强了列车紧固件异常检测的准确率。