非铺装道路凹凸不平特征语义分割方法研究*

2023-08-25 01:01伍文广田双岳张志勇
汽车工程 2023年8期
关键词:标签语义路面

伍文广,田双岳,张志勇,张 斌

(长沙理工大学汽车与机械工程学院,长沙 410114)

前言

不同于平整的铺装道路,非铺装道路的凹凸不平特征将增加自动驾驶车辆路径规划和主动控制的难度,同时影响车辆安全性和舒适性,因此凹凸不平特征的分类识别对自动驾驶汽车在非铺装道路上行驶具有重要意义。由于非铺装道路存在表面起伏不定、道路特征纹理复杂等问题,以往应用于铺装道路的路面特征识别方法难以应用。现有的路面识别策略包括间接识别方法与直接识别方法。前者主要基于车辆的动态响应,可分为基于模型的方法与基于数据驱动的方法;后者通过专用仪器或传感器直接识别路面。

基于模型的方法是指通过建立数学模型并推导路面输入与车辆响应之间的数学关系来识别路面特征的方法。Liu 等[1]基于1/4 车辆模型得到路面输入与簧下质量加速度之间的传递关系,实现路面不平度等级的在线估计。Hassen 等[2]提出一种独立分量分析方法(ICA)应用于3 种不同的车辆模型实现路面轮廓识别。刘浪等[3]提出了一种考虑车辆加速度、基于增广卡尔曼滤波算法的路面识别方法。综上,基于模型的方法虽然能直观表示出模型输出与输入之间的数学关系,但识别准确性依赖于模型参数。基于数据驱动的方法无须具体的数学分析过程,而是基于算法模型自主学习信号的潜在信息。应用最为广泛的算法模型包括长短期记忆网络(LSTM)[4-5]、概率神经网络(PNN)[6]、支持向量机(SVM)[7]、人工神经网络(ANN)[8-9]等。总之,间接识别方法依赖于车辆动力学响应,因此前瞻性往往不足且仅能获取车辆车轮行驶部分的道路情况,难以用于自动驾驶汽车的路径规划。

直接识别方法是指采用路面轮廓仪、视觉传感器、激光雷达等设备直接获取路面特征信息的方法。Lushnikov 等[10]研究了几种用于测量路面纵向粗糙度的轮廓仪特性及其测量路面粗糙度的精度。路面轮廓仪虽能达到较高的识别精度,但其移植能力差,无法广泛应用于常规车辆,主要用于道路养护工作。基于低成本、高质量和易于使用的视觉传感技术在过去得到快速发展[11]。Yousaf 等[12]通过尺度不变特征变换(SIFT)来建立路面图像词汇表并基于SVM对路面图像单词直方图进行训练和测试,实现坑洞检测,但仅能解决路面是否存在坑洞的二分类问题。Tedeschi 等[13]开发了一种基于OpenCV 库的自动路面故障识别系统并将其嵌入到移动应用程序中,能够识别3 种常见的路面故障:坑洞、纵向-横向裂缝和疲劳裂缝。卷积神经网格(CNN)由于其能直接输入图像而无需复杂的图像预处理过程,被广泛运用于图像识别领域[14-16]。沙爱民等[17]设计了3 种CNN,分别用于病害识别、裂缝特征提取和坑槽特征提取。CNN 通常使用滑动窗口扫描整张图像,因而实时性较差,为此Ren 等[18]提出Faster R-CNN,其采用区域建议网络(PRN)来生成候选区域,大大提高了算法实时性能。Li[19]等基于双目立体视觉获取路面坑洼的图像信息,并对图像进行特征点匹配、视差计算等处理实现坑洼的三维重建和形态特征提取。总之,基于视觉方法虽能有效识别出道路特征,但由于受环境光线影响较大,在雨雾场景中识别性能受到较大影响。激光雷达由于其更远的扫描距离、更高的扫描精度被广泛搭载于自动驾驶汽车、飞行器等平台用于环境感知、测绘工作[20-22]。Zhao 等[23]通过激光雷达扫描路面,预览路面高程信息。刘家银等[24]设计了一种具有互补能力的多激光雷达安装方式,并通过距离阈值与点密度阈值对凹坑进行识别。近年来,基于点云的深度学习得到快速发展[25],Qi等[26]开创性地提出以点云为直接输入的网络模型PointNet,并进一步改进提出了具有局部特征学习能力的网络模型PointNet++[27],能较好地完成点云分类、部件分割、语义分割等任务。当前公开点云数据集主要针对城市道路场景,如SemanticKITTI[28]、Waymo[29]、nuScenes[30]等,针对非铺装道路场景,由于缺乏相关数据集,深度学习的应用研究较少[31]。此外,由于非铺装道路环境复杂,路面状况恶劣,加大了非铺装道路点云数据集采集、标注的难度和成本。据统计[32],一个职业点云标注者标注ScanNet数据集中的1 201个点云场景,平均每个点云场景标注时长68 s,耗费总时长为2 周(10 天,每天工作6 h),因此通过实验制作大型的非铺装道路点云数据集需耗费的人力和时间成本过高。

