Roof key components of metro vehicles detection algorithm based on YOLOv5 model
-
摘要:
针对目前地铁列车车顶部件检查主要依靠人工,劳动强度大、漏检率高等问题,提出了一种基于YOLOv5s模型的地铁列车车顶关键部件检测算法。考虑现场算力不足的实际情况,对YOLOv5s模型进行轻量化设计,将YOLOv5s模型Backbone中的C3模块替换为Ghost_C3模块,并改用Ghost卷积取代YOLOv5s模型中的传统卷积,从而降低模型复杂度和计算量;为补偿轻量化设计带来的模型性能降低的损失,在Ghost_C3模块中引入CA注意力机制,加强对关键部件的特征感知,从而提升模型精度。实验结果表明,改进的YOLOv5s模型每秒传输帧数为102.04 f/s,mAP为97.98%,Pars为4.47 MB,FLOPs为10.2 GB,相比于原有YOLOv5s模型,mAP提升1.36%,Pars减少33.98%且FLOPs减少36.65%,所提算法能够为后续的地铁列车车顶关键部件服役状态辨识提供技术支撑。
Abstract:This paper proposed a key component detection algorithm for metro train roof based on YOLOv5s model to address the current problems of manual inspection, high labor intensity, and high missed detection rate in metro train roof components. Considering the practical situation of insufficient on-site computing power, the paper presented a lightweight design for the YOLOv5s model, replaced the C3 module in the YOLOv5s model Backbone with the Ghost-C3 module, and used Ghost convolution instead of traditional convolution in the YOLOv5s model to reduce model complexity and computational complexity. To compensate for the loss of model performance caused by lightweight design, the paper introduced a CA attention mechanism in the Ghost-C3 module to enhance feature perception of key components and improve model accuracy. The experimental results show that the improved YOLOv5s model has a frame rate of 102.04 f/s, mAP of 97.98%, Pars of 4.47 MB, and FLOPs of 10.2 GB. Compared with the original YOLOv5s model, mAP has increased by 1.36%, Pars has decreased by 33.98%, and FLOPs has decreased by 36.65%. The proposed algorithm can provide technical support for identifying the service status of key components on the roof of subway trains in the future.
-
Keywords:
- YOLOv5s /
- lightweight /
- attention mechanism /
- roof of metro train /
- key components /
- target detection
-
随着我国地铁建设与运营的快速发展,地铁已经成为市民出行的首选交通方式[1]。地铁列车作为轨道交通的重要组成部分,其安全性得到运营部门的高度重视。车顶部件的服役状态与车辆的运行安全密切相关,但在车辆运行过程中时常会发生空调盖板松动、受电弓部件损毁等异常情况,严重影响地铁列车运行安全。
目前,地铁公司普遍采用人工定期登顶的方式进行车顶关键部件的检查,存在劳动强度大、漏检率高等问题,且检查效果依赖人工经验,不能适应智能化地铁运行安全保障的需求[2]。王克[3]、赵磊[4]采用视频录像监控技术对车顶进行录像,技术人员通过录像回放对车顶进行检查,并在发现异常时通知作业人员确认处理,该方法减少了登顶作业次数,但关键设备的辨识与状态判断仍主要依赖于人工经验;李建龙等人[5]采用线阵相机和车速校正法获取车顶高清图像,并与事先存储的车顶图片相对比,采用模板匹配法实现车顶关键部件的定位辨识,该方法精度高但依赖于标准图片,且线阵相机价格昂贵。随着深度学习相关技术的快速发展,以YOLO(You Only Look Once)为代表的神经网络在目标检测方面得到了大量应用。陈虎林等人[6]针对传统铁路机车车号定位检测模型泛化性较低等问题,提出了一种基于YOLOv4-tiny模型的机车车号定位检测方法,试验结果表明,该方法定位精度为99.44%,能够适应非限制场景下车号定位的检测需求;王域辰等人[7]提出了一种基于YOLO算法的螺栓缺失检测系统,实现了高速铁路客运站钢结构雨棚螺栓缺失检测,识别率可达85%以上,识别效果好且满足实时性要求;韦若禹等人[8]、卢艳东等人[9]提出了改进的YOLO算法,实现了轨道扣件检测;张馨等人[10]针对列车车厢人群密集、乘客相互遮挡等问题,改进了YOLOv5模型,引入了双向特征金字塔网络和损失函数,提高了检测精度;徐鑫等人[11]提出了一种基于深度学习的铁路异物侵入界限检测模型,改进了YOLOv5模型学习结构,在某客运专线试用结果表明,该模型能够有效检测出入侵动物,提高线路安全防护水平;赵仲瑜等人[12] 提出了3种基于 YOLOv5 的铁路接触网异物监测模型,可有效检测出接触网鸟窝和异物等,具有较高的准确性;傅荟瑾等人[13]提出了改进YOLOv5的高速铁路周界入侵人员检测方法,可有效检测出周界入侵人员,具有较高的准确性,并降低了漏报率和误报率。
借鉴上述研究内容,本文提出了一种基于YOLOv5s模型的地铁列车车顶关键部件检测算法。其主要内容是:改进YOLOv5s模型,采用Ghost模块和Ghost卷积分别对Backbone和Neck进行轻量化设计,减轻计算量;在Backbone中引入注意力机制,提升检测精度。基于某地铁列车车顶数据的实验结果表明,本文改进的YOLOv5s模型能够完成车顶关键部件的目标检测任务,且具有计算量小、精度高的优点。
1 YOLOv5s模型概述
YOLO由R. Joseph等人于2015年提出,是单阶段的目标检测算法[14]。为满足车顶在线检测现场的实时性要求,本文采用YOLOv5s作为基础模型。YOLOv5s模型结构主要由Input、Backbone、Neck和Head共 4层网络组成。
(1)Input层用于输入原始图片并进行预处理[15]。如采用1:3或1:8模式,将一张原始图片添加3张或8张随机图片,利用裁剪、缩放等拼接方法合成1张图片,用于模型训练,采用自适应锚框计算和自适应图片缩放相结合的方法,提升了模型的训练精度和速度。
(2)Backbone层用于特征提取,主要包括CBS、C3和SPPF(Spatial Pyramid Pooling with Fire)等模块。其中,CBS模块由Conv(Convolution)、BN (Batch Normalization)和SiLu(Sigmoid Linear Unit)组成;C3模块进行残差特征学习;SPPF模块进行任意大小特征图的自适应尺寸转换[14]。
(3)Neck层位于Backbone和Head层之间,Neck采用了特征金字塔[16]和路径聚合网络[17]的结构,对Backbone提取的特征图进行加工和融合,并传输到Head。特征金字塔负责自顶向下传达语义特征,而路径聚合网络负责自底向上传达定位特征,从而实现了从不同主干层对不同Head检测层的聚合。
(4)Head层包含了3个检测层,根据Neck传输的3种不同尺寸的特征图,输出3种尺度的特征图,YOLOv5s-6.x版本中,采用CIoU(Complete Intersection over Union)作为定位损失函数,采用NMS(Non-Maximum Suppression)选择边界框,使得网络具有更好的收敛速度和精度。
2 改进的YOLOv5s模型
2.1 Ghost模块
地铁列车运行环境受到天气和光照阴暗变化的影响,使得模型在提取特征图时会产生大量重复冗余的无用样本,拖慢模型整体运行速度。同时,在地铁正线运行场景下,由于缺乏良好的机房条件而无法提供强大的计算能力支持,因此在实际工作中应探索降低模型复杂度、减少模型参数和计算量的可行性,对模型进行轻量化设计。
韩凯等人[18]提出了一种神经网络基本单元Ghost模块,其主要思想是将部分卷积操作修改为线性操作:采用常规卷积操作生成本征特征图,再对本征特征图进行低成本的线性运算,获取Ghost特征图,最后将上述得到的本征特征图和Ghost特征图聚合得到最终的输出。
本文借鉴了上述思路,对Backbone进行了轻量化设计,用G_Bneck替换YOLOv5s模型C3模块中的Bottleneck,并选取stride=2,形成Ghost_C3模块,如图1所示。G_Bneck主要由2个堆叠的Ghost模块组成[19-20],第1个为扩展模块,用于增加通道数;第2个用于减少特征维度,以匹配捷径通道数,如图2所示。
为减轻模型的计算量,本文将Backbone和Neck的CBS模块中的传统卷积替换为Ghost卷积,从而将CBS替换为Ghost_CBS,实现了卷积计算的轻量化设计。但模型轻量化操作往往会一定程度的降低模型精度,为解决上述问题,本文引入注意力机制,用以提升模型性能。
2.2 注意力机制
注意力机制能快速筛选出焦点区域,在相同的资源情况下提高信息的处理速度和精度,本文引入SE(Squeeze-and-Excitation) [21]、CBAM(Convolutional Block Attention Module)和CA(Coordinate Attention) [22]等3种经典注意力机制,并作相关的对比实验。
(1)SE注意力机制考虑通道间的关系,制定了“特征重标定”策略,利用自动学习获得每个通道的重要度,从而进一步提升有用的特征。本文将SE注意力机制分别放在最后一个C3之后及SPPF之前,同时将SE注意力机制引入到Ghost_C3模块末尾,称为C3_SE。
(2)CBAM注意力机制集结了通道注意力和空间注意力机制,在维持模型结构简单性的同时,优化性能表现。本文将CBAM注意力机制添加在Backbone的Ghost_C3尾部,称为C3_CBAM。
(3)在SE注意力机制仅依靠通道注意力提升模型性能的基础上,CA注意力机制进一步兼顾考虑了其位置信息。本文将CA注意力机制添加在Backbone的Ghost_C3尾部,称为C3_CA。
2.3 改进模型
经过Ghost模块轻量化和增加注意力机制后,改进的YOLOv5s模型结构如图3所示,与经典的YOLOv5s模型相比较,可明显看出本文在Backbone层对C3模块的改进,以及在Backbone层和Neck层对CBS模块的改进。
3 实验与结果分析
3.1 数据采集
本文的车顶图像数据样本采集于某地铁站。根据现场高度、车宽及可视化需要,确定相机的分辨率、帧率、曝光时间等参数,相机为acA1600-20gc型相机,并配备5 mm焦距镜头M0528-MPW3。相机在地铁列车经过检测区域(简称:过车)时垂直向下拍摄。
3.2 数据集制作
本文实验共进行了2次过车拍摄,第1次过车拍摄了491张图片,第2次过车拍摄了554张图片,合计
1045 张,部分过车图片如图4所示。经统计,车顶关键部件的数量为:受电弓弓头19个、空调外机214个、空调固定螺帽444个、空调螺栓442个、天线34个、避雷器24个、瓷瓶24个。将1045 张图片随机按照8:2比例划分为训练集和验证集。3.3 仿真试验环境
本文采用Win10操作系统,使用Pytorch 1.6深度学习框架和Python 3.7编程语言,CPU为Intel Core i7-10700,内存32 GB,显卡为NVIDIA GeForce RTX 3060。模型训练相关参数如表1所示。
表 1 模型训练相关参数设置参数 参数值/名称 Optimizer Adam Epoch 400 Batch size 16 Initial learning rate 0.001 Momentum 0.973 3.4 评价指标
本文采用查准率(P,Precision)表示模型正确识别的正样本部件数与识别为正样本部件数的占比;采用查全率(R,Recall)表示模型正确识别的正样本部件数与实际的正样本数的占比;采用平均精度均值(mAP ,mean Average Precision)衡量部件的平均识别精度;采用计算量(FLOPs ,Floating point operations)衡量模型的计算复杂度,采用模型所包含的参数总量(Pars ,Parameters)衡量模型的空间复杂度,采用每秒传输帧数(FPS,Frames Per Second)衡量模型的识别速度。相关计算公式为
$$ {{{P}}}=\frac{{{{{T}{P}}}}}{{T}{P}+{F}{P}} $$ (1) $$ {R}=\frac{{T}{P}}{{T}{P}+{F}{N}} $$ (2) $$ {A}{P}={\int }_{0}^{1}{P}{{\mathrm{d}}}{R} $$ (3) $$ {m}{A}{P}=\frac{\displaystyle\sum _{{i}=1}^{{N}}{{A}{P}}_{{i}}}{{N}} $$ (4) 式(1)~式(4)中,TP为正样本被模型正确识别的部件数量;FP为负样本被模型错误识别的部件数量; FN为正样本被模型错误识别的部件数量;N为地铁列车车顶关键部件总数量。
3.5 注意力机制实验
为提升模型的精度,如2.2节所述分别引入不同注意力机制作对比实验,其性能对比如表2所示。由表2可知,YOLOv5s在增加注意力机制后,总体评价指标变好,其中,在P、R、mAP等指标上均有一定程度的提升,在 Pars、FLOPs指标上略有增长,在FPS指标上略微降低或保持不变。当C3_CA注意力机制参与后,相关的性能指标得到显著的提升,其中,P和R分别由95.64%、95.62%提升到97.22%、98.12%,分别提升了1.58%和2.5%,mAP由96.62%提升到97.99%,提升了1.37%,如图5所示。而FPS、Pars和FLOPs基本保持不变。因此,本文后续采用CA注意力机制。
表 2 不同注意力机制的性能比较模型 P R mAP FLOPs/G Pars/MB FPS/ (f·s-1) YOLOv5s 95.64% 95.62% 96.62% 16.1 6.71 142.86 YOLOv5s+SE 95.67% 96.65% 97.83% 16.1 6.74 131.58 YOLOv5s+C3_SE 96.94% 94.23% 97.8% 16.1 6.73 140.8 YOLOv5s+C3_CBAM 94.02% 96.61% 97.91% 16.3 6.77 140.31 YOLOv5s+C3_CA 97.22% 98.12% 97.99% 16.2 6.76 142.86 3.6 模型轻量化改进实验
本文的轻量化改进主要包括采用Ghost_C3模块替换传统的C3模块,以及在CBS模块中采用Ghost卷积取代传统的Conv2d卷积,而注意力机制则在C3模块末尾附加CA注意力机制。
本文在原有YOLOv5s模型网络基础上,逐步增加改进内容,包括Backbone中的Ghost_C3模块(B_Ghost_C3)、Backbone中的Ghost卷积(B_GhoConv)、Neck中的Ghost卷积(N_GhoConv)、Backbone中C3模块的CA注意力机制(B_C3_CA),从而形成4种改进的YOLOv5s模型。原有YOLOv5s模型为模型A,A与B_Ghost_C3模块结合为模型B,模型B与B_GhoConv模块结合为模型C,模型C与N_GhoConv模块结合为模型D,模型D与B_C3_CA模块结合为本文改进模型。表3给出了其性能指标参数对比。
表 3 不同模型的性能比较模型 mAP P R FPS/ (f·s-1) Pars/MB FLOPs/G 模型A 96.62% 95.64% 95.62% 142.86 6.71 16.1 模型B 96.24% 94.27% 94.57% 135.14 5.6 13.5 模型C 96.27% 94.96% 94.98% 129.87 4.86 10.7 模型D 96.42% 94.68% 95.32% 125 4.43 10.2 本文改进模型 97.98% 97.22% 98.12% 102.04 4.47 10.2 YOLOv5s在轻量化设计后且未引入注意力机制前, P、R和mAP性能指标均有所下降,且随着轻量化的深入,性能指标逐步下降,其中,P下降0.96%、R下降0.30%、mAP下降0.20%,P、R、mAP指标虽然下降,但下降幅度较小。FLOPs和Pars指标均明显变小,其中,FLOPs由16.1 GB最多减小为10.2 GB,减少36.65%;Pars由6.71 MB最多减小至4.43 MB,减少33.98%,可见轻量化效果较为显著。FPS指标变小,由142.86 f/s最多减小至125 f/s,但完全能够满足现场速度需求。
YOLOv5s在轻量化设计且引入注意力机制后, P、R和mAP性能指标与原YOLOv5s相比,均全面提升。其中,P为97.22%,提升了1.58%;R为98.12%,提升了2.50%; mAP为97.98%,提升了1.36%。FLOPs和Pars指标与YOLOv5s指标相比,降低明显,其中,Pars由6.71 MB降低为4.47 MB,减少33.38%;FLOPs由16.1 GB降低为10.2 GB,减少36.65%。FPS指标变小为102.04 f/s,但仍能够满足现场需求。
3.7 不同部件的识别实验
为进一步验证本文改进模型对不同部件的识别效果,图6给出了模型A和本文改进模型对不同关键部件识别的AP指标。由图6可知,针对AP指标较高(超过99%)的关键部件,如受电弓弓头、空调外机、空调螺帽和避雷器,改进前后模型的AP指标基本无变化;针对天线和空调螺栓,模型A的AP指标分别为94.61%和96.90%,本文改进模型AP指标提升至95.63%和97.55%,分别提升了1.02%和0.65%;针对瓷瓶的AP指标提升非常明显,由87.21%提升到95.43%,提升了8.22%。
本文改进模型对地铁列车车顶不同关键部件的检测结果如图7所示,其中,图7(a)为瓷瓶和避雷器的检测结果,图7(b)为弓头的检测结果,图7(c)为空调外机、空调螺栓和空调螺母的检测结果,图7(d)为天线的检测结果。可以看出,本文改进模型具有良好的性能,能够较为准确地识别地铁列车车顶关键部件。
4 结束语
本文针对地铁车顶部件识别的实际需求,提出了一种基于YOLOv5s模型的地铁列车车顶关键部件检测算法。在原始YOLOv5s模型基础上,通过集成Ghost模块实现轻量化设计,从而降低模型的复杂度,减少模型参数和计算量;为补偿轻量化操作带来的模型精度损失,进一步引入CA注意力机制来提升模型性能。实验结果表明,本文所提算法能够为后续的地铁列车车顶关键部件服役状态辨识提供有效技术支撑。
-
表 1 模型训练相关参数设置
参数 参数值/名称 Optimizer Adam Epoch 400 Batch size 16 Initial learning rate 0.001 Momentum 0.973 表 2 不同注意力机制的性能比较
模型 P R mAP FLOPs/G Pars/MB FPS/ (f·s-1) YOLOv5s 95.64% 95.62% 96.62% 16.1 6.71 142.86 YOLOv5s+SE 95.67% 96.65% 97.83% 16.1 6.74 131.58 YOLOv5s+C3_SE 96.94% 94.23% 97.8% 16.1 6.73 140.8 YOLOv5s+C3_CBAM 94.02% 96.61% 97.91% 16.3 6.77 140.31 YOLOv5s+C3_CA 97.22% 98.12% 97.99% 16.2 6.76 142.86 表 3 不同模型的性能比较
模型 mAP P R FPS/ (f·s-1) Pars/MB FLOPs/G 模型A 96.62% 95.64% 95.62% 142.86 6.71 16.1 模型B 96.24% 94.27% 94.57% 135.14 5.6 13.5 模型C 96.27% 94.96% 94.98% 129.87 4.86 10.7 模型D 96.42% 94.68% 95.32% 125 4.43 10.2 本文改进模型 97.98% 97.22% 98.12% 102.04 4.47 10.2 -
[1] 申慧涛,郑 亮,李树凯,等. 基于生成对抗网络的地铁OD需求短时预测[J]. 铁道科学与工程学报,2022,19(6):1530-1539. [2] 钱存元,蔡庆丰. 机车车顶设备状态及异物检测技术现状与发展[J]. 电子测量技术,2021,44(10):96-102. [3] 王 克. 受电弓及车顶状态动态检测系统的研究应用[J]. 铁道机车与动车,2019(7):46-48. [4] 赵 磊. 受电弓及车顶动态检测系统应用分析[J]. 铁道机车车辆,2020,40(1):94-97. DOI: 10.3969/j.issn.1008-7842.2020.01.19 [5] 李建龙,王亚柯. 受电弓状态及车顶异常动态监视和预警系统研究与应用[J]. 机电信息,2020(14):47-48. DOI: 10.3969/j.issn.1671-0797.2020.14.027 [6] 陈虎林,王焕民,米奡蔚. 非限制场景下铁路机车车号定位检测方法[J]. 铁路计算机应用,2023,32(4):18-23. DOI: 10.3969/j.issn.1005-8451.2023.04.04 [7] 王域辰,冯海龙,刘伯奇. 基于YOLO算法的高速铁路客运车站钢结构雨棚螺栓缺失检测系统[J]. 铁路计算机应用,2022,31(6):1-5. DOI: 10.3969/j.issn.1005-8451.2022.06.01 [8] 韦若禹,李舒婷,吴松荣,等. 基于改进YOLO V3算法的轨道扣件缺陷检测[J]. 铁道标准设计,2020,64(12):30-36. [9] 卢艳东,李积英,王筱婷. 一种基于改进YOLOv3-tiny的轻量级轨道紧固件检测算法[J]. 铁道标准设计,2022,66(7):41-47. [10] 张 馨,董承梁,汪晓臣,等. 基于改进YOLOv5s的列车车厢客流密度检测方法研究[J]. 铁路计算机应用,2022,31(10):10-15. [11] 徐 鑫,潘 杰,曹利安,等. 基于深度学习的铁路异物侵限检测模型[J]. 铁路计算机应用,2023,32(10):7-12. DOI: 10.3969/j.issn.1005-8451.2023.10.02 [12] 赵仲瑜,唐伟忠,张文辉,等. 基于YOLOv5的铁路接触网异物检测模型初步研究[J]. 铁路计算机应用,2024,33(2):13-18. [13] 傅荟瑾,史天运,王 瑞,等. 基于改进YOLOv5的高铁周界入侵人员检测方法研究[J]. 铁道标准设计,2023,67(9):162-169. [14] 郭 磊,王邱龙,薛 伟,等. 基于改进YOLOv5的小目标检测算法[J]. 电子科技大学学报,2022,51(2):251-258. DOI: 10.12178/1001-0548.2021235 [15] Redmon J, Divvala S, Girshick R, et al. You only look once: unified, real-time object detection[C]//Proceedings of 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 27-30 June, 2016, Las Vegas, NV, USA. New York, USA: IEEE, 2016: 779-788.
[16] Lin T Y, Dollár P, Girshick R, et al. Feature pyramid networks for object detection[C]//Proceedings of 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 21-26 July, 2017, Honolulu, HI, USA. New York, USA: IEEE, 2017: 936-944.
[17] Liu S, Qi L, Qin H F, et al. Path aggregation network for instance segmentation[C]//Proceedings of 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition, 18-23 June, 2018, Salt Lake City, UT, USA. New York, USA: IEEE, 2018: 8759-8768.
[18] Han K, Wang Y H, Tian Q, et al. GhostNet: more features from cheap operations[C]//Proceedings of 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), 13-19 June, 2020, Seattle, WA, USA. New York, USA: IEEE, 2020: 1577-1586.
[19] 许 伟. 基于卷积神经网络的轻量化垃圾检测算法研究[D]. 杭州:浙江理工大学,2021. [20] 赵瑞霞. 基于深度学习的图像修复技术研究[D]. 西安:西安工业大学,2021. [21] Hu J, Shen L, Sun G. Squeeze-and-excitation networks[C]//Proceedings of 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition, 18-23 June, 2018, Salt Lake City, UT, USA. New York, USA: IEEE, 2018: 7132-7141.
[22] Hou Q B, Zhou D Q, Feng J S. Coordinate attention for efficient mobile network design[C]//Proceedings of 2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), 20-25 June, 2021, Nashville, TN, USA. New York, USA: IEEE, 2021: 13708-13717.
-
期刊类型引用(3)
1. 曲涛,景宁,张仁义,洪希仁,常伟,王亚茹. 基于机器学习的辅助逆变器进风滤网堵塞诊断. 铁道车辆. 2024(03): 80-83 . 百度学术
2. 胡平. 铁路机车车辆运行故障监测诊断研究. 粘接. 2021(06): 169-173 . 百度学术
3. 王凯,刘成瑞. 动车组智能化网络控制系统研究. 智慧轨道交通. 2021(05): 13-18 . 百度学术
其他类型引用(0)