APP下载

一种基于改进YOLOv3-tiny的轻量级轨道紧固件检测算法

2022-07-12卢艳东李积英王筱婷

铁道标准设计 2022年7期
关键词:紧固件残差卷积

卢艳东,李积英,王筱婷

(1.兰州交通大学电子与信息工程学院,兰州 730070; 2.甘肃省工业交通自动化工程技术研究中心,兰州 730070)

引言

近年来,由于铁路运输的快速发展导致所承担的客运和货运急剧上升,保障铁路基础设施的安全运营越来越重要[1-2]。作为铁路基础设施的重要组成部分,轨道紧固件将钢轨和轨枕连接并固定在道床上,以保持轨道的稳定性;由于机车车轮与轨道之间的摩擦、振动和环境因素影响,铁路线路上轨道紧固件可能会出现螺栓松动或弹条丢失等情况,极大影响着铁路系统的可用性和安全性[3]。因此,轨道紧固件检测就成为一项重要工作。传统紧固件检查主要是依赖经过培训的工程师,其沿着轨道线路行走,定期检查紧固件的健康状态,但由于该巡检方式周期过长、效率低下、存在安全隐患等,已无法满足现在铁路基础设施检查的高精度、高效率要求[4]。

为解决这一现状问题,不少紧固件检测方法已相继被提出。如在前期轨道紧固件检测研究阶段,MAZZEO等[5]将小波变换(WT)和独立分量分析(ICA)表示的系数作为支持向量机(SVM)输入,并对2种预处理方法的检测率和假阳率进行比较评价;RUVO等[6]提出一种基于FPGA的原型架构,可自动检测紧固件螺栓的存在与否,采用哈尔变换(Haar Transform)和多层感知器神经分类器(MLPNC)进行分类识别;SINGH等[7]提出使用自动视频分析的轨道紧固件检测技术,将图像处理和分析方法相结合进行检测,可代替监察人员的人工目视检查;LI等[8]提出基于视觉的自动实时铁路检测系统,将图像中紧固件状态评估机制引入到轨道检测系统,以提高对检测精度影响;FENG等[9]提出采用哈尔特征的概率主题模型,检测紧固件磨损或缺失的自动视觉检查系统。

为提高对紧固件图像特征的提取,开始将卷积神经网络应用到紧固件检测,用来代替浅层学习网络。GIBEN等[10]采用一种基于材料类型和深度卷积神经网络的语义分割,与人工设计的浅层网络相比,该算法获得了更高的精度,并在多任务框架中使用多个检测器,包括SVM分类器和全卷积网络(FCN),有效地降低了紧固件检测误差;CHEN等[11]提出一种新的基于视觉的深度卷积神经网络(DCNN)方法,来检测轨道扣件图像中的缺陷,该系统基于离散余弦神经网络以由粗到细的方式级联三级;LIU等[12]提出一种基于在线模板匹配的紧固件区域定位方法,然后采用基于相似度的深度学习网络对紧固件进行分类。以上所述方法的检测精度提升了不少,但很少考虑内存,在保持高精度的前提下,检测速度需进一步提升。

随着深度学习领域的发展,出现了多种卷积神经网络,并把目标检测分为2类。第一类是two stage检测算法,如R-CNN(Region Conventional Neural Network)[13]、FPN(Feature Pyramid Networks)[14]、FastR-CNN[15]及FasterR-CNN[16]等。首先,生成一系列候选区域作为候选目标的样本和特征信息;然后,预测目标的定位信息和区域分类。MIAO等[17]提出一种结合卷积神经网络(CNN)和连续小波变换(CWT)的两阶段曲线识别方法;WEI等[18]为了提高检测速度和准确率,利用FasterR-CNN进行紧固件缺陷检测。虽然这种网络达到了一定的检测精度,但由于生成候选区域时存在大量的重叠区域,严重影响了网络检测速度。第二类是one stage检测算法,如SSD(Single Shot Multibox Detector)[19]、YOLO(You Only Look Once)[20]、YOLO9000[21]、YOLOv3[22]等,LI等[23]提出将深度可分离卷积和特征金字塔结合的YOLOv3-Lite检测算法。这种网络不用生成候选区域,直接将目标检测作为回归问题处理,从而获得比两阶段网络更高的检测速度,但检测精度有所降低。