总之,间接识别方法前瞻性不足,难以适用于复杂多变的非铺装道路;基于视觉方法对目标三维特征信息感知不强且受环境光线影响较大,难以对非铺装道路的凹凸不平特征进行准确表达。相比之下,激光雷达探测距离远、受环境光线影响较小且能获取准确的路面三维信息,但目前基于激光雷达的路面识别方法一方面主要针对铺装道路场景,在非铺装道路场景下难以直接适用;另一方面路面凹凸不平特征信息表达方法复杂,算力要求大且难以用于自动驾驶汽车的识别。为此,本文首先构建了基于高斯函数的凹凸不平特征表达模型,并提出了一种非铺装道路仿真点云生成与标注方法;其次,构建了包含仿真与真实数据的非铺装道路点云数据集,解决了非铺装道路点云数据集缺乏、制作成本高的问题;最后,提出了一种非铺装道路凹凸不平特征语义分割方法,通过对路面凹凸不平特征进行标签分类,实现路面凹凸不平特征信息的简化表达,满足自动驾驶汽车在非铺装道路场景进行路径规划、决策与控制的需求。

1 总体框架

图1 所示为具有凹凸不平特征的非铺装道路,自动驾驶汽车的路径规划与主动控制须考虑各类凹凸不平特征对车辆通过性、安全性与舒适性的影响。为简化表达非铺装道路凹凸不平特征,本文提出了一种非铺装道路凹凸不平特征语义分割方法,整体框架如图2所示,可分为3个部分。(1)非铺装道路点云数据集构建。基于非铺装道路仿真模型构建仿真路面点云数据集,以及通过实验采集数据构建真实路面点云数据集。(2)凹凸不平特征语义分割。构建基于Pointnet++的凹凸不平特征语义分割模型,输入仿真路面点云数据集训练学习得到最优性能模型。(3)仿真与实验验证及鲁棒性验证。基于各评价指标对训练结果进行分析,验证模型在真实路面点云数据下的适用性以及对不同场景的鲁棒性。

图1 非铺装道路

图2 非铺装道路凹凸不平特征语义分割整体框架

2 非铺装道路点云数据集构建

非铺装道路环境复杂,路面状况恶劣,加大了非铺装道路点云数据集采集构建的难度和成本。为此,本文提出一种非铺装道路仿真点云生成与标注方法,如图3 所示。首先,构建基于高斯函数的路面凹凸不平特征表达模型,并基于随机的形状、范围、位置种子参数实现路面凹凸不平特征模型的表达;其次,基于凹凸不平特征高程差计算对点云数据进行自动标注;最后,采用点云三维刚体平移方法拼接得到指定宽度长度的路面点云数据。为验证本文提出的非铺装道路仿真点云生成与标注方法的可行性,采集实际路面点云数据对结果进行验证。

