改进移动窗口的道路区域识别算法研究*

2022-04-22 13:30王泽民
西安工业大学学报 2022年2期
关键词:高程滤波尺寸

王 俏,王泽民

(西安工业大学 电子信息工程学院,西安 710021)

近年来随着自动驾驶、高精度地图制作等领域的发展,基于车载激光扫描点云的道路提取技术起着越来越重要的作用。车载激光扫描系统获取的大范围城市环境数据,具有场景复杂、目标多样的特点,不仅包括道路,还包括建筑物立面、树木、车辆和行人等其他地物。如何从海量复杂场景的离散点云中精确的识别并提取道路区域,目前仍是点云提取方面研究的重点。

根据道路区域在点云中的分布特征,研究者提出了一系列从车载激光点云中提取道路的方法,主要分为三类:基于点云投影、基于扫描线以及基于聚类分析的道路提取方法[1-3]。基于点云投影的道路提取这种方法的总体思想是将散乱不规则的三维点云通过投影转化为规则的二维图像,然后利用图像处理的方法进行道路提取,不同方法主要区别在投影图像的生成方式以及图像处理方法上。文献[4]提出一种基于最小-最大高度差滤波算法,它首先将点云投影为二维图像,然后计算落入每个投影图像网格单元内激光点高度最大和高度最小点之间的高度差,最后将高度差小于预定阈值的网格归类为路面,该算法计算简单,但采用单一参数阈值使得道路区域识别准确性差。文献[5]根据梯度一致性特征分割出地面点,利用路面点与栅格地图确定候选左右道路边界点,采用改进RANSAC算法进行道路边界的提取。该算法具有较好的抗噪性和实时性,但仅利用梯度一致性特征进行道路点云分割,准确性较差。以上基于点云投影的道路提取方法将高精度的点云数据转化为二维图像,在降低了数据处理难度的同时都会带来了一定程度的精度损失,影响道路识别的准确性。基于聚类分析的道路点云提取方法通过分析点云中地物目标局部特征相似的特点,构建合适的点云特征,直接对点云进行聚类分析来进行道路提取。文献[6]从邻近点提取局部点特征,利用欧氏聚类和区域增长算法快速分割地面和非地面,但是选取不同种子点将得到不同的分割区域,导致道路区域识别准确度低。文献[7]根据道路点云法向量呈竖直分布的特点,利用局部点云法向量特征进行聚类分割,然后使用K均值聚类算法提取道路边界线。该算法仅使用单一点云法向量特征进行分析,对于道路边界识别精度较低。基于聚类分析的道路点云提取方法直接对原始三维点云数据进行处理,数据精度高,但点云特征众多,特征的选取复杂,不适用于大规模散乱点云环境下的路面提取。车载激光点云数据是由若干扫描线所获取的点组成的,在前方有障碍物或其他情况下扫描线会发生变化。基于扫描线的道路提取利用上述特点,通过检测扫描线及扫描线之间的变化,实现检测障碍物与路面。文献[8]采用一种窗口滤波算法,将扫描线上的点分割成若干组连续的道路横断面,通过检测到的路缘点对每组道路横断面上的非接地点进行滤波,但是该算法参数值选取尤其是窗口长度的选取对滤波效果影响巨大,窗口过小会出现道路区域误提取,窗口过大又会影响道路边界的提取精度。文献[9]分析归纳了三种常见道路类型,利用高程差异、坡度、点云密度三个指标,采用移动窗口法精确识别路坎点云,该方法不仅适用于具有固定宽度的规则道路提取,同样适用于无固定宽度的非规则道路提取,但是固定窗口的方法同样会出现道路区域识别准确性差和边界提取精度低的问题。车载激光扫描数据中包含大量道路空间结构信息,这些信息给道路特征的提取带来了极大的便利。但车载激光点云数据量大、点云分布不均、城市场景目标多样、道路路面存在遮挡等特点,给车载激光扫描数据处理以及道路路面、路坎、标线特征的分类与识别带来了很大的困难[10-15]。

