基于车载激光雷达的机车可通行区域检测

2021-09-25 10:51刘邦繁张慧源
控制与信息技术 2021年4期
关键词:激光雷达杆塔机车

刘邦繁,张慧源,李 晨,曾 祥

(株洲中车时代电气股份有限公司,湖南 株洲 412001)

0 引言

随着轨道交通智能化的发展,自动驾驶将成为未来的发展方向。自动驾驶车辆是利用车载传感系统来感知周围环境,并自行规划行车路线控制车辆成功抵达目的地的智能化交通,自动驾驶车辆一般安装激光雷达和摄像头作为车载传感器,用于检测道路区域和障碍物区域[1]。而环境感知作为自动驾驶的核心模块,通过激光雷达获取周围环境的三维点云,再通过检测算法检测可通行区域,为路径规划及行车决策提供依据[2-3]。

目前三维激光雷达处理算法主要有基于栅格地图的分割算法和基于深度图的分割检测[4]。基于栅格地图的分割算法采用栅格高度差进行地面分割,该方法受环境影响较大,对结构化的平坦路面分割效果较好;而轨道交通场景中轨道与地面之间有一定的起伏,该方法分割轨道的效果不理想。基于深度图的分割检测先将点云映射到深度图上,再通过扫描线的角度阈值进行地面分割。该算法对角度的跳变比较敏感,适用于结构化的路面,对于轨道交通路面平缓变化的场景其分割效果较差。本文基于激光雷达在汽车自动驾驶方面的研究成果,结合轨道交通行业特点,提出了一种机车可通行区域检测的算法。该算法首先通过检测当前轨道获得机车行驶区域;再通过检测输电网杆塔获取警戒区域;最后将警戒区域与行驶区域合并构成整个机车可通行区域。

1 基于激光雷达的轨道检测

本文提出的基于激光雷达的轨道检测算法首先需对激光雷达采集到的三维点云进行数据预处理来提高点云质量并降低数据量,然后基于局部高度差方法提取出轨道点云,再通过随机采样一致性算法进行轨道拟合,最后进行轨道匹配输出最终的轨道信息。

1.1 点云数据预处理

激光雷达在发射激光获取周围环境信息形成三维点云时,由于激光雷达设备精度、被测物体表面性质以及电磁波衍射特性等外界干扰和环境因素的影响,采集到的点云数据可能存在噪声,并且由于激光雷达视场角大、视野广,每帧采集到的点云数据量较大。因此,为了提高检测算法的性能和效率,需对激光雷达接收到的数据进行预处理。预处理步骤为:首先通过直通滤波算法提取感兴趣区域,保留机车正前方一定范围内的点云;然后通过统计离群点滤波算法过滤稀疏的噪声点云,并基于激光雷达的外参标定信息将点云坐标转换到车体坐标系下[5]。

直通滤波算法是通过设置一定的参数范围,允许该范围内的数据通过,从而滤除参数范围之外的点云。统计离群点滤波算法是对每一个点的邻域进行统计分析,剔除不符合标准的离散点云。

激光雷达接收到的原始点云集记为P={p1,p2, …,pn},其中pi为三维空间中的点,即

pi=(xi,yi,zi),xi∈R,yi∈R,zi∈R,,其中R为实数集。

给定滤波参数X1,X2,Y1,Y2,Z1,Z2,直通滤波后的点云集,其中′为三维空间中的点,即,满足

直通滤波结果如图1所示,图中矩形区域为给定的直通滤波参数所形成的范围,落在矩形区域外的点云将会被滤除,只留下落在矩形区域内的点。

图1 直通滤波示意图Fig. 1 Schematic diagram of through filter

1.2 轨道点云提取

点云提取本质上是一个点云分割的过程,即通过点云分割筛选出目标点云。目前三维点云分割常用的方法是基于栅格高度差分割的方法。该方法首先将XY平面按照一定的尺寸划分成二维网格,然后计算每个网格内Z方向点云的高度差值,再根据设定的阈值判断网格中是否含有障碍物。该算法受地面因素影响较大,适用于在结构化的平坦路面上提取目标。然而在轨道交通场景,轨道铺设于地面的枕木之上(图2),有一定的起伏,在局部范围内激光雷达返回的轨道点云略高于附近的点云,在空间上表现为具有一定高度的连续跳变。轨道横截面点云示意如图3所示,图中点为地面点云,五角星为轨道上的点云。由于轨道与地面交界部分的点云高度特征不明显,采用栅格化的方法无法准确有效地提取出轨道点云。

图2 轨道示意图Fig. 2 Schematic diagram of rail

图3 轨道横截面点云示意图Fig. 3 Schematic diagram of point cloud of rail cross section