图3 非铺装道路仿真数据集生成与标注流程

2.1 非铺装道路仿真点云生成与标注方法

非铺装路面凹凸不平特征的分布具有随机性,且凹凸不平特征的深度、高度、平缓程度、范围大小均不相同,引入高斯函数构建凹凸不平特征表达模型,如式(1)和图4 所示。通过改变函数参数值A、B±C、B、C,可表达出凹凸不平特征的深度、高度、范围、分布位置、平缓程度。非铺装道路表面布满泥土、沙砾、石子等,十分粗糙,为此在凹凸不平特征表达模型中加入随机噪声来表达路面粗糙。如图3 所示,沿y轴方向位置i处路面点云通过如式(2)所示的函数Fi(x)表示。

图4 高斯函数

式中:i为函数F(x)沿y轴方向的位置编号;Ai、Bi、Ci为高斯函数参数值;ω(x)为均匀分布的随机函数。

路面凹凸不平特征的高程差、范围、位置对车辆行驶安全性、通过性有不同程度的影响,其中最为重要的参数是特征的高程差,影响车轮跳动量[33]、车辆通过性等性能。为此,本文选择以凹凸不平特征深度/高度作为标签的分类基准以简化对非铺装道路凹凸不平特征的表达,制定如表1 所示的分类标准。

表1 标签分类标准

本文通过如式(3)所示的点云三维刚体平移方法拼接路面点云,实现不同范围大小的路面点云数据生成。

式中:x、y、z为变换后点云坐标;x′、y′、z′为变换前点云坐标;xT、yT、zT为点云沿X、Y、Z轴平移量。

为避免由于仿真路面点云坐标单一,使训练模型过拟合,对路面点云进行随机的旋转与平移。其中点云三维刚体平移方法如式(3)所示,点云三维刚体旋转方法如式(4)所示。

α、β、θ分别为绕X、Y、Z轴旋转的角度。

本文处理数据设备采用型号为i9-12900KF 的处理器,图形显卡为RTX 3060Ti 8G。图5 所示为采用本文方法测试10 次生成5 000 组非铺装道路仿真点云数据并完成自动标注的时间,得到平均值为523.73 s,平均每个道路场景生成和自动标注时间为0.105 s,而一个职业点云标注者标注ScanNet 数据集平均每个场景耗时68 s,尽管本文数据集场景和ScanNet场景不同,但可以说明的是采用本文方法能极大减少非铺装道路点云数据集采集和标注的时间以及人力成本。

图5 数据集生成时间

2.2 实验点云数据采集

在实验室环境下搭建实验沙盘用于模拟非铺装道路场景,图6 所示为实验点云数据采集设备和实验场景。实验设备包括Velodyne VLP-16激光雷达、Apollo D-Kit 自动驾驶开发小车、电子倾角仪、工控机等。其中激光雷达用于采集点云数据,电子倾角仪用于测量激光雷达倾角,其技术参数如表2 所示。本文共搭建30 个非铺装道路场景,不同场景中凹凸不平特征数量、大小、位置等均存在差异,以尽可能体现出非铺装道路的复杂性,车辆与沙盘模型距离大约4 m,面向模型以约为1 m/s的速度行驶。

表2 技术参数

图6 实验设备和场景

由于激光雷达水平安装导致路面点云数据量较少,倾斜安装将增加路面点云数据。实验数据采集具体流程如图7 所示。首先,基于点云累计方法将多帧点云合成,提高点云数据密度;然后,基于点云三维刚体旋转方法,将点云坐标系转换至激光雷达倾斜前的坐标系;最后,基于直通滤波方法实现路面点云提取。

图7 实验数据采集流程

3 凹凸不平特征语义分割模型

3.1 道路凹凸不平特征语义分割