针对以上检测算法中检测精度低或检测速度慢等缺点,提出一种基于YOLOv3-tiny改进的轻量级轨道紧固件检测算法,它结合了轻量级检测网络YOLOv3-Tiny,具有线性瓶颈和反向残差的主干,以提高检测精度和效率,采用一种混合卷积方法,将深度可分离卷积和传统卷积相结合,可有效降低计算机复杂度和模型大小的效果,并改进预测网络多尺度检测和损失函数,在提高检测精度的同时,检测效率得到有效提升。

1 YOLOv3-tiny算法

1.1 YOLOv3-tiny算法

YOLOv3-tiny算法是YOLOv3算法的简化版本,因其减少了大量的卷积层而对硬件要求也降低了,虽然在速度上有了很大提升,但检测精度较低。如图1为YOLOv3-tiny的算法结构,首先将输入图像分割成S×S的网格,如果某个对象的中心落在某个单元格,则该单元格负责检测该对象。对于每个单元格预测B个边界框,每个边界框包含边界框坐标信息、类别概率和置信度,置信度由网格检测的目标类别概率和准确度决定,其计算公式为

(1)

YOLOv3-tiny算法是将YOLOv3算法的darknet53精简为7个3×3的卷积层和6个最大池化层,每个卷积层是由BN层、卷积运算和Leaky ReLU激活函数3部分组成,池化层的前5层采用步长为2来降低输入特征图的维数,并在尺度大小为13×13(第16层)检测相对大目标物体;然后进行上采样与特征提取层26×26层特征进行特征融合,通过卷积后在26×26 (第23层)尺度上对小目标进行预测,YOLOv3-tiny算法网络结构如图2所示。

图2 YOLOv3-tiny网络结构

1.2 构造反残差块

传统的卷积网络随着卷积层数逐渐增加导致参数计算量会大幅度增长,使用深度可分离卷积将传统卷积分解为2个可分离的层,即深度方向卷积和点方向卷积,如图3所示。图3(a)是使用BN层和Relu激活层来提取特征的传统卷积层,图3(b)是深度可分离卷积层,使用3×3的卷积层将输入的特征图在深度方向进行卷积分割,1×1卷积在点方向扩展输出特征图的维数,通过此方法可有效减少模型的计算量,有利于提高网络收敛速度。

图3 卷积层结构

引入MobileNet V2中提出一种具有反向残差的线性瓶颈结构,与深度可分离卷积相比,其中包括1×1卷积额外的加法计算量[24]。如图4所示,图4(a)为传统的残差卷积结构,是先降维提取图像特征再放大,图4(b)为深度可分离反残差块结构。首先,通过1×1卷积运算放大特征图的维数;然后,使用3×3的卷积在深度方向提取高维空间紧固件特征,再用1×1点方向的卷积减小特征图的维数[25]。该模块的详细参数如表1所示,对于输入尺寸为h×w×k的特征图,通过扩展通道进行1×1卷积得到更多的紧固件特征,同时使用3×3深度方向的卷积提取高维特征并降低计算量,然后通过1×1点方向的卷积运算生成尺寸为h/s+w/s+kout的特征图。扩展因子t用于通过卷积层的运算放大输出通道。输入和输出通道分别为k和kout。

图4 残差结构

表1 反残差模块参数

2 YOLOv3-tiny算法改进

2.1 网络结构改进

为解决YOLOv3-tiny算法对轨道紧固件漏检率高、准确率低的问题,在原YOLOv3-tiny网络结构的基础上,用深度可分离卷积和具有反向残差的瓶颈卷积进行改进,以减小细微特征的丢失,从而提高紧固件检测精度,同时减小内存消耗[26]。改进的网络结构如图5所示。首先,输入层是大小为416×416的紧固件图像,骨干网络使用传统卷积和具有反向残差的瓶颈结构组合来提取紧固件的输入粗粒度特征,用步长为2的具有反向残差的瓶颈卷积代替最大池化层进行下采样,降低特征图的维数,并减少了骨干网权重参数的数量。此外,在检测层采用深度可分离卷积提取紧固件的深度特征,减少了计算量,然后,采用上采样使特征图加倍,并在骨干网络中连接相同大小的特征图,最后,生成3个Yolo检测层来进行轨道紧固件检测。

