基于自适应阈值的三维激光点云地面分割算法研究*

2021-08-12 08:13于春磊赵亚丽陈义飞杨蒙蒙
汽车工程 2021年7期
关键词:栅格阈值平面

张 凯,于春磊,赵亚丽,陈义飞,杨蒙蒙,江 昆

(1.辽宁工业大学汽车与交通工程学院,锦州 121000;2.北京超星未来科技有限公司,北京 100080;3.清华大学车辆与运载学院,北京 100084;4.清华大学电子工程系,北京 100084)

前言

环境感知是无人驾驶汽车与外界交互的前提条件,也是汽车安全稳定行驶的重要保障。三维激光雷达因其检测精度高、可靠性强、捕捉物体三维姿态细节丰富等特点而被广泛应用。其中,基于激光雷达的感知任务主要包括地面分割和障碍物检测、识别与跟踪。在这些任务中,地面点云的滤除是一项重要的工作,也是影响障碍物检测精度的关键。在无人驾驶汽车行驶中,由于汽车起步、制动或复杂路面会引起车辆的前俯、后仰和侧倾,进一步引发局部区域激光点云密集、稀疏或空缺状态;此外,在处理多线束高密度点云数据时,同时保证分割算法的精度与实时性面临巨大挑战。因此,针对复杂的车辆状况和行驶环境提出满足无人驾驶需求的高精度地面分割方法尚须持续研究。

目前国内外学者对于地面点云分割算法的研究主要分为3类:基于栅格地图、基于平面模型和基于深度图像。栅格地图法主要利用局部区域内障碍物与地面点高度值差异特征进行分割,文献[1]和文献[2]中将原始点云在x⁃y平面划分栅格,计算每个栅格内最大高程差值,并与人为经验阈值比较分割地面栅格点云;文献[3]中将原始点云以极坐标形式划分栅格,针对栅格内离散点拟合直线模型,通过距离阈值分割出地面点云;文献[4]中利用在z轴上设置高度变化阈值实现分割;文献[5]中则采用多标签的马尔科夫随机场理论构建极坐标系网格地图实现分割。基于栅格地图的方法容易出现局部栅格内误分割问题,且阈值无法自适应调节,精度较差。平面模型法主要构建一个平面模型模拟当前路面,将具有相同数学表达式的点划分为一组,鲁棒性较强,文献[6]中利用随机抽样一致性算法(RANSAC)构建地面平面模型,在RANSAC算法的基础上设定一定准则以优化异常值对平面拟合参数的干扰问题;文献[7]中提出将RANSAC算法与整体最小二乘法(TLS)相结合的形式,利用随机抽样一致算法剔除异常值,并将筛选后的有效点云采用TLS算法进行平面拟合,但拟合模型时间相对较长,进而导致地面分割精度相对较低。深度图像法主要将3D激光点云转换为2.5D深度图像,主要利用不同区域图像间属性的差异特征。文献[8]中采用将原始点云投影到以激光雷达旋转轴线为轴的圆柱体上生成深度图像,基于深度图像计算列方向相邻两点连线与水平方向的倾斜角度形成角度图像,结合地面点云坡度较小的特点完成分割;文献[9]中则采用广度优先搜索(BFS)形成地面连通区域,进而实现分割;文献[10]中是利用邻域信息形成的局部凸性特征分割点云;文献[11]中将激光雷达扫描线在x⁃y平面投影,利用角点检测定位线段端点,通过分析线段特征利用基于图像的分割方法进行划分;文献[12]中则基于深度图像孔填充的形式分割。该基于图像的分割方法主要源于计算机图像的处理形式,适用于噪声低的“理想”数据,鲁棒性较差,难以实践应用。

考虑到自动驾驶汽车面临实时性、准确性和场景复杂性的问题,本文中研究了地面点云分割算法。主要贡献有:(1)提出了一种可自适应阈值的地面点云分割方法;(2)针对目前无公开评测地面分割算法性能的数据集问题,本文中基于Semantic⁃KITTI数据集提出了一种可用于验证算法精度和实时性的基准数据集;(3)在基准数据集上进行了试验,证明了本文中算法具有高效性和实时性的优势。另外,基于自研的自动驾驶平台进行实际环境测试,证明了该方法的鲁棒性和泛化性能够满足自动驾驶的需求。

1 算法概述

本文中提出的自适应阈值地面分割算法模块示意图如图1所示,主要包括6部分内容:原始点云、栅格划分、平面模型拟合、自适应阈值确定、分割优化和输出点云。