如图8 所示,在道路凹凸不平特征语义分割任务中,Pointnet++基于距离插值和跨层跳跃链接的分层传播策略将凹凸不平特征从下采样点传播至原始点。首先,在一个特征传播层次中,通过在Nl-1个点坐标处插值Nl个点的特征值f来实现特征传播,其中Nl-1与Nl(Nl≤Nl-1)分别为凹凸不平特征提取层l的输入和输出点集大小,插值函数f为基于k个最近邻的反距离加权平均,如式(5)所示。然后,将Nl个点上的插值特征与跳跃连接点特征进行拼接,并将级联后的特征通过"Unit Pointnet"进行类似于CNN 中的逐个卷积处理。最后,使用少数几个共享的全连接层和ReLU 层更新每个点的特征向量,重复这个过程,直到将特征传播到原始点集[27]。

图8 Pointnet++语义分割流程

图9 所示为道路凹凸不平特征语义分割流程,首先,通过非铺装道路仿真点云生成与标注方法制作不同点云密度以及不同路面范围的仿真点云数据集,采样选取其中部分数据集作为训练集,并输入至Pointnet++道路语义分割模型进行训练,对模型训练准确率进行评估,保留性能最优的模型。然后,输入不同点云密度数据集与不同路面范围数据集验证模型在不同工况下的鲁棒性。最后,输入实验点云数据集至最优模型进行预测,验证模型分割性能。

图9 道路语义分割流程

3.2 训练过程

训练集包括3 500 组道路场景,测试集包含1 000 组道路场景,验证集包含500 组道路场景,用于模型训练的超参数如表3 所示,采用表中模型训练超参数,模型训练最终收敛至准确率Acc为95.30%,Loss为0.12。图10所示为训练集标签占比情况,道路中大部分为较为平坦的路面,因此大部分数据标签为0,而其它标签占比较低。

表3 模型训练超参数设置

图10 数据集标签占比

4 仿真与实验结果分析

4.1 评价指标

一般基于模型的准确率Acc(accuracy)、精准率p(precision)、召回率r(recall)、mIoU(平均联合交集)来评估深度学习语义分割模型性能。但以上评价指标针对全局模型性能,在深度学习中常存在类不平衡问题,即不同类别数据比例不平衡、数据量差异较大,导致数据量多的类别准确率高于数据量少的类,模型的全局准确率不能反映各个类别的准确率。在本文中,由于路面大部分数据为较为平缓路面,导致类别0 的数据量显著高于其它类别,因此若采用全局的评价指标,不能准确反映各个类别的分割性能。为此,本文引入局部的准确率Acci、精准率pi和召回率ri值来评估模型各类别分割性能,通过mIoU、全局准确率Acc来评估模型的整体性能。具体如式(7)~式(9)所示。

式中:TPi为真阳性,代表实际为真,预测也为真;TNi为真阴性,代表实际为假,预测也为假;FPi为假阳性,代表实际为假,预测为真;FNi为假阴性,代表实际为真,预测为假;i为类别;k为类别数。

4.2 结果分析

4.2.1 仿真数据集结果分析

将仿真点云数据集输入至非铺装道路凹凸不平特征语义分割模型中进行训练,模型超参数如表3所示,在验证集上测试模型是否发生过拟合,在测试集上测试网络的准确率Acc,结果如表4 所示,表明训练的网络整体上有较好的性能。图11 所示为测试集部分预测结果,其中左侧为真实标签,右侧为预测标签,可知大部分预测类别与实际类别一致,错误预测的类别相差等级较小。如图11(a)所示,部分预测标签结果为8,而实际标签为7;图11(b)预测标签为3,而实际标签为4。

表4 不同数据集准确率

图11 仿真数据集预测结果