基于轨道点云的分布特征,本文采用局部区域搜索算法提取轨道点云,局部区域搜索示意如图 4所示。其具体步骤如下:对于待分析的点云集,任取其中一个点,该点的局部区域定义为以该点为中心、半径为r的范围;计算该局部区域内的点集高度特征,然后通过判别模型判定是否属于轨道点。判别模型如下:该点是其局部区域内的最高点,该局部区域内的高度差等于轨道高度。

图4 局部区域搜索示意图Fig. 4 Schematic diagram of local area search

1.3 轨道拟合

通过局部区域搜索方法提取出离散的轨道点云,再通过曲线将这些离散的点连起来就形成了轨道曲线,因此轨道拟合问题被转化为曲线拟合问题。常见的曲线拟合算法有最小二乘法和随机采样一致性法(random sample consensus, RANSAC)。最小二乘法通过最小化误差平方和来求解参数的最佳逼近,是基于整体误差最小的思想,拟合结果受异常点影响较大,算法鲁棒性较差。RANSAC是一种稳健估计的方法,通过选择数据集的一组随机子集来拟合目标,经过重复迭代估计出模型参数,算法受异常点干扰较小、鲁棒性较好。

由于正常轨道是成对存在的,通过轨道点云提取过程提取出来的点云集包含2条以上的轨道点云,因此在单条轨道拟合中需要排除其他轨道点云的干扰。故本文采用RANSAC算法进行轨道拟合。

RANSAC算法最早由Martin A. Fischler和Robert C. Bolles于1981年提出[6],基本假设是数据由“局内点”组成,其分布可以用某个数学模型来解释,“局外点”是不能适应该模型的数据。RANSAC算法具体流程如下:

(1) 数据集采样。从数据集中随机采样m个点(m为待估计模型的自由度)。

(2)模型估计。用第一步中选择的点集对模型进行拟合,估计出模型参数。

(3)局内点统计。遍历所有数据点集,计算该点与第二步中估计出的模型的距离d1,并与设定阈值ε比较,若d1≤ε,则该点为“局内点”,反之为“局外点”,迭代完成后记录本轮迭代的局内点数量。

(4)多轮迭代。重复步骤(1)至步骤(3)n次。

(5)模型选择。经过n轮迭代,估计出了n组模型参数及每轮包含的局内点数,选择局内点数量最多的轮数对应的参数作为最终的模型参数。

由于轨道点云是连续的,因此可以通过局内点的数据分布判断拟合出来的模型是否满足轨道要求,从而判断轨道拟合是否成功。另外,由于提取出的轨道点集可能包含多条轨道,所以需要拟合出多个模型;而RANSAC算法每次只能拟合出一条曲线,因此需要多次运行RANSAC算法,每当成功拟合一条轨道时,将其从轨道点集中删除,直到把所有的轨道曲线全部拟合出来。

1.4 轨道匹配

基于轨道的几何特性,正常情况下轨道是成对存在的,并且为一对平行线,我国标准轨距为1 435 mm,因此本文通过计算两轨道曲线之间的距离进行轨道配对,找出属于同一线路的两条轨道。如图5所示,用方向向量表征轨道曲线的方向,轨道1的方向向量为V1,轨道2的方向向量为V2,两条轨道的距离为d,则将轨道距离与标准轨距偏差不大的轨道线判定为同一对轨道,即

图5 轨道距离示意图Fig. 5 Schematic diagram of rail distance

式中:δ——阈值,根据实际应用设定。

由于感兴趣区域中可能存在多条轨道,需要从中确定出当前轨道的参数,从而进行机车行驶区域的划分。在数据预处理阶段,基于激光雷达的外参标定信息对原始激光点云进行了坐标变换,得到车体坐标系下的激光点云,激光点云以车体中心线向两侧展开扫描。基于上述标定信息,本文通过轨道方程与车体中心线的偏离程度进行当前轨道的判定。

2 基于SVDD模型的激光雷达杆塔检测

通过轨道检测获得了当前轨道信息,而机车车体有一定的宽度,因此本文将轨道曲线向左右两侧各外推一定距离形成的区域定义为机车行驶区域。考虑到某些障碍物有运动属性,在机车行驶区域周围设置警戒区域,当有障碍物入侵到警戒区域时,进行预报警,避免发生碰撞。警戒区域与机车行驶区域共同构成机车可通行区域。

电气化铁路沿轨道线铺设了电网为机车供电,输电网的电线杆塔按照一定的标准矗立在轨道一侧,因此可以通过检测电网杆塔获得警戒区域,输电网杆塔及其点云分别如图6和图7所示。

图6 输电网杆塔图Fig. 6 Diagram of transmission tower

图7 输电网杆塔点云图Fig. 7 Point cloud diagram of transmission tower