图5 改进的YOLOv3-tiny网络结构

2.2 优化损失函数

YOLOv3-tiny算法的损失函数由目标框坐标的回归损失、置信度和类别概率误差构成,其损失函数如下

LOSS=Ecoord+EConfidence+Eclass

(2)

式中,Ecoord为采用均方误差(MSE)作为目标框坐标回归过程损失函数,Econfidence和Eclass为置信度和类别概率误差上采用交叉熵。

交并比(Intersection Over Union,IOU)是一种常用度量距离的标准,在目标框坐标回归过程中度量预测边界框和真实目标框之间的交集,但在预测框和目标框之间没有交集时,无法继续用IOU进行度量评估,同时IOU无法区分预测框与目标框之间的对齐方式,当二者IOU相同而检测效果却有很大不同。因此,采用GIOU作为目标框定位回归过程损失函数,GIOU引入了一个惩罚项,在二者没有交集时,GIOU仍可计算梯度,此时梯度不为零,并继续优化模型。GIOU的损失函数计算公式如下

(3)

(4)

LGIOU=1-GIOU

(5)

式中,A、B分别为目标框和预测框的面积;C为两个边界框均包含的最小面积,可知当预测框和目标框越重合时,C的大小越接近A∪B,则GIOU的值越和IOU相等。

3 实验

本文实验环境为:NVIDIA GTX 2060 SUPER 8G显卡;i5-10500CPU;基于Darknet深度学习框架;Cuda10.0,Cudnn7.6.5加速;模型开始训练阶段,权重衰减系数为0.000 5,动量系数为0.9,批量设置为64,初始学习率设置为0.001,总的迭代次数为52 000次,在41 600次迭代之后学习率设置为0.000 1,46 000次迭代之后设置为0.000 01,在Ubuntu18.04 Linux操作系统改进的算法进行训练。

3.1 数据集制作

目前,铁路系统轨道线路紧固件分为无砟轨道使用的Vossloh-300型、WJ-8型和WJ-7型紧固件,有砟轨道使用的WJ-2型和WJ-5型紧固件。本次研究的主要是有砟轨道WJ-2型紧固件,数据集采集于兰州某车站区间有砟轨道紧固件1500张图像作为数据集,如表2所示。数据集分为训练集(60%)、验证集(20%)和测试集(20%)共3部分,分别包括900、300和300幅图像,使用名为LabelImage标记软件,通过标记紧固件的特定位置来生成真实边界框,并将其转化为类似PASCAL VOC和COCO格式的标准数据样式,以用于训练和测试,如表3所示,数据集中有5505个紧固件真实边界框,分别有4 425个正常紧固件和1 080个异常紧固件。

表2 数据集中不同紧固件尺寸和比例

表3 数据集中不同紧固件数量

3.2 实验结果与分析

为更好地评估改进算法,使用不同的评估指标来评估本文所提出的网络模型的性能,包括平均精度(AP)、平均精度均值(mAP)、检测速度(FPS)和模型大小。AP是用于计算每一类的预测精度,其值为Precision×Rcall曲线(即P-R曲线)与坐标轴的面积,mAP是每个类别的AP值的平均值,计算公式如下。

(6)

(7)

式中,P(R)为P-R曲线;C为类别数。准确率Precision和召回率Rcall的计算公式为

Precision=TP/(TP+FP)

(8)

Rcall=TP/(TP+FN)

(9)

式中,TP、FP和FN分别为模型正确检测出紧固件数量、模型没有检测出紧固件数量和模型错误检测出紧固件数量。FPS用于评估模型的检测速度,模型大小用于测量模型的内存消耗。F1分数(F1-score)是将准确度和召回率二者相结合加权计算,由于精确度和召回率之间的矛盾特性,作为一种评估网络分类性能的综合评估指标,其计算公式为

(10)