鉴于上述分析,文中提出一种新的道路边界提取算法,在传统基于扫描线的移动窗口道路提取算法的基础上,构建多尺度、多窗口组合的移动窗口滤波方法,自适应选取窗口的尺寸,避免了固定窗口尺寸带来的边界误提取和识别精度低的问题,实现道路区域的自动提取。

1 点云数据预处理

1.1 粗差剔除

由于空气中可能存在漂浮物、飞鸟等其他运动物体,物体的存在会导致在原来并不会产生数据点的位置出现了数据点,称这些点为离群点。同时,由于周围环境、系统误差或者数据处理误差,车载激光扫描系统获取的点云难免会产生一些噪声。离群点、噪声点统称为粗差点,粗差点会对点云局部特征的计算产生较大的影响[16]。文中采取统计滤波方法剔除离散点云。

读入原始点云并构建k-d树,逐点计算当前点到其最邻近k个点的平均距离u为

(1)

假定u呈高斯分布,计算其方差s2和标准差σ为

(2)

(3)

给定标准差倍数,根据高斯分布的平均值、标准差和给定的标准差倍数确定标准区间,当某点到其最邻近k个点的平均距离落在标准区间内,则保留该点,否则,剔除当前点。特征邻域尺寸k设置为10,标准差倍数设置为1,滤波结果如图1所示。由图1可知,天空中的离散点以及悬浮于道路上方的噪声点等粗差点均得到了较好的剔除。

图1 统计滤波剔除粗差点

1.2 点云扫描线提取

根据车载激光雷达的扫描方式[17],如图2所示,Si-1、Si、Si+1为系统记录的3条连续激光扫描线,ptk,ptk+1为2个连续激光脚点的三维坐标。

图2 车载激光雷达扫描方式示意图

在对道路进行扫描时,由于道路环境顶部多为天空,因此会出现没有激光点返回的情况,此时当前扫描线的最后一个点pti与下一条扫描线的起始点pti+1的扫描角度会有一个显著的变化。

同理,由于车载激光点云的连续性,这两个点的GPS时间差也会有一个显著的变化。设置一个角度阈值Δθ或时间阈值Δt,利用式(4)检测扫描线两端的断点,将连续点云归于一条扫描线中,从而将离散的扫描点转化成有序的二维扫描线数据集。

abs(θi+1-θi)>Δθ,

或 abs(ti+1-ti)>Δt。

(4)

式中:θt+i,θi为激光点扫描角度;ti+1,ti为瞬时GPS时间;Δθ,Δt分别为扫描角度差和GPS时间差,具体取值与车载激光雷达类型及道路环境有关。文中利用连续点最大GPS时间差进行扫描线提取为Δt为1.42×10-5s,图3(a)和图3(b)分别为原始扫描点云和提取的扫描线(为了显示效果,每隔35条扫描线抽取一条,相邻扫描线用不同颜色区分)。

由图3可知,将离散道路环境点云转换为按照扫描线方式进行提取后,原本散乱无规则的点云数据变得更加清晰、有序,而且一定扫描线范围内不同地物目标在扫描线上保持了几何特征,相邻扫描线数据具有局部相似性。

图3 点云扫描线提取结果

2 改进移动窗口道路点云分割算法

2.1 道路扫描线点云特征分析

由于扫描线沿车辆前进方向依次排列,每条扫描线可以当作道路环境的一个剖面,不同地物目标在同一扫描线上表现出不同的空间分布和几何形状。图4为分离出来的一条点云扫描线。

图4 不同目标在扫描线上的空间分布