图1 地面分割算法模块示意图

算法输入数据为三维激光点云,点云的数量通常为几万到十几万不等,经过栅格处理、平面拟合、点云分割后得到2种输出数据,分别为地面点云和障碍物点云。

1.1 栅格划分

图2 栅格区域划分示意图

在实际场景中,地面会有凹凸不平的情况,每个栅格内点云可能存在由于高度不一致或距离、遮挡等原因导致数量差异较大的问题,因而统一使用平面拟合具有较大的局限性。为此,本文中设计了一种基于自适应阈值的地面分割算法以拟合不同距离的栅格点云。具体地,依据栅格内点云数量与原始点云数量的占比关系采用不同的分割机制,若实际占比值大于基准占比t值则采用地面平面模型分割,反之采用高度阈值分割。t如式(1)所示。

式中:ni表示第i个栅格的点云数量;N表示原始点云数量。基于基准数据集不同道路场景和实际采集的不同场景数据,本文中经多次实验并根据分割效果,最终t取多次实验的平均值0.000 6。

1.2 平面模型拟合

平面拟合模型一般指用数学模型拟合地面平面点云。在三维原始点云中地面点通常为贴合地面高度的点,但由于车辆行驶过程中的抖动和环境的干扰,通常会存在部分噪声点。为减少平面拟合过程中前景点云的干扰,本文中采用子区域点集划分的方式拟合当前地面平面模型。首先对每个栅格中的点云按高度值进行排序,选取高度值较低的部分点计算其均值Tn并作为局部阈值:

同时为解决障碍物反射点误入地面导致的局部区域点集性能失效问题,引入全局阈值Tg并选取两阈值中较小值作为栅格中局部区域点集的最终高度阈值Th:

然后将栅格中所有小于最终高度阈值的点添加入局部区域点集中,利用筛选出的局部区域点集拟合当前地面平面模型。平面模型采用线性模型:

整理为

其中:n=[a,b,c];p=[x,y,z]T

(2)解决脱模平台四角不平问题。①安排技术人员采用支垫方式对脱模平台四角进行调平,保证脱模时模具四角同时接触脱模台,使模具受力均匀,轨枕同步脱出。②对脱模平台四角水平情况进行定期复检,发现异常及时整改。通过对脱模平台四角进行调平,双块式轨枕脱出后挡肩位置的黑色印迹得到了有效控制,外力对轨枕挡肩的撕拉大为减小。

式中:a、b、c和d表示常数;x、y、z表示坐标。

利用协方差矩阵可描述局部区域点集在三维空间的分布状况,从而确定栅格点云的地面平面模型。本文中通过奇异值分解(SVD)求解奇异向量,向量分别描述了局部区域点集主要分布方向。由于拟合的是地面,最小方差的方向应为垂直于平面的法向量,最后通过计算最小奇异值对应的奇异向量求解法向量n。将p以3个维度的均值带入确定d,最终确定栅格内地面平面模型;同时,若平面模型法向量远离z轴则判定该区域模型并非地面模型,则采用高度阈值做后续的点云分割处理。局部区域点集的协方差矩阵C为

式中:|S|表示点集的总个数;sˉ为局部区域点集所有点均值;s i表示局部区域点集中第i个点。

C按3个维度展开:

1.3 自适应阈值确定

自动驾驶汽车在起步、颠簸、制动等行驶过程中地平面点云会产生畸变,因此无法直接用固定阈值进行拟合。本文中在实际测试中发现地面波动幅度与模型的分割阈值存在一定的关联,因而用地面区域点集距理想平面模型的垂向距离散布程度表征当前地面的波动幅度,并利用当前时刻的波动幅度自适应地确定合适的分割阈值。平面点集的二维视图如图3所示,红色直线为拟合后的平面模型,蓝色直线表示最小阈值分割线,波动幅度f为

图3 平面点二维视图

式中:disti为每个点到平面模型的正交投影距离;u为局部区域点集中的点到平面模型的正交投影距离的均值;m为局部区域点集数量。

经试验发现平面模型的分割阈值w与地面的波动幅度f满足一定的线性关系:

式中k为波动幅度影响系数(本文中取1.5)。

1.4 分割优化