使用不同检测网络的紧固件检测的P-R曲线如图6所示,其分别显示了正常和异常紧固件检测精确度和召回率之间的趋势。从图6可以看出,与YOLOv3-Tiny相比,改进的网络结构在查全率和查准率有更好的表现,在异常扣件检测上的优势更加明显。在2个网络的召回率达到同一点之前,改进的YOLOv3-Tiny网络一直比YOLOv3有更高的准确率。此外,在精度上的性能优于YOLOv3-Tiny、YOLOv3和基于RCNN的检测网络,且在目标框坐标回归损失采用GIOU的网络检测精度上有较大提升,尤其是对异常紧固件的检测。因此,该方法在保证较高召回率的情况下,对提高紧固件检测精度有很好的效果。

图6 不同检测方法的P-R曲线

正常紧固件(N_F)和异常紧固件(U_F)的TP、FP、FN、准确率、召回率和AP测试结果如表4所示,采用GIOU损失函数后有效提高了检测精度,总的来说,本文改进算法比YOLOv3-tiny高4.68%和8.03%,最后两者的AP值分别提高到99.35%和98.26%。图7所示为检测结果,其中图7(a)~图7(e)为YOLOv3-tiny算法对紧固件检测结果,图7(f)~图7(j)为改进算法的检测结果。图7(a)中漏检了右上方正常紧固件,图7(f)中无漏检且置信度均为1;图7(b)中存在重复检查且置信度较低,图7(g)中准确检测紧固件置信度为1;图7(c)中错检为正常紧固件,图7(h)中正确检测;图7(d)中存在将异常紧固件检测为正常又重复识别,图7(i)中正确检测并置信度较高;图7(e)中存在错检将异常识别为正常,图7(j)中无紧固件错检。可以看出,本文的改进算法对紧固件有石头或油污遮挡时,均具有良好的检测效果,表明改进算法在现实铁路轨道复杂环境均可使用,能精确检测紧固件的缺失。

表4 紧固件测试结果AP值参数对比

图7 紧固件检测结果

不同紧固件检测算法的检测速度、mAP和模型大小如表5所示,可以看出,改进YOLOv3-tiny的算法检测速度明显高于两步检测算法Faster R-CNN和Mask R-CNN,比YOLOv3-tiny稍低,但改进的算法具有最高的mAP,其比YOLOv3高3.12%(采用GIOU达到3.57%),比YOLOv3-tiny高6.91%(采用GIOU达到7.36%),此外改进算法的F1分数比YOLOv3-tiny高8.6%,表明该模型显著提高了召回率和检测精度。从内存消耗来说,改进算法仅33.6MB,远低于Faster R-CNN、Mask R-CNN和YOLOv3,它们均需200MB以上,与YOLOv3相比,改进后的网络容量减少了86.3%,比YOLOv3-Tiny减少了0.02%,适用于搭载轻量级处理器的紧固件检测系统。这些优点主要是由于采用了深度可分离卷积和具有反残差的线性瓶颈,速度和内存消耗的提高为铁路紧固件检测的实时应用奠定了基础。

表5 不同检测算法测试结果参数对比

4 结论

提出一种基于YOLOv3-tiny改进的轻量级轨道紧固件检测算法,该网络结构包括2个关键部分,即深度可分离卷积和具有反向残差的线性瓶颈,有效降低计算复杂度和模型尺寸,且降低了内存消耗,同时,增加到3个尺度和优化损失函数来更好预测紧固件小目标。虽然该方法能够满足铁路检测系统中紧固件检测的实时性要求和较高的检测精度,但如何在加入更多紧固件特征类型的前提下,应用到紧固件检测设备提高检测速度和准确率,是下一步努力的方向。

猜你喜欢

紧固件残差卷积
基于残差-注意力和LSTM的心律失常心拍分类方法研究
基于双向GRU与残差拟合的车辆跟驰建模
测量系统分析在紧固件生产过程中的应用
基于3D-Winograd的快速卷积算法设计及FPGA实现
基于残差学习的自适应无人机目标跟踪算法
开启窗五金件连接处紧固件的选用及松动原因探究
民用飞机紧固件选用概述
卷积神经网络的分析与设计
基于深度卷积的残差三生网络研究与应用
从滤波器理解卷积