由图4可知,道路一般比较平缓,高程差相对较小且变化不大,在扫描线上多呈水平的线性分布,在道路边界处会有一个局部的高程阶跃(图4中黄色框);建筑物立面点云,相邻点在平面方向上相差很小,高程变化比较大,为近似垂直的线性分布(图4中紫色框);路灯杆、树干、竖篱笆等立式地物点云在小范围内呈现垂直线性分布(图4中绿色框);树冠、杂草等不规则地物的点云在扫描线中分布稀疏,呈离散状态(图4中红色椭圆)。根据扫描线中道路高程差小而其他目标在局部范围内高程变化较大的空间分布规律,通过统计每一条扫描线中的高程变化,即可实现滤除高程较大的目标,保留道路区域。

2.2 移动窗口道路点云分割算法

根据扫描线特征,为了快速检测扫描线中道路区域,在一条扫描线中设置三个连续的大小为n的滤波窗口,以窗口1的尺寸为步长对称的从两端向中间逐点分析连续相邻窗口的高程差值,以确定地面的两个边界区域剔除非地面点。窗口1用于快速确定地面边界点,窗口 2、窗口3用来保证窗口1确定的范围连接为一段近似水平分布的长条形线段[1,18]。其原理如图5所示。

图5 基于扫描线的移动窗口道路点云提取原理示意图

以扫描线单端为例,假设窗口尺寸n=5,窗口移动过程如图6所示。尺寸为n的窗口包含n个激光点S={pt1,pt2,pt3,…,ptn},其中ptk={xk,yk,zk},该窗口内高程差为

ΔZ=max(z1,z2,z3,…,zn)-

min(z1,z2,z3,…,zn)。

(5)

且3个连续窗口内高程差为ΔZ1,ΔZ2,ΔZ3则

ΔZ1≤Δhfilter,

(6)

ΔZ2≤Δhpavement,

(7)

ΔZ3≤Δhpavement,

(8)

式中:Δhfilter为道路与非道路区域高程差;Δhpavement为单个窗口内道路点高程变化最大值,两者的取值和道路环境相关,其中Δhfilter>Δhpavement。窗口尺寸n的取值与点云密度相关(假设车载激光的点密度为50点·m-2,则点与点间距为0.02 m,若窗口尺寸n>20,则窗口2和窗口3能确定一条大致为0.8 m的水平线段)。根据不同的道路环境,设置Δhfilter和Δhpavement大小,利用式(6)~(8)可以快速滤除高程变化较大的点,保留高程变化平缓且连续分布的点云,从而得到道路点云。

根据道路平均点密度确定移动窗口1、2、3的尺寸n为15,以此应用移动窗口法对道路分割结果如图7所示,图7(b)为图7(a)中矩形区域的局部放大。由图7可知,该方法可以滤除绝大部分的植被、路灯、电力线、车辆等非路面目标,但在上方靠近道路边界处的部分竖直围栏以及部分植被被保留了下来,被误判为道路,如图7(a)中椭圆区域;对于下方道路,尽管提取到了带有明显边界的道路点云,但边界处有非道路点干扰,如图7(b)所示,影响了道路提取精度。

2.3 改进移动窗口道路点云分割算法

分析采用固定尺寸移动窗口对道路提取存在问题[19-20]的原因发现,根据激光雷达的扫描原理,距离越远则点云数据密度越小,使得即便是同一条扫描线上也会出现中心区域密度大,两端密度低的现象,应用固定尺寸的移动窗口进行道路分割示意图如图8所示。

图6 窗口移动过程示意图

图7 移动窗口道路分割结果

图8 固定尺寸移动窗口道路分割示意图

利用固定尺寸移动窗口进行道路分割,此时会出现两种情况:

1) 窗口尺寸设置过小,则3个滤波窗口在水平方向上确定的距离较短,在靠近道路边界处容易将一些大面积地物上的点云误判为地面点,如图8(a)所示。在窗口1、窗口2和窗口3都满足传统移动窗口分割算法的判断依据下,窗口1被误认为是道路边界点云,窗口2和窗口3确定的局部区域被误判为道路区域。

2) 窗口尺寸设置过大,又会将一些较小起伏的地面点云过滤掉,如图8(b)所示。窗口1为道路边界点,窗口2和窗口3为大尺寸下得到的真实道路区域点云。此时窗口1中不仅包含边界点,还有部分非道路干扰点,影响道路边界的提取精度。