基于激光雷达的杆塔检测流程包括数据预处理、点云分割、点云聚类、点云特征提取及点云识别。其中,点云数据预处理过程已在轨道检测过程中进行。点云分割过程是基于轨道检测的结果,在竖直方向上将轨道平面以下的点云进行切除,分割出一簇簇障碍物点云。然后,采用基于密度的聚类算法(density-based spatial clustering of applications with noise, DBSCAN)将属于同一障碍物的点云聚为一簇[7]。点云特征提取过程是对聚类后的各簇点云进行刻画。三维点云表征了物体在三维空间的表面采样信息,具有尺度、旋转不变性,物体的长、宽、高等几何信息可作为描述目标点云的特征向量。障碍物类型识别采用支持向量数据描述(support vector data description, SVDD)算法进行分类。SVDD是一种单类分类算法,其能够实现目标样本和非目标样本的区分[8]。该方法通过对训练样本集进行超球描述,并检测新的数据是否与训练样本集相似,从而达到分类的目的。SVDD的优化目标是求一个中心为o、半径为R1的最小球面:

这个球面需满足

式中:C——常数;xi∈Rn——n维空间的特征向量;T——转置符号;ξi——松弛变量,其使得模型不会被个别极端数据干扰,确保模型的鲁棒性。

简单来说,SVDD优化目标就是要把训练集中的数据点都包在n维空间的超球内。

本文首先通过提取点云边界框的质心、长度、宽度以及点云密度和点云强度,组成特征向量并构建训练集;然后通过SVDD算法对训练集进行训练,得到分类模型[9]。应用时判断一簇点云是否属于杆塔,需确定该簇点云的特征z是否落在训练出来的超球内。即,如果满足式(5),则判定为杆塔,其中a,R2为杆塔模型参数。

杆塔识别完成后,将属于当前轨道的杆塔连接起来形成杆塔一侧的警戒区域,基于轨道信息采用镜像处理的方式得到轨道另一侧的警戒区域,并与机车行驶区域合并,最终形成整个可通行区域。

3 实验结果及分析

为了验证本文所提算法的实时性和轨道检测的准确性,将算法应用到现场进行实验验证。实验使用的激光雷达为大疆Horizon,该雷达采用的激光波长为905 nm,视场角FOV为81.7°(水平)×25.1°(垂直),每秒可返回240 000个点。

该激光雷达被安装在包神铁路某电力机车正前方,激光雷达通过发射激光获取机车前方的环境信息;检测算法运行于车载电脑上,通过C++程序实现。为了验证本文所提检测算法的实时性,连续运行10 000帧数据,统计算法运行时间分布,算法平均每帧耗时56 ms,单帧最大耗时83 ms,最小耗时39 ms,低于激光雷达工作周期100 ms,满足算法检测的实时性要求。该10 000帧数据中,轨道被成功检测出的有9 990帧,轨道检测成功率大于99%。从算法检测效果图中可看出,该算法能准确地提取出机车前方的可通行区域。图8为铁路站场的场景图,图像正中间的轨道为机车当前行驶轨道,该轨道左侧架设有输电杆为机车供电,视野前方停放了多辆机车(车厢)。图9为该铁路场景的激光点云图,从点云图可清晰地分辨出杆塔、轨道、前方机车等目标。图10为通过本文算法检测输出的轨道信息,图中检测出了3条轨道,中间的轨道为机车当前轨道。图11为检测算法输出的可通行区域,通过当前轨道检测算法确定机车行驶区域,通过轨旁杆塔检测算法获得警戒区域,二者合并形成机车可通行区域。

图8 铁路场景图Fig. 8 Diagram of the railway scene

图9 铁路场景点云图Fig. 9 Point cloud diagram of the railway scene

图10 轨道检测结果图Fig. 10 Diagram of rail detect result

图11 机车可通行区域检测结果图Fig. 11 Diagram of locomotive passable area detect result

4 结语

本文提出了一种基于激光雷达的机车可通行区域检测算法,其通过局部区域搜索及随机采样一致性算法实现轨道检测并提取机车行驶区域;通过支持向量数据描述算法检测输电网杆塔并提取警戒区域;警戒区域与机车行驶区域合并,构成整个可通行区域。实验结果表明,本文提出的算法能满足实时性要求且有较高的准确率,算法鲁棒性较好,可实时、精确地为机车提供可通行区域路面信息,为自动驾驶主动防撞技术提供支撑。下一步将研究分析站场内外特殊路面的点云特征,以增强该算法对环境的适应性。

猜你喜欢
激光雷达杆塔机车
激光雷达实时提取甘蔗垄间导航线
基于北斗的高压输电杆塔智能实时监测技术与应用
法雷奥第二代SCALA?激光雷达
融合激光雷达与超声波数据的障碍物检测方法
Ouster发布首款全固态数字激光雷达
广东阳江地区500kV典型同塔双回杆塔防雷影响因素研究
“周恩来号”机车连续40年投入春运
DF8BI内燃机车整车称重调簧工艺适用条件研究
机车英雄
在塞纳河畔遇见的“他”邂逅机车收藏家Hector