为进一步优化分割结果,本节对于拟合后的平面模型,首先确定每个栅格区域的分割阈值并计算栅格中每一个点到平面模型的正交投影距离,然后将投影距离与分割阈值进行比较,如满足阈值范围则为地面点集,否则为障碍物点集,接着将分类后的地面点重新作为下次迭代的局部区域点集,重新拟合平面模型和确定阈值,从而优化分割精度。对于触发高度阈值分割的栅格区域,计算n个较低点的高度均值,高度分割阈值为均值加阈值Th,若栅格内所有点小于高度分割阈值则为地面点集,否则为障碍物点集。

2 数据集

目前,大多数前后背景分割验证数据集为人工标注的自采道路场景,数据集场景的标准和难易程度不一,在实际算法性能比较时难以使用统一的标准进行测试评价。因此,本文中提出了可作为公开算法测试与验证的基准数据集,其中包含了室外不同场景。

2.1 数据集介绍

本文中提出了可用于公开测试的二分类分割基准数据集Semantic⁃Nova。Semantic⁃Nova基于Semantic⁃KITTI数据集生成,后者是由目前最权威的自动驾驶计算机算法评测数据集KITTI细分而来,其中包含中心交通、居民区、农村道路和高速公路等多类别场景。该数据集细分了28种标注类别。数据集不仅标注了动态物体,同时对周围的环境信息也进行了相应的划分,如图4所示。

图4 Semantic⁃KITTI类别示意图[15]

2.2 数据处理

Semantic⁃Nova将Semantic⁃KITTI点云数据作为预处理样本,该数据采集设备为美国Velodyne公司HDL⁃64型3D激光雷达,具有64个激光器,采集频率为10 Hz,每帧产生约13万个扫描点。本文中对该数据集进行预处理,将所有标注进行二分类,其中,将背景所有类别中的地带标记为背景,其余类别为前景。Semantic⁃Nova数据集的效果如图5所示。

图5 Semantic⁃Nova数据集效果图

3 算法测试

本文中试验的电脑配置为:i5 9300H处理器、GTX 1660TI显卡及16 GB内存,系统环境为Ubuntu 18.04并配置ROS,开发环境为Qt Creator 5.12,调用PCL1.8中点云定义,使用C++编写并利用RVIZ做可视化输出。

3.1 评测指标

对于分割精度的评估,借助文献[14]中的方法,采用统计学中的灵敏度(RTP)与特异性(RFP)的方式,具体方法为

式中:NTP为地面点被正确标记的数目;NFN为地面点被错误标记为非地面点的数目;NFP为非地面点被错误标记为地面点的数目;NFN为非地面点被正确标记的数目。其中RTP越大,地面点正确分割的数目越多,分割效果越好;反之,RFP越小,效果越好。同时计算处理一帧的平均耗时作为帧率指标。

3.2 Semantic⁃Nova数据集测试

为评价本文中算法在不同道路环境下的综合性能,选取4 000帧二分类后的Semantic⁃Nova数据集进行测评,算法分割效果如图6所示。其中,图6(a)和图6(d)分别为城市道路环境和乡村道路环境测试的分割效果,可以看出本文中算法在图6(d)中对道路左侧草地做出了良好的自适应分割;同时对于城市道路环境,其中图6(b)为图6(a)中的局部分割细节,图6(c)为场景的行人分割效果,可以看出,本文中算法对车辆、行人等障碍物可有效地减少误分割,同时对不同环境具有较强的适应性。

图6 算法分割效果示意图

表1为本文中提出算法在Semantic⁃Nova数据集上与文献[13]和文献[14]的效果对比。本文方法每帧处理时间约为26 ms,接近文献[13]同时明显低于文献[14]中的耗时;文献[13]和文献[14]在复杂环境下误检率较高,在城市环境下具有较小的误检率,而本文中提出的自适应阈值方法可在不同道路环境均达到较高的召回率和较小的误检率。本文中也对比了固定阈值和自适应阈值结果,当固定分割阈值为30 cm时,地面点分割精度较差主要是由误分割造成的,而本文自适应阈值的方法明显带来了分割精度的提升。本文中设置分割权重阈值t为0.000 6,通过分割试验结果对比可得本文算法在城市道路和野外道路场景下并无差距,在基准数据集上证明了其适用性。因此,本文中的方法在不同环境道路的分割精度和速度上优于以上两种方法。

表1 Semantic⁃Nova数据集分割算法效果对比

本文中所提出方法在阈值差异下的分割效果对比如图7所示。图7分别为固定阈值与自适应阈值算法分割效果,图7(a)中采用固定分割阈值(30 cm)以解决地面点云误分割问题,可见在分割过程中存在过多的车辆点云划分为地面点,以及车辆的相关细节存在丢失现象;因此引出自适应阈值方案图7(b),相比定阈值方案可有效调节每个区域的分割阈值进而保证较优的分割精度。