针对以上情况,文中对移动窗口进行了改进,根据不同位置的点密度差异自适应确定窗口尺寸,克服原方法采用固定相同滤波窗口带来的道路区域和道路边界处错误点的提取问题,进而改善提取结果,具体步骤流程如下:

① 设置窗口1,2,3的初始尺寸n=n0,此时n0为一个较小值,利用式(5)计算得到3个窗口内的高程差分别为ΔZ1,ΔZ2,ΔZ3。

② 从扫描线两端向中间逐点分析连续相邻窗口的高程差值,根据式(6)~(8)初步确定窗口1的位置,此时确定的窗口1可能为真实道路边界点,也有可能为小尺寸下的虚假道路边界点(图8(a)中红色虚线框)。

③ 固定窗口1位置,以步长为1开始逐步增大窗口2与窗口3的尺寸,直至随着窗口尺寸增大,ΔZ2,ΔZ3满足式(7)与式(8)并不再发生变化,记录此时窗口2与窗口3的尺寸ns;若窗口尺寸增大的过程中出现ΔZ2,ΔZ3不满足式(7)和式(8),此时窗口1为虚假边界点云,更新窗口1位置到此时窗口3位置,确定此时窗口3位置为新的道路边界点(如图9(a)所示),继续返回执行。

④ 在ΔZ1满足式(6)的条件下逐次减少窗口1尺寸(图9(b)绿色框),直至达到满足条件的最小窗口1尺寸nm(图9(b)红色框)。因为在步骤3结束后,窗口1,2,3的尺寸均为ns,此时窗口1尺寸较大,窗口1中不仅包含边界点,还有部分非道路点(如图8(b)所示),影响边界提取精度。

通过上述四个步骤即可完成对移动窗口1,2,3尺寸自适应设置。改进后的移动窗口示意图如图9所示。通常情况下nm≠ns,即窗口2与窗口3尺寸相同,而窗口1和窗口2与窗口3具有不同的尺寸。利用改进移动窗口方法进行道路分割,初始窗口尺寸设置为5,通过更新迭代当窗口1、2、3尺寸均为18时,ΔZ2,ΔZ3满足式(7)与式(8),分割结果如图10所示,图10(b)为图10(a)中矩形区域的局部放大。

由图10可知,提取结果中消除了固定移动窗口提取被误判为道路的局部区域,如图10(a)中椭圆区域,但此时道路边界处仍存在干扰点,如图10(b)所示。保持窗口2、3尺寸为18,缩小窗口1尺寸继续进行迭代,直至窗口1尺寸为10时达到满足式(6)的最小尺寸,此时道路提取结果如图11所示。

由图11可知,提取结果中不仅消除了固定移动窗口提取被误判为道路的局部区域,如图11(a)中椭圆区域,而且消除了边界处的干扰点,如图11(b)所示,得到了清晰的道路边界。

图9 改进后的移动窗口示意图

图10 调整窗口1、窗口2和窗口3尺寸道路分割结果

图11 改进的移动窗口道路分割结果

3 实验结果分析

3.1 实验条件与样本数据

实验环境是WINDOWS 10操作系统,Intel(R)Core(TM) i7-10710U CPU@ 1.10 GHz 1.61 GHz ,RAM 16.0 GB,Visual Studio 2019+PCL-1.10.1+LAStools环境,采用C++语言进行编写。实验采用SSW车载激光扫描系统采集的城市公共区域和复杂街区道路共113份数据,其中城市公共区域道路有53份数据,总共包含112 076 160个激光点;复杂街区道路有60份数据,总共包含163 905 759个激光点。数据中包含城市环境中常见的车行道、行道树、汽车、建筑物、路灯、交通标志杆等地物目标。实验数据基本信息见表1。

表1 实验数据基本信息

3.2 处理结果分析