测试集的混淆矩阵结果如图12 所示,其中图右侧对应各类别召回率ri,下侧对应各类别的精准率pi。从结果可以看出,类别0的召回率与精准率远远高于其它类别,原因是设定的路面模型中绝大部分为较为平缓路面(标签为0),因此对于类别0的学习数据量最多,训练效果最好。此外,其它类别的召回率与精准率相差不大,分布在70%~80%范围内,这些特征类别识别效果差于标签0,一方面是特征与路面连接处实际较为平缓,模型将其预测为标签为0 的平缓路面,另一方面是相邻标签间存在差别不显著的情况,如标签1最大幅值范围为0.05~0.15 m,标签2最大幅值范围为0.15~0.25 m,当数据在0.15附近时两者相差很小,导致模型预测结果较差。在混淆矩阵图中可以更好地体现上述原因,类别1~8错误预测结果中大约一半将标签预测为0,另外一半预测结果与实际标签相差±1。总之,模型整体在各数据集下有较高的预测准确率,且通过分析各类别的精准率与召回率,尽管类别1~8 预测效果稍差于类别0,但其召回率与精准率依旧能保持在70%~80%范围内,且极少出现预测结果类别与实际类别差异很大情况(在近500 000个数据点的预测结果中仅有4 个数据点将真实标签为凸起预测为凹坑),因此模型在仿真数据集下表现有较优的性能,可通过实验数据集进行进一步的验证。

图12 仿真测试数据集混淆矩阵

4.2.2 实验数据集结果分析

将实验点云数据集输入至训练后的语义分割模型,得到实验点云的预测分割结果。图13 所示为部分非铺装道路实验场景的路面特征分割结果,图左侧为实验得到的路面点云数据高程图,右侧为模型预测语义分割结果。

图13 实验数据集预测结果

从结果可以看出,在各场景下模型均有较准确的预测分割结果,在图13(a)中存在一个凹坑A3 和多个凸起A2、A5、A6、A8,预测结果中将A3 分割为较大凹坑(标签7),将凸起分割为较小凸起(标签2)和较大凸起(标签3);在图13(b)中存在一个凹坑B2和多个凸起B3、B4,预测结果中将B2 分割为较小凹坑(标签6),将B3、B4 分割为较小凸起(标签2);图13(c)中存在一个凸起区域C2,在预测结果中将C2中间较高部分识别为最大凸起等级(标签4),而边缘靠近C3区域部分由于与周围区域高程差减小,预测结果中识别为较大凸起(标签3);图13(d)存在两个凸起区域D1 和D3,由于这两个区域与周围区域存在较大的高程差,在预测结果中将凸起D1 和D3识别为最大凸起等级(标签4)。

此外,在图13(a)的A4、A7 区域,图13(c)的C3区域,图13(d)的D4区域虽然高程差较大,但由于坡度较平缓,因此将其识别为正常平缓路面;在图13(b)的B1区域即使高程差较低,但由于较为平缓,因此将其识别为正常平缓路面;在图13(c)的C1 区域虽然坡度较低,但由于存在一定的凸起,因此将其部分识别为凸起高度较小的标签1,其余部分识别为正常平缓路面。总之,训练后的道路凹凸不平语义分割模型能在实验点云中具有良好的语义分割性能,能将图13 中各非铺装道路场景下的凹坑与凸起进行合理预测分类,将有较大高程差的区域能准确预测为凹凸不平特征并分类为合理的等级,同时对高程差较小的区域也能准确预测为平缓路面,证明通过仿真路面点云数据训练得到的模型能较好地适用于非铺装道路场景,完成凹凸不平特征语义分割任务。

4.3 鲁棒性分析

在不同环境条件下算法的性能可能受到不同程度的影响,为验证本文非铺装道路凹凸不平特征语义分割方法的鲁棒性,分别考察不同路面点云数据密度、路面范围的鲁棒性。

4.3.1 点云数据密度

