基于机器视觉技术的城市轨道交通列车定位与测速系统研究*
2022-07-20张军贤蔡正凯
黄 涛 张军贤 蔡正凯 饶 鑫 单 奇**
(1.中车南京浦镇车辆有限公司, 210031, 南京; 2.西南交通大学机械工程学院, 610031, 成都∥第一作者, 正高级工程师)
城市轨道交通列车中常用的定位与测速技术有轮速法、多普勒测速定位、查询/应答器法、轨道电路法、卫星定位法等。其中,轮速法的运作原理简单,但当列车轮对发生空转、蠕动或打滑时会产生较大误差;多普勒测速法维护简单、应用范围广,在列车高速运行时的误差较小,但易受外部条件(如振动、安装误差、雨雪等)的影响[1];查询/应答器法定位精度高,特别适合消除列车定位过程中产生的累计误差,但该法无法实现列车的连续定位,且应答器铺设成本较高,保养和维护难度较大[2];轨道电路法技术成熟、可靠,但定位误差大,无法准确给出列车在区段内的具体位置和速度信息;卫星定位法定位精度高、维护方便,但在周围阻挡物多的地方(如山林、城市、隧道等处)存在定位盲区[3]。
本文针对现有列车定位与测速技术存在的缺陷,提出基于机器视觉技术的城市轨道交通列车定位与测速系统(以下简为“列车定位与测速系统”)。在列车运行速度不超过120 km/h的情况下,该系统能完成列车的实时定位与测速,轨道线路定位误差小于0.1 m,区间测速误差小于0.1 km/h。
1 列车定位与测速系统设计
本文提出的列车定位与测速系统由硬、软件两部分组成。其中,硬件部分包括视觉定位外机、视觉定位内机和视觉信标等3个部分,系统的硬件连接图如图1所示。
图1 列车定位与测速系统硬件连接图Fig.1 Hardware connection diagram of train positioning and speed measurement system
外机的主要作用是收集高帧频检测轨道线路的图像,并将图像准确、可靠地传输到内机,其需解决的主要技术问题包括:①外机的结构设计,以及外机的振动和空气动力学分析;②外机的照明、除尘、除雾、防振和抗电磁干扰等问题及其控制方法;③高速工业相机的自适应控制。内机的主要作用是根据外机高速采集的轨道线路图像,对轨道线路进行识别跟踪,融合视觉定位信标检测到的数据,实时、连续计算出当前列车的位置和速度,并将其计算结果上传到列车控制系统或远程监控中心。每个视觉信标均具有唯一的编码,通过识别视觉信标,可查询到视觉信标的安装信息,进而得到列车在轨道上的绝对位置。内机通过获取城市轨道交通列车车站附近视觉信标的精确定位信息,定期消除轨道线路视觉定位系统可能产生的累积误差。视觉信标解决的主要问题包括信标的制作、检测、编码和快速识别等。
列车定位与测速系统软件部分包括4个模块:图像采集模块、照明控制模块、图像处理模块及数据融合分析模块。其软件模块结构图如图2所示。其中:图像处理模块包含列车定位与测速系统的关键算法,主要包括视频图像采集和预处理、轨枕特征识别和跟踪、基于机器视觉的列车定位计算等过程;数据融合分析模块可对图像处理算法获取的列车位置信息与视觉信标获取的位置信息进行融合处理,进而消除视觉定位算法产生的累计误差,提高列车定位与测速系统的定位精度和可靠性;图像采集模块采集轨道图像;照明控制模块根据采集图像的质量评价指标,动态控制光源控制器,调整光源亮度,保障相机在工作范围内具有稳定、均匀、充足的光照,提高图像检测的准确率。
图2 列车定位与测速系统软件模块Fig.2 Software module of train positioning and speed measurement system
2 列车定位与测速系统算法研究
从轨道图像中识别轨枕涉及目标检测与跟踪技术,传统的基于特征的目标识别方法存在检测准确性低、特征提取过程复杂等缺陷。随着计算机视觉和人工智能技术的快速发展,基于深度学习的方法因其无需特征工程、适应性强和检测精度高等特点得到广泛应用,逐渐取代了传统的目标检测方法。根据模型训练方式可将基于深度学习的目标检测方法分为两种:单阶段目标检测模型和两阶段目标检测模型。单阶段目标检测模型采用回归方法,直接在输入的原图上提取特征并进行分类,其结构简单、检测速度快,可实现端到端的检测,但对于高密度目标和小目标的检测精度较差;两阶段目标检测模型基于区域的卷积神经网络,首先生成待选区域并提取特征,然后通过分类器进行分类,可检测出高密度目标和小目标,但其检测速度较慢[4]。
针对本文所提方法的识别目标类别少、检测速度要求高的特点,采用单阶段目标检测模型。目前,单阶段目标检测主要有YOLO算法、SSD(single shot mutibox detector,轻量级目标检测)算法、YOLO v2算法、YOLO v3算法等。经研究发现,YOLO v3算法在检测速度与精度间取得了较好的平衡,且国内外很多研究学者将其应用到目标检测领域。文献[5]使用航拍汽车数据集对YOLO v3算法和Faster R-CNN算法进行对比,证明了在精度相当的情况下,YOLO v3算法在灵敏度和处理时间上均优于Faster R-CNN算法。文献[6]将YOLO v3算法应用到无人机或卫星拍摄图像的地面目标检测问题中,实现了较高的检测能力和实时检测速度。文献[7]将简化的Tiny-YOLO算法应用到飞机目标检测中,提高了检测速度。文献[8]将YOLO v3算法应用于遥感图像中的飞机检测,加入密集相连模块,并结合多尺度特征检测,提高了飞机检测的精度和召回率。在查阅相关文献后,本文采用YOLO v3算法检测轨道图像中的轨枕和信标。
2.1 网络结构
图3为YOLO v3算法的结构图[9]。
注:“卷积×5”表示5个卷积层。其余表述含义类同。图3 YOLO v3网络结构图Fig.3 YOLO v3 network structure diagram
YOLO v3算法先将输入的图像缩放至416像素×416像素,再把该图像划分为S×S(S为自然数序列)个网格。每个网格负责预测中心落入该网格的目标,并计算出3个预测框。每个预测框均对应5+N个值,其中:“N”表示数据集中的类别总数;“5”代表5个预测边界框的属性信息,分别为中心点坐标(x,y)、预测框的宽度w和高度h、置信度。网格预测类别置信度得分的计算式为:
Con=Pco,iPoIou
(1)
式中:
Con——网格预测置信度的分数;
Pco,i——网格预测第i类目标的置信概率;
Po——目标落入该网格的概率,若有目标中心落入该网格,则Po=1,否则Po=0;
Iou——预测边界框与真实框的交并比。
最后,使用NMS(Non-Maximum Suppression,非极大值抑制)算法筛选出置信得分较高的预测框,作为网络模型的检测框。
2.2 模型训练
网络模型采用单阶段目标检测模型策略,不需生成候选框,直接完成特征提取并分类和回归的过程。因此,在训练过程中只需将样本信息进行类别和位置标记后,直接输入网络模型进行有监督的训练,直至损失函数的值小于设定的阈值,即可得到权重文件。损失函数L的计算式如式(2)所示,其中,训练中采用的损失函数包括3个部分[10]:目标检测置信度损失函数Lconf(o,c)、目标检测分类损失函数Lcla(O,C)及目标检测定位损失函数Lloc(l,g)。
L(O,o,C,c,l,g)=λ1Lconf(o,c)+
λ2Lcla(O,C)+λ3Lloc(l,g)
(2)
式中:
λ1、λ2、λ3——加权系数;
O——预测目标矩形框;
o——真实目标矩形框;
C——预测目标矩形框内存在目标的概率;
c——真实目标矩形框内存在目标的概率;
l——预测目标矩形框坐标偏移量;
g——真实目标矩形框与预测目标矩形框之间的位置偏移量。
目标检测置信度为预测目标矩形框内存在目标的概率,其损失函数采用二值交叉熵损失函数;目标检测分类损失表示网络预测第i个目标边界框内存在第j类目标的概率,同样采用二值交叉熵损失函数;目标检测定位损失函数则采用真实偏差值与预测偏差值差的平方和进行计算。
本文以YOLO v3网络模型为基础,结合轨道线路的图像特征,将其应用于轨道多目标检测。通过反复改进和优化网络参数,最终结果如表1所示。
表1 YOLO v3网络模型训练参数Tab.1 YOLO v3 network model training parameters
2.3 列车定位与测速系统算法流程
在列车定位与测速系统算法中,要求对相机采集的照片进行实时处理,其算法流程如图4所示。首先,加载训练数据集得到权重文件,对相机采集的每一帧图像进行处理,检测是否有轨枕并判断是否为新的轨枕;然后,对轨枕计数,根据轨枕间的距离和轨枕更新的时间计算列车的运行速度,其中轨枕识别模块主要执行上文所述目标检测算法。
图4 列车定位与测速系统的算法流程Fig.4 Algorithm flow chart of train positioning and speed measurement system
3 试验结果
3.1 数据处理平台
为提高图像处理速度以满足列车定位与测速的实时性,本文硬件配置如表2所示,在此基础上搭建软件环境:Windows 10系统,软件VS 2017、OpenCV 4.1、CUDA 10.0等,使用DarkNet-53框架。
表2 试验硬件环境配置Tab.2 Experimental hardware environment configuration
3.2 试验结果
3.2.1 模拟试验
模拟试验采用软件模拟不同车速时的轨道线路图像,列车定位与测速系统针对模拟图像完成列车定位与测速。图5 a)、图5 b)分别为列车速度从0匀加速到60 km/h、120 km/h后,匀速运行一段距离后再匀减速至列车停止这一过程中,系统检测得到的速度-位移曲线和理论速度-位移曲线的对比情况。模拟试验表明:在列车速度为120 km/h时,样机能准确进行识别、定位和跟踪轨道线路特征,轨枕计数没有发生丢失或重复计算等情况。
a) 列车最大运行速度为60 km/h
3.2.2 装车试验
在中车南京浦镇车辆有限公司新试验线进行了设备装车试验验证。试验设备安装如图6所示。具体试验方法为:在线路上设置信标,检测信标之间的轨枕数是否与实际检测数据一致。试验结果表明:本文研究的核心算法能够保证试验列车行驶时准确记录行驶过的轨枕数,做到不丢失、不虚增。
图6 试验设备安装效果图Fig.6 Test equipment installation renderings
设列车的平均运行速度为v,分别对低、中、高速行驶列车相机拍摄的照片进行检测,可准确地检测出轨枕和信标,检测结果如图7所示。在列车行驶速度不超过120 km/h时,轨枕的检测准确率为100%,平均检测1张图片用时5 ms,相机检测帧频可达200帧/秒。列车定位精度为轨枕间距,通过在2个轨枕间根据实时检测的车速进行插值,定位精度可达0.1 m,列车区间测速误差小于0.1 km/h,达到了项目研发预期的技术指标。
图7 不同车速下的检测效果Fig.7 Detection effect at different speeds
南京中车试验线最大试验车速为90 km/h,基于测试的安全性,本次测试的实际最高车速为80 km/h。而对于车速超过80 km/h的情况,本文采用实验室仿真的测速形式。仿真结果表明:列车在120 km/h速度下,本文所提算法的均能取得预期效果。
4 结语
本文分析了现有列车定位测速技术存在的缺陷,提出了一种新的完全基于机器视觉技术的列车定位与测速系统。模拟和线路试验表明:基于机器视觉技术研制一款适合城市轨道交通列车连续定位与测速装置是可行的,该装置不依赖于现有系统,且具有较高的精度和较低的成本,易于安装,提高了车辆行驶的安全性。本文提出的核心算法能够保证城市轨道交通列车在120 km/h速度时准确记录行驶过的轨枕数,做到不丢失、不虚增,达到了预期的设计指标。
本文所提算法的鲁棒性尚需在大量线路上进一步进行试验验证,列车定位与测速系统的硬件还需要进一步提高其集成度和防护等级。由于列车行驶时相机安装高度与轨面距离保持恒定,可以通过相机标定和轨枕检测框中心像素坐标计算出相邻轨枕的间距,从而解决实际线路上轨枕间距不等的问题。