分别利用最小-最大高度差滤波法(文献[4])、改进RANSAC算法(文献[5])、移动窗口算法(文献[9])与文中提出的改进移动窗口算法对点云数据中的道路区域进行提取,道路分割结果如图12所示。图12(a)中第一幅为城市区域道路点云图,第二幅和第三幅为复杂街区道路点云图。城市区域道路平坦,两侧为建筑物,路面上存在汽车等障碍物。复杂街区包含大量的高层建筑立面信息,大量人行横道、行道树,路灯,护栏等地物目标,同时道路中间还有汽车、广告牌,交通控制台和花坛,包括弯道和十字路口等道路类型。由于没有真实的参考数据,文中借助Cloud Compare(CC)软件人工数字化标定道路区域作为参考数据,分别利用文献[4-5,9]中方法与文中提出的改进移动窗口算法得到的道路分割结果与人工标定结果进行对比。选用准确率、召回率和综合评价指标三个指标对道路区域提取结果精度进行评价,三个指标的计算方法为

(9)

(10)

(11)

式中:nTP为正确提取的道路点的个数;nFP为错误提取的道路点的个数;nFN为未被提取的道路点的个数。为检验算法提取效果,以图12(a)中第三幅点云数据为例进行评估,四种算法道路提取结果精度评价汇总结果见表2。

图12 算法分割结果对比图

表2 道路提取精度评价表

由表2来看,与其余三种算法进行对比,文中提出的改进移动窗口方法对道路提取误差评价指标准确率P、召回率R和综合评价指标F分别为96.42%,90.38%和93.30%。其中,准确率P和综合评价指标F均得到提升,召回率R与文献[4]中相较稍低,原因是道路中存在汽车遮挡,导致部分道路点未被提取出来。

以综合评价指标作为道路样本识别准确度的评价指标,分别用N90,N80和N70表示F大于等于90%,80%和70%的样本数,相应的准确率分别为F90,F80和F70。文中统计F80的样本数作为识别准确度衡量标准,图13为不同算法下的道路识别准确度直方图。

由图13可知,在城市区域环境下,四种算法的识别准确率分别为90.57%,94.34%,96.23%和98.11%,在复杂街区环境下,四种算法的识别准确率分别为71.67%,75.00%,83.33%和93.33%。在复杂街区道路识别准确度较其他三种算法有了明显的提升。综合实验结果表明,文中提出的改进移动窗口算法有效提高了道路提取结果的准确性。

图13 不同算法下的道路识别准确度直方图

4 结 论

1) 文中将离散点云转换为按扫描线排列的有序点云,分析不同目标在扫描线上的特征,在传统移动窗口方法的基础上,通过构建多尺度、多窗口组合的改进移动窗口滤波方法,提出一种基于扫描线的移动窗口道路区域识别方法。

2) 利用改进移动窗口滤波方法,通过自适应确定道路提取滤波窗口尺寸,获得了更好的道路边界区域提取效果。与其他算法相比,文中算法在城市区域准确率为98.11%,在复杂街区准确率为93.33%,克服了固定滤波窗口导致的道路边界处错误点提取问题,实现了道路边界点云的准确提取。

3) 文中主要利用车载激光点云中的空间几何信息进行道路环境特征的感知。后续研究将通过构建点云之间的空间拓扑关系,完善语义信息和增强纹理特征等,融合点云数据和其他辅助数据,实现信息互补,提高点云数据处理的效率和道路区域识别的精度。

猜你喜欢
高程滤波尺寸
红树林宜林地滩面高程及潮水退干时间时长的测量方法
基于HP滤波与ARIMA-GARCH模型的柱塞泵泄漏量预测
基于改进自适应中值滤波的图像降噪方法*
场景高程对任意构型双基SAR成像的影响
CIIE Shows Positive Energy of Chinese Economy
8848.86m珠峰新高程
基于二次曲面函数的高程拟合研究
基于非下采样剪切波变换与引导滤波结合的遥感图像增强
佳石选赏
佳石选赏