在实际路面点云数据采集过程中,由于激光雷达采样频率、数据量和通道数不同,以及车辆行驶速度的不同都会影响点云数据密度,因此本文研究点云数据密度对模型性能的影响。训练集设定为路面点云范围为10 m×4 m的路面,点云数据量为3 200,测试集设定为在与训练集相同路面点云范围情况下点云数据量为2 200~4 200 的仿真数据集,数据量越大点云的密度越大。如图14 所示,在不同的采样点数目下,通过已训练网络进行验证,在各个采样点数目下准确率均在94%以上,且随采样点数目无明显的变化趋势,结果表明模型对点云数据密度有较优的鲁棒性。

图14 实验数据集预测结果

4.3.2 路面范围

非铺装道路路面宽幅变化大,激光雷达型号、安装方式的不同会导致激光雷达扫描到路面的范围不同。为研究模型对不同路面范围变化的鲁棒性,设计如表5 所示的不同尺寸路面点云作为测试集,将测试集编号为2、4、7、9 的路面点云数据集分别选取3 500个路面数据组合为训练集,模型训练超参数如表3所示。

表5 不同尺寸路面点云测试集

图15 所示为路面范围鲁棒性预测结果,其中Acc为整体预测准确率;Acc1~8表示标签1~8的平均准确率;mIoU为平均联合交集。从结果可以看出,各测试集下Acc都高于93%,说明模型整体预测结果较为准确。在各测试集下的Acc1~8值低于Acc值,但都高于60%,其主要原因有以下两点:(1)在凹凸特征边缘处错误识别为正常平缓路面(标签0);(2)将凹凸特征错误识别为相邻标签。各测试集mIoU在1~8 测试集都在0.6 以上,9~10 两个测试集在0.5 以上。模型整体对路面范围具有一定的鲁棒性,但会随着路面长度的增加,其识别准确率降低,如测试集1 至测试集5,当路面长度由6 依次增加至14 m 时,模型的Acc、Acc1~8、mIoU分别从95.68%、73.74%、0.672 6 下降至94.35%、66.86%、0.588 9。此外,路面宽度也会影响模型识别准确率,如图15 中测试集1~5 的Acc、Acc1~8、mIoU都高于对应的测试集6~10,说明模型识别准确率随着路面宽度增加而降低。总之,模型对路面范围具有一定的鲁棒性,但应结合实际情况,选取尽可能小范围的路面点云数据作为模型的输入,以实现最佳的识别准确率。

图15 路面范围鲁棒性预测结果

5 结论

本文构建了非铺装道路点云数据集,提出了一种非铺装道路凹凸不平特征语义分割方法。研究结果提高了非铺装道路点云数据集标注效率,实现了非铺装道路凹坑和凸起等典型特征的精确识别和简单化表达,有助于自动驾驶汽车非铺装道路场景下的路径规划与主动控制。本文相比于现有研究,主要贡献有:

(1)构建了包含仿真与真实数据的非铺装道路点云数据集,用于非铺装道路凹凸不平特征语义分割模型的训练与验证,弥补了该领域的空白。

(2)提出了一种非铺装道路仿真点云生成与标注方法,通过提出的非铺装道路凹凸不平特征表达模型,生成与标注一个非铺装道路场景平均仅需0.105 s,实现了仿真点云数据集的快速低成本建立。

(3)首次提出了基于Pointnet++的非铺装道路凹凸不平特征语义分割方法,实现非铺装道路凹凸不平特征的准确简化表达,结果表明该方法有较高精度、效率和鲁棒性。

猜你喜欢
标签语义路面
语言与语义
用艺术修补路面
无惧标签 Alfa Romeo Giulia 200HP
不害怕撕掉标签的人,都活出了真正的漂亮
“上”与“下”语义的不对称性及其认知阐释
标签化伤害了谁
基于多进制查询树的多标签识别方法
一款透水路面养护车
BFRP连续配筋复合式路面配筋设计
认知范畴模糊与语义模糊