深度学习目标检测算法在货运列车车钩识别中的应用
2020-11-18郭忠峰张渊博王赫莹任仲伟
郭忠峰,张渊博,王赫莹,任仲伟
深度学习目标检测算法在货运列车车钩识别中的应用
郭忠峰1,张渊博1,王赫莹1,任仲伟2
(1. 沈阳工业大学 辽宁省智能制造与工业机器人重点实验室,辽宁 沈阳 110870;2. 贵州理工学院,贵州 贵阳 550009)
铁路货运列车的自动摘钩是实现驼峰作业自动化的重要环节,为了完成货运列车自动摘钩工作,需要实现车钩的快速准确识别。通过当前广泛应用的YOLO_v2网络模型,研究针对货运列车在正常工作条件下车钩的识别问题,通过K-means聚类算法对YOLO_v2网络模型中anchor的个数进行调整优化,找出适用于本次车钩识别的最优anchor个数以及宽高维度,并通过训练自制具有明显目标特征数据集来获取更加准确的权重。结果表明改进YOLO_v2模型在精确度上达到92.6%;在召回率上达到了91.8%;在FPS上达到45帧/s,改进的YOLO_v2模型达到了预期设计目标。
改进YOLO_v2模型;货运列车;车钩识别;K-means聚类算法
随着国民经济的日益发展,铁路运输任务愈来愈重,为了提高车箱周转率、缩短货物运输时间,从而设计出了自动摘钩机器人[1]。自动摘钩机器人分别由车钩识别系统、同步运动定位系统、机械臂抓取提钩系统3部分组成,车钩识系统别作为自动摘钩机器人的一部分,其车钩检测反应速度和车钩识别准确率对自动摘钩机器人工作完成度具有重要影响。当前机器视觉以及目标检测技术飞速发展,通过基于深度学习的算法框架,能够快速地从图像中检测出目标特征,机器视觉中关于图像识别有四大类任务,分别是分类、定位、检测以及分割,其核心任务是找出图像中所有感兴趣的目标(物体),并确定它们的位置和大小。
1 目标检测算法介绍
早期的目标检测方法通常是通过提取图像的一些目标特征,使用 DPM (Deformable Parts Model)模型,用滑动窗口的方式来预测具有较高score的bounding box。但是其精度较低而且用时较长,后来出现了object proposal方法,相比于滑动窗口这种穷举的方式,减少了大量的计算,提高了检测效率,同时在性能上也有很大的提高。
当前在目标检测方面的深度学习方法主要分为大类:two stage的目标检测算法以及one stage的目标检测算法。
Two stage的目标检测算法也叫做基于侯选区域的深度学习目标检测法,先由算法生成一系列候选区域,再通过卷积神经网络进行特征提取、类别及位置判断,来完成目标检测任务,代表性算法有R-CNN[2]和SPP-NET[3]等。
One stage的目标检测算法则不产生候选框,直接将目标边框定位问题转化为回归问题处理,实现了实时的端到端目标检测,代表性算法有YOLO[4]和SSD[5]等。
2 YOLO卷积神经网络目标检测算法
2015年,Joseph Redmon和Ali Farhadi等提出了YOLO(You Only Look Once )算法,这是一种基于单个神经网络的目标检测算法,其网络结构是在GoogLeNet[6]模型之上建立的。YOLO在理念上遵循端到端的训练和实时检测,能够实现一次性检测多个Box的位置和尺寸的神经网络,最大的优点是检测速度快。作为第1代的YOLO算法,即YOLO_v1算法,同之前的Faster R-CNN目标检测算法相比,在实时检测速度上有大幅提升,但相应的在预测精度上有一定程度的降低[7]。
2016年,Redmon等推出了YOLO的第2代的版本YOLO_v2,相较于YOLO_v1算法模型,YOLO _v2利用批量规范化原理,通过对数据进行格式统一、降噪处理以及均衡化等能够显著提高训练的速度以及准确度;将训练检测网络从YOLO中的分辨率从224×224提升到448×448,从而使得mAP提升了大约4%;更改了基础网络使得向前传播运算量提升了3倍(1次);去掉了全连接层,分辨率改为13×13,从而提高了召回率(Recall);在YOLO _v2中同样采用了3×3卷积核,但是在3×3卷积核之间插入了1×1卷积核进行特征压缩;使用维度聚类和直接预测的方法对anchor改进,提升mAP。
2.1 基于改进YOLO_v2车钩识别
当前国内货运列车的车钩主要分为上提钩式车钩和下提钩式车钩,如图1所示的白框处是视觉上直观区分两者的重要标志,对于上提钩式车钩,提钩人员只需转动车钩,即可完成提钩作业。对于下提钩式车钩,提钩人员需先向上提起车钩,然后再转动车钩[8],因为其工作原理的不同,为了保证图像目标识别的精确度和实时性,本文以当前具有最佳识别效果的YOLO_v2为基础网络进行改进,以解决车钩的识别以及分类问题。
(a) 上提钩式车钩手柄;(b) 下提钩式车钩手柄
尽管YOLO_v2在VOC以及COCO测试集上都有很优秀的表现,但是针对本次货车车钩检测其得到的训练权重存在识别精确率低,识别效果不理想的情况,在实际测试中发现 anchor的维度[9]对精确率以及检测速度影响较大,尽管在训练过程中对anchor的宽高值进行调整,若能够预先直接设定anchor的维度值,在训练过程中能得到更好的权重。
YOLO_v2通过K-means[10]聚类方法训练得到anchor的宽高维度,获得了5个anchor,对于本文的车钩识别在召回率和模型复杂度之间进行平衡之后,不需要多达5种类型的anchor。机械手臂在摘钩之前通过固定视觉角度采集车钩的图像信息,通过在自行标定的测试集图片中的情况分析,能够完成车钩检测需要3种anchor,然后利用K-means聚类算法对目标框统计规律进行维度聚类分析并验证是否是最优的anchor维度。
K-means是一个简单快捷的聚类算法,原理是将数据分为很多个簇或者类别,同一个簇内的数据的间距趋向于最小,根据这个原理去划分出有明显区别的K个类别,则其定义的损失函数如(1)所示,
其中将数据(x)聚合为K类,聚合后的类别分别为(t),每个聚合的中心分别为(μ)。
YOLO_v2通过anchor直接预测bounding boxes的坐标时,坐标是相对于栅格边长的比例(0到1之间),因此要将anchor的宽和高也转换为相对于栅格边长的比例。通过使用K-means聚类算法对数据集中目标框的宽高进行维度聚类分析,直到相邻2次聚类的结果相同时停止迭代过程,然后做出目标函数变化曲线图,对于聚类中心来说,当聚类中心多的时候容易引起过拟合问题,相反的聚合中心少的时候容易造成欠拟合,本文采用误差平方的变化来评价检测结果的好坏,即当聚合中心个数时候其误差平方下降速度会很快,当聚合中心个数多的时候其下降速度会明显的减缓[11],从图2的图像上来看就是曲线发上明显弯折的地方,即=3,最终的聚类中心点坐标作为archor的宽高纬度,即anchor总共有3个,其参数分别为(1.46,0.71),(1.64,1.74),(9.86,4.01)。
3 训练测试及评价指标
3.1 硬件平台及测试集
本文实验平台配置如表1所示。
图2 目标函数曲线变化
表1 实验设备配置
本文通过运用改进YOLO-v2算法来实现对于货运列车车钩的实时识别,从而使自动摘钩机器人能够进行准确的摘钩作业。目标数据集包括4 000张图片,训练集图片包含3 500张自制的货运列车车钩的图片及其标注的特定场景图片;测试集图片包含500张自制的货运列车车钩的图片,其中训练集中的车钩用LabelImg进行标定,标定的标签包含4种输出情况,即A手柄(A-handle)、A基座(A- pedestal)、B手柄(B-handle)及B基座(B-pedestal),正确的输出为A手柄及A基座或B手柄及B基座被同时正确的选的标定,其他的输出均视为错误。
3.2 性能对比
车钩手柄检测效果如图3所示,其中,白实线包围框为改进YOLO_v2车钩手柄检测模型预测结果,红实线包围框是事先标注的目标真实值,图3(a)为上提钩式车钩,图3(b)为下提钩式车钩。通过对比目标数据集中图片的预测结果与真实值的重合率达到了98.6%,达到了实验要求。
(a) 上提钩式车钩;(b) 下提钩式车钩
针对改进YOLO_v2鲁棒性检测实验如图4所示,验证了在不同光照、局部遮挡以及车钩部分缺损条件下的车钩识别准确率[12],图4(a)和图4(b)分别为阴暗条件下和局部遮盖条件下检测结果,在正午最强光照以及傍晚无光照条件下车钩都能被识别;图4(c)和图4(d)分别为车钩局部遮挡条件下和车钩部分缺损条件下检测结果,测试集检测结果表明,当车钩被遮挡或者缺损部分不大于46%时,均能够识别检测出车钩。
表2中通过比较Faster R-CNN,YOLO _v2以及改进YOLO _v2模型的识别结果,改进YOLO _v2在anchor数量减少的情况下有更高的平均重叠率。
表3为测试集阶段3种算法对于车钩图片识别的精确度、召回率以及每秒检测帧数的统计数据,通过对图片统计以及精确度和召回率的计算,改进YOLO_v2算法相对于另外2种算法拥有更好的 表现。
测试数据集上的检测用时如下:改进YOLO _v2模型检测图片的平均用时为22 ms,即45帧/s;YOLO _v2检测一张图片平均用时为 25 ms,即40帧/s;Faster R-CNN检测一张图片平均用时为63 ms,即16帧/s。可以看出,改进YOLO _v2的检测速度是 Faster R-CNN的 3倍,比YOLO _v2也快。可见改进YOLO _v2比Faster R-CNN及YOLO _v2的运算效率都高。在对货运列车车钩的检测上,改进YOLO _v2模型更能满足实时性的要求。
(a) 阴暗条件下检测图片;(b) 高曝光条件下检测图片;(c) 车钩局部遮挡图片;(d) 车钩部分缺损图片
表2 候选框生成结果对比
表3 测试集结果对比
如图5(a),5(b)和5(c)分别为改进YOLO_v2,YOLO_v2以及Faster R-CNN3种算法在测试图片集中对上提钩式车钩的测试集结果,图6(a),6(b)和6(c)分别为改进YOLO_v2,YOLO_v2以及Faster R-CNN3种算法在测试图片集中对下提钩式车钩的测试结果。相较于YOLO_v2和Faster R-CNN算法,改进YOLO_v2算法优化了检测过程,大幅缩减检测时间,降低了错检、漏检情况,检测效果明显变好。
(a)改进YOLO_v2算法检测图;(b) YOLO_v2算法检测图;(c)Faster R-CNN算法检测图
(a) 改进YOLO_v2算法检测图;(b) YOLO_v2算法检测图;(c) Faster R-CNN算法检测图
4 结论
1) 引入了目标检测算法进行货运列车车钩识别方法,相较于传统电气信号控制系统降低了系统的复杂程度,增大了驼峰轨道的空间利用率,提升了车钩目标追踪的灵活性和准确性。
2) 相较于Faster R-CNN及YOLO_v2算法,改进YOLO_v2通过K-means聚类算法对anchor的目标框个数进行了调整优化,在对精确率、召回率及检测速度3方面的测试中都有很大提升。
3) 测试了改进YOLO_v2算法在不同光照、局部遮挡以及车钩部分缺损条件下的识别情况,根据识别结果证明改进YOLO_v2算法具有良好的鲁棒性,满足工作条件下车钩识别功能。
[1] 刘超颖, 臧丽超, 王战中, 等. 铁路货车摘钩机器人的动力学分析与仿真[J]. 机床与液压, 2013, 41(17): 142−145. LIU Chaoying, ZANG Lichao, WANG Zhanzhong, et al. Dynamics analysis and simulation of railway freight car unhooking robot[J]. Machine Tool and Hydraulic Pressure, 2013, 41(1): 142−145.
[2] Girshick R, Donahue J, Darrell T, et al. Rich feature hierarchies for accurate object detection and semantic segmentation[C]// Proceedings of The IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Columbus: IEEE, 2014: 580−587.
[3] HE Kaiming,ZHANG Xian. Spatial pyramid pooling in deep convolutional networks for visual recognition[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2015, 37(9): 1904−1916.
[4] Redmon J, Divvala S, Girshick R, et al. You only look once: Untified, real-time object detection[C]// IEEE Conferenceon Computer Vision and Patteren Recongnition (CVPR). Las Vegas: IEEE, 2016: 779−788.
[5] LIU W, Angulovd, Erhand, et al. SSD: Single shot multi-box detector[C]// Proceedings of the 2016 European Conference on Computer Vision. Springer: IEEE, 2016: 21−37.
[6] Szegedy C, LIU W, JIA Y Q, et al. Going deeper with convolutions[C]// Proceedings of the 2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Boston: IEEE, 2015: 1−9.
[7] 王超, 付子昂. 基于YOLO_V2模型的交通标识检测算法[J]. 计算机应用, 2018, 38(增2): 276−278. WANG Chao, FU Ziang. Traffic sign detection algorithms based on YOLO_V2 model[J]. Computer Application, 2018, 38(Suppl 2): 276−278.
[8] 臧丽超. 铁路货车摘钩机器人设计与仿真研究[D]. 石家庄: 石家庄铁道大学, 2013. ZANG Lichao. Design and simulation of a coupler removal robot for railway freight cars[D]. Shijiazhuang: Shiiazhuang Tiedao University, 2014.
[9] 吕欣然, 陈洁, 张立保, 等. 基于显著特征聚类的遥感图像感兴趣区域检测[J]. 光学学报, 2015, 35(增1): 103−108. LÜ Xinran, CHEN Jie, ZHANG Libao, et al. Detection of region of interest in remote sensing images based on significant feature clustering[J]. Journal of Optics, 2015, 35(Suppl 1): 103−108.
[10] 张素洁, 赵怀慈. 最优聚类个数和初始聚类中心点选取算法研究[J]. 计算机应用研究, 2017, 34(6): 1617− 1620. ZHANG Sujie, ZHAO Huaici. Research on the optimal clustering number and the selection of the initial clustering center[J]. Computer Applied Research, 2017, 34(6): 1617−1620.
[11] 王曙光, 吕攀飞. 改进YOLO_V2的装甲车辆目标识别[J]. 计算机与现代化, 2018, 38(9): 68−71, 79. WANG Shuguang, LÜ Panfei. Target recognition of armored vehicle based on improved YOLO_V2[J]. Computer and Modernization, 2018, 34(9): 68−72.
[12] 郭敬东, 陈彬, 王仁书, 等. 基于YOLO的无人机电力线路杆塔巡检图像实时检测[J]. 中国电力, 2019, 52(7): 17−23. GUO Jingdong, CHEN Bin, WANG Renshu, et al. Real time detection of uav power line tower inspection image based on YOLO[J]. China Electric Power, 2019, 52(7): 17−23.
Application of deep learning target detection algorithm in freight train coupler recognition
GUO Zhongfeng1, ZHANG Yuanbo1, WANG Heying1, REN Zhongwei2
(1. Key Laboratory of Intelligent Manufacturing and Industrial Robot of Liaoning Province, Shenyang University of Technology, Shenyang 110870, China; 2. Guizhou Institute of Technology, Guiyang 550009, China)
Aiming at the complex problem that the EMU (Electric Multiple Units) trains operation need to consider punctuality, energy saving, safety and comfort, the operation time was regarded as the standard of passenger satisfaction, and the energy consumption was seen as the standard of the railway company satisfaction. Meanwhile, considering the influence of electrical phases in order to make the train operation more in line with the actual situation, a multi-objective optimization model for the train operation was established, which was constrained by safety, track characteristics and passenger comfort and so on. Then, a kind of algorithm combining NSGA-II (Non-dominated Sorting Genetic Algorithm-II) with golden ratio technology was proposed to solve the problem of uneven individuals distribution in the solution space when using NSGA-II to optimize. The tests of the algorithms show that the golden ratio NSGA-II algorithm has better distribution and convergence than the NSGA-II algorithm. Finally, taking CRH3of a certain section of Wuhan-Guangzhou line as a simulation case, some simulation results are shown, which further indicate that the model and the proposed algorithm are feasible.
improved YOLO_v2 model; freight train; coupler recognition; K-means clustering algorithm
TP391
A
1672 − 7029(2020)10 − 2479 − 06
10.19713/j.cnki.43−1423/u.T20191164
2019−12−24
辽宁省教育厅资助项目(LQGD2017034)
郭忠峰(1978−),男,辽宁沈阳人,副教授,博士,从事机器人技术研究;E−mail:13146221@qq.com
(编辑 阳丽霞)