图7 阈值差异分割效果对比图

3.3 基于自研自动驾驶平台的实际场景测试

3.3.1 数据集采集方案

数据采集车辆为基于小鹏G3自研的自动驾驶测试平台车,如图8所示,位于测试平台车顶部的是速腾的32线激光雷达(RS⁃LiDAR⁃32B),其扫描频率为10 Hz,每帧产生约57 000个激光点,试验场地为北京冬奥会首钢园区。

图8 自动驾驶测试平台车

试验场景1为首钢园区内低速场景道路上常见的小目标物体场景,其中包括减速带(约10 cm)、水瓶(约15 cm)、三脚架警示牌(约40 cm)、停车桩锥桶(约60 cm)。试验设置分别为采集平台车匀速行驶、起步和制动状态下各小目标物体在不同距离时的分割情况。试验场景2为首钢园区外高速场景道路,采集路段场景内车流量适中,整个路段点云数量点较少。实验车速为80 km/h,测试高速路段下本文中算法的分割效果。

本文中实际场景用低线束激光雷达进行场景扫描,可用于验证不同线束雷达在不同场景下本文算法的鲁棒性和泛化性。试验1在园区内低速场景进行实验,比较测试车辆在不平稳状态及平稳状态下的分割效果;试验2在高速场景下进行,用于确定本文中分割算法在不同场景下式(1)中占比权重t值选取的适用性。

3.3.2 算法测评

根据当前雷达原始点云实际检测效果,将测试距离设为车辆行驶前方50 m内,其中减速带、水瓶因高度较低原始点云无法捕捉,三脚架警示牌、停车桩锥桶可接收一线到两线的检测回波。

当车辆以15 km/h匀速行驶时,小目标物体在距离车辆前方10、20、30、40和50 m处的分割效果如图9所示。其中,分割出的目标点云由蓝色线条圈出。表2为实际场景分割测试表,三脚架警示牌和停车桩锥桶在10 m处均可分割出约3~4个反射点,在20、40和50 m均可分割出约5~6个反射点,在30 m处均可分割出约8~9个反射点;当车辆处于起步、制动状态时,三脚架警示牌和停车桩锥桶在10 m处可分割出约3~4个反射点,在20和40 m处均可分割出约5~6个反射点,30 m处均可分割出7~8个反射点,50 m处均可分割出约4~5个反射点。

表2 实际场景分割测评表

图9 低速场景分割测试效果图

当车辆速度较低时,车辆在起步、制动时产生的前俯、后仰造成原始点云不均匀分布对分割算法的影响较小;高度较小的物体(减速带、水瓶)因激光雷达线束限制导致原始点云中无法检测,但车辆对此高度的障碍物具有一定的通过能力;对于高度约40~60 cm的物体(三脚架警示牌、停车桩锥桶)在50 m范围内均可被准确分割。图10为实际高速场景下的分割效果图,通过对比高速、低速场景下的分割效果,可得本文中t的取值对不同场景下地面分割性能的鲁棒性较好。

图10 高速场景分割效果图

本文中算法在不同线束的激光雷达场景下同时具有较好的分割效果,因此可为后续的目标检测提供良好的基础,这也进一步验证该自适应阈值的分割方法具有较好的泛化性能。

4 结论

本文中提出了一种自适应阈值的三维激光点云地面分割方法。该方法通过划分栅格拟合地面平面模型,并采用子区域依据局部路面波动幅度自适应分割阈值以改善定阈值造成的过分割问题。本文中基于现有的开源语义分割数据集Semantic⁃KITTI提出了地面点分割任务的标准数据集Semantic⁃Nova,试验结果表明本文中方法具有较高的分割精度并满足实时性需求。同时,本文中算法在实际场景下对不同距离的小目标点云数据进行分割测试,验证了本算法的高效性和鲁棒性。本文中所提算法在自动驾驶领域具有较强的实际应用价值。

猜你喜欢
栅格阈值平面
非平稳声信号下的小波变换去噪方法研究
基于改进阈值的MRI图像降噪
栅格环境下基于开阔视野蚁群的机器人路径规划
土石坝坝体失稳破坏降水阈值的确定方法
超声速栅格舵/弹身干扰特性数值模拟与试验研究
一种改进小波阈值去噪法及其仿真
立体几何基础训练A卷参考答案
立体几何强化训练B卷参考答案
反恐防暴机器人运动控制系统设计
参考答案