王晓明 陈智宇 董文涛 姚道金 黄贻凤
收稿日期:2023?08?28
基金项目:国家自然科学基金项目(52165069);江西省教育厅科技项目(GJJ2200621)
文章编号:1005-0523(2024)03-0065-09
摘要:【目的】针对铁路运行时由于接触网吊弦缺陷造成的安全隐患问题,提出一种基于改进YOLOv7x的接触网吊弦缺陷识别方法。【方法】首先在主干特征提取层的末端引入Swin Transformer网络替换原有的扩展高效层聚合网络模块,提高网络掌握全局信息的能力,再引用SIoU(SCYLLA-IoU)损失函数替换原网络的损失函数,为预测框收敛过程添加方向惩罚机制,最后使用coordinate attention(CA)注意力机制融合颈部层中的扩展高效层聚合网络模块,增强颈部网络模块的全局感受野。【结果】仿真结果表明,此改进算法训练出的模型精度达到95.9%,相较于原YOLOv7x算法检测精度提高了4.7%,检测速度也达到了52 帧/s。【结论】改进算法解决了在吊弦缺陷识别领域检测效率低下的问题,在实际作业中能够提高接触网吊弦缺陷排查工作的效率。
关键词:接触网吊弦缺陷检测;YOLOv7x;Swin Transformer;SIoU损失函数;CA
中图分类号:U225.4 文献标志码:A
本文引用格式:王晓明,陈智宇,董文涛,等. 基于YOLOv7x的接触网吊弦缺陷检测方法[J].华东交通大学学报,2024,41(3):65-73.
Detection Method of Catenary Hanging String Based on YOLOv7x
Wang Xiaoming1, Chen Zhiyu1, Dong Wentao1, Yao Daojin1, Huang Yifeng2
(1. School of Electrical and Automation Engineering, East China Jiaotong University, Nanchang 330013, China;
2. School of Civil Engineering and Architecture, East China Jiaotong University, Nanchang 330013, China)
Abstract: 【Objective】Aiming at the potential risk caused by overhead contact wire defects during railway operation, an improved YOLOv7x method for overhead contact wire defect identification is proposed. 【Method】Firstly, Swin Transformer network is introduced at the end of the backbone feature extraction layer to replace the original extended and efficient layer aggregation network module, so as to improve the ability of the network to grasp global information. Then the SIoU(SCYLLA-IoU) loss function is used to replace the original network loss function, and the direction penalty mechanism is added to the convergence process of the prediction frame. Finally, CA is integrated with the extended and efficient layer aggregation network module to enhance the global receptive field of the neck network module. 【Result】Experimental simulation results show that the accuracy of the model trained with the improved algorithm reaches 95.9%, which is 4.7% higher than that of the original YOLOv7x algorithm, and the detection speed reaches 52 frames per second. 【Conclusion】The improved algorithm solves the problem of low detection efficiency in hanging strings defect identification, which may improve the efficiency of detection of hanging strings defect in practice.
Key words: detection of catenary hanging string defects; YOLOv7x; Swin Transformer; SIoU loss function ; CA
Citation format: WANG X M, CHEN Z Y, DONG W T, et al. Detection method of catenary hanging string based on YOLOv7x[J]. Journal of East China Jiaotong University, 2024, 41(3): 65-73.
【研究意义】接触网是高速铁路的重要组成部分,受电弓通过接触网完成对列车的电力输送,接触网的各部分状态的好与坏时时刻刻影响着铁路的运行安全。吊弦作为接触网重要的一部分,对输电线路起到承重与支撑的作用,吸收和缓冲承力索及定位点所受的振动冲击,一旦发生断裂,将导致接触网几何参数发生变化,影响列车安全运行[1-2],因此对吊弦状态进行常态化检测是必要的。
【研究进展】往年一般采用人工对接触网各部分进行检测,这项检测方式十分耗费人力物力,检查效率也不尽如人意,而机器视觉作为当前热门技术,在许多领域都有应用这项先进技术解决检测难题的高质量论文,同时也有许多学者将此技术带到了接触网缺陷检测方面。如Han等[3]提出一种基于YOLOX的针对绝缘子缺陷检测的视觉检测算法,屈志坚等[4]提出一种基于YOLOv3的针对接触网鸟巢检测与识别的检测方法。基于深度学习的目标检测算法由于具有良好的泛化能力和从复杂背景中提取特征的能力,在接触网缺陷检测领域得到广泛应用。应用于接触网目标检测的算法一般分为两类:一阶段算法(One-state)和二阶段算法(Two-state)。二阶段目标检测算法大多使用RPN(region proposal network)来减少复杂背景对目标及其缺陷检测的干扰。其主要流程是对图像先进行区域生成,再通过卷积神经网络进行样本分类。刘杰等[5]提出使用Faster R-CNN神经网络模型对吊弦缺陷图片数据进行训练。Tan等[6]提出了基于Faster R-CNN算法的吊弦缺陷检测模型,实现了吊弦的定位和识别以及弯曲松弛和断裂吊弦的故障检测。【关键问题】虽然上述二阶段改进算法可以使接触网部件检测的检测精度达到很可观的数值,但效率低、速度慢的问题是不容忽视的。
一阶段目标检测代表算法有YOLO系列和SSD等。它可以通过单次检测生成物体的位置坐标和类别概率,能够快速准确地完成检测任务。张姝等[7]提出一种利用SSD定位并识别巡检图像中螺栓缺陷的检测方法,虽然SSD检测算法在速度上有很大提升,但是牺牲了过多的精度,并不适合用于缺陷排查。顾桂梅等[8]提出使用Transformer模块替换原YOLOv5s算法主干网络末端的C3模块,以此来强化主干网络的全局特征信息提取能力,但该模块自注意力计算方式会带来庞大的计算量,给模型检测速度带来较大影响。上述方法相较于二阶段目标检测方法能够提升检测速度,但是在检测精度上还有提升空间。
【创新特色】基于以上提到的不足,提出一种基于改进YOLOv7x的接触网吊弦缺陷检测方法;引入新的骨干网络Swin Transformer替换主干特征提取层末端的扩展高效层聚合网络(extended efficient layer aggregation networks,ELAN)模块,通过自注意力的计算以此来提高模型的检测精度。引入SIoU(SCYLLA-IoU)损失函数替换YOLOv7x所采用的CIoU(Complete-IoU),在原有的基础上引入了方向惩罚机制,相较于网络原损失函数CIoU提高了训练效率。最后在网络的颈部层引入CA(coordinate attention)注意力机制,加强了通道与通道之间的联系。原网络经过改进后能够有效提高检测精度。
1 YOLOv7x算法原理
YOLO是当前目标检测领域最优算法之一,具有检测速度快、检测精度高且满足实时性的优势。而YOLOv7[9]作为目前YOLO最先进的目标检测算法,在5~160 FPS(frames per second)的范围内,其速度和精度已经超过了所有的物体检测器。YOLOv7x在YOLOv7的基础上进行了模型缩放,使得训练后的模型精度更高。
YOLOv7x网络分别由输入层,主干特征提取层和颈部层组成。主干特征提取层由多个不同参数的卷积标准化激活函数和池化函数拼接而成,用来提取输入的图像特征。该层主要的两个模块ELAN与MPConv的结构如图1(a),图1(b)所示。颈部层不同于主干特征提取层多了池化模块(SPPCSPC)、反卷积模块(Unsample),如图1(c)所示。
该层通过上采样和下采样将不同层次的特征图融合在一起,生成具有多尺度信息的特征图,以此来提高检测的准确率。经过上述一系列卷积和最大池化后向检测头部分输出3种不同尺度的特征图像,与已经标注好的图片数据进行对比,计算出此轮训练的损失函数,损失函数包括:定位损失、分类损失、置信度损失。根据训练情况调整模型参数,从而使模型更加精确。
2 YOLOv7x的改进
针对YOLOv7x网络结构提出以下几点改进。
1) 引入Swin Transformer网络替换主干特征提取层底部的ELAN模块,以牺牲些许检测速度的代价来提高模型的检测精度。
2) 替换网络原有的损失函数CIoU为SIoU,有助于模型快速收敛,提高模型的训练效率与检测精度。
3) 在颈部层添加CA注意力机制,增强网络模型特征学习能力能够提升模型精度,且参数量少不会带来过多的计算量。
在原YOLOv7x网络基础上改进后的网络框架如图2所示。
2.1 替换新骨干网络Swin Transformer
由于YOLOv7x缺乏获取全局信息的能力,网络提取目标特征的能力也会相应减弱[10],为弥补这方面不足,在原骨干网络末端引入新的模块SWT(swin transformer),SWT是Liu等[11]提出的一种新的视觉转换器,它是基于VIT(vision transformer)改进后提出的一种具有多头自注意力机制的计算方法,SWT的网络如图3所示。
该网络使用多个自注意力层来代替YOLOv7x中的部分空间卷积层,网络通过多头自注意力计算能够获得更多的上下文信息、建立全局的依赖关系,扩大图像的感受野[12]。不同于Transformer在整个图像中计算全局自注意力,计算复杂程度如式(1)所示,SWT首先使用了类似于卷积操作的层次化构建方法,将特征图划分为多个不重叠式的“小窗口”,在每个小窗口内计算自注意力,如图3中的W-MSA(window multi-head self-attention)多头自注意力模块,该方法计算复杂程度如式(2)所示。
[θMSA=4hwC2+2(hw)2C] (1)
[θW-MSA=4hwC2+2M2hwC] (2)
式中:[M2]为[M*M]像素大小的小窗口;C为特征图深度。
可见在实际计算过程中,如果图片为640*640的大小,全局自注意力计算方式的计算量将非常庞大,在局部窗口内分别计算自注意力可以大大减少计算量。但是如果只是仅在每个独立的小窗口单独计算各自的自注意力会限制了网络建模能力,无法为网络提供完整的全局感受野。图3中SW-MSA(shift-window multi-head self-attention)多头自注意力模块解决了该缺陷,算法流程如图4所示。图4(a)对窗口进行移动得到了图4(b),过程可以看作每个小窗口向右侧和下方移动了[M/2]个像素,之后通过平移分割后的小窗口得到图4(c),合并相邻同大小的小窗口,这样又和图4(a)一样是4个M*M像素大小的窗口。这种方式既能够使小窗口之间互相通信,打破独立窗口对全局建模的限制,也能保证计算量不变。之后在自注意力计算时通过掩码的方式隔绝不同区域的信息,计算完成后复原图片,至此完成了SW-MSA多头自注意力计算操作。
SWT在计算网络的自注意力时需要对每个头部添加相对位置偏执B为
[Attention(Q,K,V)=softmax(QKtdk+B)V] (3)
式中:[B∈RM2+M2];[Q,K,V∈RM2×d]分别为查询、键和值向量矩阵;[d]为查询向量矩阵维度;[M2]为每个小窗口的像素。
2.2 替换损失函数SIoU
损失函数是模型改进与优化的重要指标,针对不同模型选取一个合适的损失函数可以优化模型训练效果。在实际检测过程中,预测框的少量偏移与缩放对模型的精度都会有很大影响。YOLOv7x采用的是CIoU损失函数,相较于IoU、GIoU、DIoU损失函数加入了长宽比的惩罚项,但该损失函数收敛并没有考虑到预测框与目标框之间相对方向的因素,这样会使预测框在训练的过程中盲目运动从而使得模型收敛速度变慢效率变低。而吊弦缺陷识别模型需要训练大量图像数据,若在训练过程中预测框无法高效率的收敛,将会造成大量的资源浪费并可能导致最终训练出的模型效果变差。针对这种问题本网络引入损失函数SIoU[13],该损失函数基于CIoU损失函数引入了方向惩罚机制,在预测框收敛过程中将所需回归之间的向量角度纳入考量标准,这样能够有效控制预测框回归的自由度,相较于其他损失函数提高了训练效率。SIoU损失函数方向惩罚机制原理如图5所示,将预测框与目标框放在坐标轴上,图中B方块为预测框,BGT为目标框。
为解决预测框在训练过程盲目运动的问题,收敛过程首先尝试最小化[α],如果[α≤π4],则最小化[β=π2-α]。为了实现这一点,引入损失函数,定义角度损失[Λ]为
[Λ=1-2×sin2arcsinx-π4] (4)
式中:[x=Chσ=sinα];[σ=(bgtcx-bcx)2+(bgtcy-bcy)2];[Ch=max(bgtcy,bcy)-min(bgtcy,bcy)]。
由于角度损失的变化,需重新定义距离损失,距离损失公式为
[Δ=t=x,y(1-e-γρt)] (5)
式中:[ρx=(bgtcx-bcxcw)2];[ρy=(bgtcy-bcych)2];[γ=2-Λ]。
预测框形状损失函数定义为
[Ω=t=w,h(1-e-ωt)θ] (6)
式中:[ωw=w-wgtmax(w,wgt)];[ωh=h-hgtmax(h,hgt)]。形状损失函数中的[θ]是一个非常重要的自定义参数,该参数控制着对形状损失的注意力程度,将[θ]的值设置为4。
整体SIoU损失函数定义为
[Lbox=1-IoU+Δ+Ω2] (7)
式中:[IoU=B?BGTB?BGT]。
2.3 添加注意力机制CA
在视觉神经网络模型训练中,计算机需要处理大量图像数据,但每张图片信息中只有一部分是模型训练所需要的,盲目训练使得计算机资源浪费,训练效率下降。为解决这类问题,采用向YOLOv7x网络引入注意力机制的方法来提高模型的训练效率。目前流行的注意力机制有SENet,CBAM等。CBAM不仅像SENet一样考虑了特征通道之间的关系,还同时考虑了特征通道的位置信息,但CBAM利用位置信息的方法是通过减少输入通道数,然后通过一次卷积计算空间注意力,如图6(a)所示。卷积函数只能捕获局部关系,没有提取长距离间依赖关系的功能,长距离间关系对视觉模型训练任务是至关重要的。
为让模型训练时充分利用到通道与通道之间以及更远距离间的联系,引入CA注意力机制[14],它的工作结构主要分为坐标信息嵌入和坐标注意力两部分。该注意力机制可以通过将位置信息嵌入到通道注意力机制中,使网络能够捕获大范围的位置信息而不会带来过多的计算量,结构如图6(b)所示。而且CA注意力机制方法轻便,易于插入到YOLOv7x网络结构中。
注意力机制CA不同于SE,首先将全局池转化为一维特征编码,经过输入给定X,沿水平坐标以及垂直坐标两个方向聚合特征,生成方向感知图。通道a高度为h的输出可以表示为式(8),同理可得通道a宽度为w的输出可以表示为式(9)。如下
[zhc(h)=1W0≤i [zwc(w)=1H0≤j 式中:W与H分别为水平和垂直两个空间范围的极值。 3 实验结果及分析 3.1 实验环境 为验证本文改进算法的可行性,本文的对比实验是在同一个环境下进行,编译环境为Pytorch,CPU型号为Intel(R) Xeon(R) Platinum 8157 CPU @ 2.30 GHz,GPU型号为NVIDIA GeForce RTX 3090 24 GB显存,运行内存为86 GB。 3.2 实验数据集来源及预处理 本实验数据集来源于南昌铁路局使用轨道检测车装置拍摄接触网各零件的高清图像集,分辨率为5 120*5 120,其中包含吊弦的图片一共有1 600张,通过LabelImg软件对图片进行标注。本文主要将吊弦状态分为正常吊弦(zcdx)、载流环断裂(zlhdl),变形吊弦(bxdx)和断裂吊弦(dldx)共4种,如图7所示。由于变形吊弦与断裂吊弦的图像数量较少,为提高模型的泛化能力以及防止模型过拟合,在模型训练前通过数据增强方法,使各类型吊弦图像数量比例合理。按照8:1:1的比例随机划分出训练集,测试集和验证集供模型训练。 3.3 实验设计及评价指标 为证明本文网络改进后在模型性能上有相应的提升,本实验进行以下消融实验。通过模型训练获得的[mAP@0.5](mean average precision)来作为评判模型精确度的标准,训练出的模型每秒检测出的图片数量作为该训练模型检测速度评判标准,用FPS(frames per second)表示。输入图像分辨率设置为640*640。训练轮次为200,步长设置为16,各实验结果如表1所示。表1中,√代表采用该改进方法,?代表未采用该改进方法。 由消融实验结果可以证实:① 在YOLOv7x的主干网络末端替换SWT后,模型精度增加3.3%,检测速度也相应的减少了3帧,这样的结果符合前文介绍所提到的SWT替换网络后的效果;② 在替换新的网络损失函数SIoU后,检测精度增加0.4%且检测速度大致不变,可见在添加新的方向惩罚机制后能够在不增加计算量的同时优化模型推理过程,提高检测精度;③ 在颈部网络的ELAN模块融合CA注意力机制后相较于原网络精度增加1.5%,检测速度降低4帧,符合预期。改进后的算法相较于原YOLOv7x算法检测速度略微降低6帧,但是检测精度增加4.7%。图8是本文改进算法与原YOLOv7x算法分别训练200轮次的检测精度随训练轮次变化的曲线对比图,两种算法在85轮训练后精度都趋于稳定,原始算法[mAP@0.5]在91%左右趋于稳定,最优效果达到的91.2%,改进后的算法[mAP@0.5]稳定在95.6%左右,效果最好达到95.9%,由图8可知两种算法没有出现过拟合或欠拟合现象且本文改进后算法要优于原始算法。 为证实本文算法的优越性,本实验选取热门目标检测算法Faster R-CNN、SSD和YOLOv5s与本文改进后效果进行对比实验,模型评判标准依旧不变,[mAP@0.5]作为模型的精度标准,FPS作为模型的检测速度标准。训练结果如表2所示。 由实验结果可以得出,二阶段检测算法在检测速度上要远低于一阶段检测算法,但是在检测精度上要优于一阶段检测算法。YOLOv5s和SSD算法在速度上要优于YOLOv7x算法,原因在于YOLOv7x网络结构更复杂,运算量更大,所以YOLOv7x在精度上要高于YOLOv5s及SSD。 为了验证实验结果的可靠性,分别采用表2中的5种算法训练出的模型权重检测同一组的图片,结果如图9所示。 由图9检测结果可知,本文改进算法在检测置信度上要高于其他一阶段目标检测算法,检测部分图片的置信度要高于二阶段目标检测算法,而且由表2可知本文检测算法在检测速度上要远高于二阶段目标检测算法。本文改进后的算法在检测精度上有明显优势,检测速度达到了可观的效果。结合以上几点,本文的改进算法更适合完成铁路上的接触网吊弦缺陷检测任务。 4 结论 1) 通过在原网络的主干特征提取层底部使用Swin Transformer模块替代ELAN模块,并在颈部层添加CA注意力机制,以及使用SIoU替换原网络的损失函数,可以改善模型并提高检测精度。 2) 实验结果显示,经过改进的YOLOv7x网络的检测精度达到了95.9%,相较于原网络提高4.7%。在检测速度方面达到了52 帧/s,领先于其他目标检测算法。 3) 研究结果表明,改进算法在检测效率上有很大提升,满足了接触网吊弦缺陷检测的实时性需求。 参考文献: [1] 吴文江, 李响, 高占凤, 等. 基于有限元法的高速铁路接触网吊弦动态特性研究[J]. 铁道学报, 2020, 42(7): 65-72. WU W J, LI X, GAO Z F, et al. Research on dynamic characteristics of dropper of high-speed railway catenaries based on finite element method[J]. Journal of the China Railway Society, 2020, 42(7): 65-72. [2] 洪晓斌,何永奎,周建熹,等.承力索锚结线夹绞线区域损伤的超声导波监测[J].华南理工大学学报(自然科学版),2017,45(5):1-8. HONG X B, HE Y K, ZHOU J X, et al. Ultrasonic-guided wave monitoring for strands damage in anchor clamp zone of messenger wire[J]. Journal of South China University of Technology (Natural Science Edition), 2017, 45(5): 1-8. [3] HAN G J, LI T, LI Q, et al. Improved algorithm for insulator and its defect detection based on YOLOX[J]. Sensors, 2022, 22(16): 6186. [4] 屈志坚, 高天姿, 池瑞, 等. 基于改进的YOLOv3接触网鸟巢检测与识别[J].华东交通大学学报, 2021, 38(4): 72-80. QU Z J, GAO T Z, CI R. Detection and recognition of bird nests in overhead catenary systems based on improved YOLOv3[J]. Journal of East China Jiaotong University, 2021, 38(4): 72-80. [5] 刘杰, 许建国, 高春丽, 等. 基于机器视觉的接触网吊弦缺陷检测研究[J]. 铁道工程学报, 2022, 39(5): 91-97. LIU J, XU J G, GAO C L, et al. Machine vision-based research on the inspection of dropper defects of overhead contact line[J]. Journal of Railway Engineering Society, 2022, 39(5): 91-97. [6] TAN P, LI X F, WU Z G, et al. Multialgorithm fusion image processing for high speed railway dropper failure–defect detection[J]. IEEE Transactions on Systems, Man, and Cybernetics: Systems, 2021, 51(7): 4466-4478. [7] 张姝, 王昊天, 董骁翀, 等. 基于深度学习的输电线路螺栓检测技术[J]. 电网技术, 2021, 45(7): 2821-2829. ZHANG S, WANG H T, DONG X C, et al. Bolt detection technology of transmission lines based on deep learning[J], Power System Technology, 2021, 45(7): 2821-2829. [8] 顾桂梅, 贾耀华, 温柏康. 基于YOLOv5s的接触网吊弦线和载流环缺陷识别算法[J]. 铁道科学与工程学报, 2023, 20(3): 1066-1076. GU G M, JIA Y H, WEN B K. Defect identification algorithm of dropper line and current-carrying ring of catenary based on YOLOv5s[J]. Journal of Railway Science and Engineering, 2023, 20(3): 1066-1076. [9] WANG C Y, BOCHKOVSKIY A, LIAO H Y M, et al. YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors[C]// Vancouver: Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2023. [10] LU S L, LIU X Y, HE Z X, et al. Swin-Transformer-YOLOv5 for real-time wine grape bunch detection[J]. Remote Sensing, 2022, 14(22): 5853. [11] LIU Z, LIN Y T, GAO Y, et al. Swin Transformer: Hierarchical bision transformer using shifted windows[C]//Montreal: Proceedings of the IEEE/CVF International Conference on Computer Vision, 2021. [12] NIU Z, ZHONG G, YU H. A review on the attention mechanism of deep learning[J]. Neurocomputing, 2021, 452: 48-62. [13] GEVORGYAN Z. SIoU loss: More powerful learning for bounding box regression[EB/OL]. (2022-05-25)[2023-08-28)]. https://doi.org/10.48550/arXiv.2205.12740. [14] HOU Q B, ZHOU D Q, FENG J S, et al. Coordinate attention for efficient mobile network design[C]// Nashville: Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2021. 第一作者:王晓明(1978—),男,副教授,硕士生导师,研究方向为人工智能,机器视觉,柔性传感器,物联网技术及应用。E-mail:2501@ecjtu.edu.cn。 通信作者:董文涛(1987—),男,副教授,硕士生导师,研究方向为传感器与智能检测。E-mail:wentao_dong@163.com。