APP下载

面向巡视探测任务的复杂地形信息感知与场景重建

2021-07-09胡梦雅李世其纪合超

载人航天 2021年3期
关键词:移动机器人聚类算法

赵 迪 1,2,胡梦雅 1,李世其 2,纪合超 2,何 宁

(1.湖北工业大学,武汉 430068;2.华中科技大学,武汉 430074;3.中国航天员科研训练中心,北京 100094)

1 引言

移动机器人的应用场景已延伸至复杂地形环境(包含凹坑、坡、台阶等),这些复杂地形因素会影响移动机器人执行巡视探测任务,超过越障极限的地形起伏会使机器人无法通过,不及时的地形信息感知也会影响机器人的探测安全与效率。如移动机器人在进行行星探测时,由于先验知识匮乏,需要在根据指令巡视探测的同时,对周围环境地形信息进行感知。因此为保证移动机器人的探测安全,即时、高效地感知地形信息尤为重要。

地形信息感知方法根据传感器数据的不同,主要包含振动信号数据、基于视觉或激光雷达获取的数字高程模型(Digital Elevation Model,DEM)数据、RGB数据、深度数据、点云数据等。其中,振动信号分析通过对机器人探测过程中的振动信号进行分类,但在没有先验知识的前提下,该方法容易使机器人处于危险状态;基于DEM数据的分析方法多用于包括高程在内的各种地貌因子的全局描述,但DEM图像数据的比例尺较大,会造成局部地形信息缺失;Blas等采用颜色纹理实现自然地形图像的在线快速分割,但是颜色信息受外部环境因素影响较大,分割稳定性难以得到保障;基于点云的地形描述可以快速准确地获得场景的几何信息,其中Broten等通过计算各个栅格的加权平均高度来构建高程地图,能辅助机器人在未知的室外环境下运作,但该方法无法准确表示场景中地形信息;Gingras等通过高程划分可通行区域与障碍区域,并采用改进的三角网格法对可通行区域进行地形重建以及路径规划,但该方法在含一定坡度的路面环境下难以适用。

本文针对移动机器人在巡视探测过程中对复杂地形信息的感知问题,提出一种基于点云的地形信息感知与快速三维场景重建的方法。首先采用Kinect2.0深度(RGB-D)相机获取原始数据,对得到的三维点云数据进行滤波降噪等处理;然后使用改进的随机采样一致性算法(Random Sample Consensus,RANSAC)拟合基准面,并以此作为移动机器人运行平面;其次使用基于密度的聚类算法(Density-Based Spatial Clustering of Applications with Noise,DBSCAN)对剩余的三维点云数据进行分类聚合以获得地形特征点集,同时为简化地形特征点集并确定其轮廓,采用凸包算法(Convex Hull)对分类后三维点云数据进行处理;最后结合获取的基准面与地形特征信息对移动机器人周围的环境进行快速三维重建,从而减少了对复杂地形环境信息感知与重建的时间。通过在沙地、台阶等复杂地形的场景下进行模拟实验,快速进行三维场景重建,以证明本文方法的有效性。

2 地形信息感知与场景重建

2.1 算法流程

地形信息感知与场景重建算法主要流程如图1所示。

图1 算法流程图Fig.1 Algorithm flowchart

将采集到的RGB-D数据转换为点云数据,进行滤波降噪以及RANSAC算法估计基础平面;然后采用基于密度聚类的算法感知地形特征信息(凹坑、坡、台阶),并用凸包图形学方法简化特征信息,最后进行三维场景重建。

2.2 原始点云数据处理

为了快速三维场景重建,需对原始点云数据进行处理,获取有效的基准平面与地形特征信息。

2.2.1 基准平面获取

滤波降噪完成后获得点云数据集

X

={

x

x

,…,

x

}。在移动机器人巡视探测过程中,为区分复杂地形中凸起障碍和凹陷障碍,可使用RANSAC算法拟合基准面作为移动机器人的运行平面,定义高于基准面的地形为凸起障碍,低于基准面的地形为凹陷障碍。传统RANSAC算法可以在大量离散数据集中获得高精度、一致性模型参数,但是其参数设置难以满足各不同地形下基准面拟合的需要,同一参数设置难以满足变化较大的地形环境,本文提出改进的RANSAC算法是通过在机器人越障能力极限

h

范围内设置自适应阈值

t

,即在

h

范围内的地形起伏对机器人移动不构成影响。改进RANSAC算法流程如下:1)计算

X

中点到迭代平面距离

d

μ

为所有点沿垂直地面方向的平均距离,并设置阈值为

t

,式(1)为自适应阈值

t

的计算公式。

2)若

d

t

,则认为

x

为局内点

n′

,并统计局内点个数。3)对1)、2)步骤进行重复迭代

k

次,其中

k

如式(2)所示。

4)选择局内点最多的平面为最优平面模型

P

(

ax+b y+cz=d

),并获得该模型

P

参数

a

b

c

d

作为该点云数据的基准面参数值。

本文使用离群点剔除算法以及改进RANSAC算法,在Matlab中对点云数据进行仿真处理,结果如图2所示。

图2 离群点剔除算法以及改进RANSAC算法仿真效果Fig.2 Simulation effect of outlier elimination algorithm and improved RANSAC algorithm

由图2可知,离群点剔除效果较好,且能有效拟合该复杂地形的基准平面。

2.2.2 点云数据聚类

通过获取基准面,对凸起障碍和凹陷障碍进行初步分割,但由于复杂地形的凹陷和凸起等特征形状存在多样且随机连续分布的特性,无法根据几何形状对点云特征进行信息感知与语义分割。因此,为得到具有语义信息的特征点集,需要对各不同特征的点云数据进行聚类分割,使得各组点云数据能有效表示该环境下地形特征。为方便进行聚类处理,本文做出以下假设与定义:假设拟合基准面为平坦平面,即点垂直高度上的值变化可以忽略不计。定义基准平面的点云数据为无需聚类数据,离群及密度小的点云集为离散噪声点集。

为满足上述假设与定义条件,首先对滤波降噪后点云数据

X

进行聚类预处理,通过统计分析剔除离散噪声点集;剔除无须聚类点集即基准面点集;定义低于平面的数据集为

G′

(

j=

1,2,…,

m′

),高于平面的数据集记为

H′

(

k=

1,2,…,

h′

)。

通过聚类预处理各地形特征被分割成不连通且具有一定密度的子集。在使用聚类算法时,各不同子集之间距离信息和密度信息是感知聚类特征的关键因素,故采用DBSCAN聚类算法对各不同子集进行聚类,该算法步骤如下:

1)对各子集建立KD索引树;

2)设置搜索半径

r

、聚类最少点数

Min

以及聚类最大点数

Max

;3)进行最近邻搜索(K-NearestNeighbor)算法,设

s

为点集中两点间欧氏距离;4)设置计数变量

N

初始值为0,则当

s<r

可视为同一类地形特征信息点,并令

N

=

N

+1;当

N

Min

值时,该点集未构成聚类;当

N

Max

值时,终止该子集聚类进程。5)重复步骤2)~4),直到完成所有子集的聚类过程,并得到

G′

(

j=

1,2,…,

m′

),

H′

(

k=

1,2,…,

h′

)。其中,搜索半径

r

与聚类最少点数

Min

根据所使用相机的参数与采集地形特征进行设置。对降噪后点云数据

X

进行DBSCAN聚类处理后的效果图如图3所示。

图3 DBSCAN聚类效果图Fig.3 DBSCAN clustering effect diagram

图3可以看出,采用DBSCAN聚类算法能有效分割出各地形特征点集,并感知各点集的位置信息与密度信息。

2.3 地形信息感知与快速三维重建

为实现快速的场景重建,需简化地形特征信息。本文在进行地形信息感知中,对各点云子集信息进行简化处理,通过计算得到其位置信息的中心坐标以及轮廓信息的包络体,以此代表特征点集。该过程如下:

1)对各聚类点集

G′

(

j=

1,2,…,

m′

)、

H′

(

k=

1,2,…,

h′

),利用式(3)求出其中心坐标。

式中,

c

=(

x

y

z

)为某聚类点集中心坐标,

n

表示该聚类点集中点个数。2)采用凸包算法计算各聚类点集轮廓范围信息。选取某聚类点集

G′

中任意四点构成一个初始的四面体;对

G′

中所有剩余点

G′

进行判断,若该点在四面体外部,则删除与此点相对的面,形成新的多面体;若该点在四面体内部,则跳过该点。对所有聚类点集重复以上步骤。

通过上述简化处理,取各聚类点集的中心坐标、轮廓信息作为障碍物信息,再结合拟合的基准平面进行地形信息重建,相较于原始点云数据的障碍物描述,不仅可以大大降低地形特征维度,且减小了需要传递的测量值数据量,从而提升了时间效率。图4即为仿真数据三维重建后的效果图。图中可知本文方法可有效感知关键障碍物信息并进行快速场景重建,极大地减少了程序运行数据量。

图4 点云数据三维重建Fig.4 Three-dimensional reconstruction of point cloud data

3 实验与验证

3.1 实验条件

对本文方法在实际场景中的可行性与运行结果进行验证,实验硬件设备条件如表1所示。

表1 实验硬件设备Table 1 Hardware specifications

实验场景选择具有代表性的沙地实验环境,该环境具有连续高低起伏等特点,适合作为复杂地形环境下地形感知与重建的实验场地。本文在强自然光照条件下采集多帧数据,每帧通过融合生成包含约20 000个点的点云数据集。选择一帧包含该环境下各种噪声的特征点云数据进行分析,图5(a)所示为沙地实验环境,图5(b)为该环境下融合生成的点云数据。

图5 实验环境及该环境点云数据Fig.5 Experiment environment and point cloud data of the environment

3.2 实验数据分析

3.2.1 点云数据处理实验效果与分析

在拟合基准面时,通过使用改进RANSAC算法计算并得到阈值

t=

3.26,并当迭代次数达到200次时满足期望需要。图6(a)为原始点云数据,红点表示基准面局内点,这些点将会作为拟合基准面的点集,蓝点表示拟合基准面后剩余点;图6(b)为该环境下点云数据侧视图,原始点云数据在垂直方向上分布变化较大,且其中包含某些尖锐噪声点,可被视为点云数据中离群点,会影响后续聚类算法的效果,故应使用离群点剔除算法将其剔除;图6(c)为局内点到拟合基准面距离值分布情况,其直方图分布情况与高斯曲线吻合,实现了较好的拟合效果;图6(d)为拟合基准面后剩余点云数据。对图6(d)中剩余点云使用DBSCAN聚类算法,并设置近邻搜索半径为

r

=0.02 m时,可得到进行DBSCAN聚类算法后特征点集在原始点云数据中的位置信息,如图7所示。

图6 原始点云数据离群点剔除以及基准面拟合Fig.6 Outlier elimination of original point cloud data and datum surface fitting

3.2.2 特征地形点云信息重建

对图7中各特征点集进行凸包轮廓提取,简化特征点,以轮廓点簇生成包络体表示起伏地形信息。根据此包络体的范围(高度、深度)判断当前地形特征信息。其中

H

H

表示为凸起障碍,

G

表示为凹陷障碍,具体数据如表2所示。

图7 DBSCAN聚类后特征点集信息Fig.7 Feature point set information after DBSCAN clustering

从表2中可以看出,在进行包络体提取后,使用相对较少的点云数据即可表示该地形特征,大大降低了计算障碍物轮廓的复杂度,提高了运算效率。图8为使用包络体信息并结合拟合基准面信息,将三维场景进行重建,与原始数据直接进行重建的效果进行对比。图8可以看出,相较于原始数据直接进行重建,本文方法较好还原了该复杂环境地形特征,同时减少了约2/3的时间,为移动机器人避障提供了可靠保障。

表2 地形特征提取Table 2 Terrain feature extraction

图8 原始数据与本文方法地形重建效果对比Fig.8 Comparison of the original data and the terrain reconstruction effect of this method

4 实验效果对比分析

4.1 算法执行效果

本文算法主要由点云数据处理以及地形信息重建构成。在分析点云数据处理算法的执行效果时,分别从基准面拟合算法以及聚类算法两方面进行分析。

4.1.1 拟合基准面效果

聚类效果优劣很大程度上取决于基准面拟合效果。实验中地形点云数据包含大量离群点,这对于拟合基准面有较大影响。针对基准面拟合效果,本文对比了最小二乘法、特征值法以及改进RANSAC算法在处理相同实验采集数据时效果。其中实验数据为在相同参数设置下,各方法均进行20次实验取平均值得到的基准面方程,如表3所示。其中

T

表示运算时间,

σ

是数据标准偏差,

a

b

c

d

为基准面方程

ax+b y+cz=d

参数。由表3可知,在处理包含大量离群点的地形点云数据时,受到离群点影响,最小二乘法和特征值法的标准偏差

σ

较大,拟合效果不理想。而本文通过改进RANSAC算法,使用局内点拟合基准面,相较于其他2种方法具有标准偏差小、时间效率较高等特点。

表3 基准面拟合算法效果对比Table 3 Comparison of the effect of base-level fitting algorithms

在传统RANSAC算法中,阈值

t

的选取对拟合效果影响较大,通常较高的

t

值会导致局内点分割过量,难以去除无效点;而较小的

t

值会导致欠分割,难以保存有效的局内点。在上述点云数据中,对相同数据选择不同

t

值分别使用RANSAC算法拟合,得到图9所示拟合结果,表4所示为不同

t

值对拟合平面的影响。通过对图9和表4中不同

t

值对RANSAC算法影响分析可得出:

表4 不同t值对RANSAC算法影响Table 4 The influence of different t values on RANSAC algorithm

图9 RANSAC算法中在不同t值下剩余点云数据Fig.9 The remaining point cloud data under different t values in the RANSAC algorithm

1)从时间上来看阈值

t

与运行时间近似成正比,且阈值越大,计算的局内点数越多,耗时越久。2)随着阈值

t

的增大,局内点数越多,所占比例越大;若选取的

t

较大时则会将过多无效点或误差点认定为局内点;若选取的

t

较小则会剔除应该选择的有效点,拟合平面效果不明显,影响聚类算法。因此

t

应该选择在一定的阈值区间内可达到较好的分割效果。3)改进RANSAC算法通过设置自适应

t

值,动态的改变了与

t

值呈正相关的比例系数

w

值。随着地形变化,比例系数

w

发生改变从而会改变迭代次数

k

,通过不同的迭代次数达到期望概率。

4.1.2 聚类效果分析

针对特征点集聚类效果,通常采用紧密型指标(Compactness,CP)、间隔性指标(Separation,SP)、戴维森堡丁指数(Davies-Bouldin,DBI)、邓恩指数(Dunn Validity Index,DVI)等指标进行分析。其中CP表示类中各点到聚类中心的平均距离,该值越低意味着类内聚性越好;SP代表各聚类中心两两之间平均距离,SP越高意味各类间间聚越远;DBI代表任意两点簇内平均距离之和与两聚类中心距离之比的最大值;DVI代表任意两点簇元素的类间最短距离与任意点簇中类内最大距离之比。

本文采用上述4种评价标准,选用3种常用算法:K-Mean算法、层次聚类算法、DBSACN算法,对去除基准面拟合点后的剩余点云数据进行聚类。在聚类效果中,通常簇内越紧密、簇间越分离代表聚类效果越好。这3种聚类算法效果如图10和表5所示。

图10 不同算法的地形聚类效果Fig.10 Terrain clustering effect of different algorithms

表5 聚类评价表Table 5 Cluster evaluation table

从图10以及表5中可以看出,层次聚类相对其他2种算法耗时较长,聚类紧密性较差,DBI分类适确性较差且DVI指标较差,故层次聚类不适合地形特征感知。K-mean聚类算法耗时较短,但相较于DBSCAN算法,其CP和DBI指标较高,SP和DVI指标较低,其聚类效果劣于DBSCAN算法,此外K-mean聚类需要选取

K

值,且对噪声、孤立点数据敏感,故不适合地形特征感知。DBSCAN算法耗时较短,聚类簇紧密性较好,簇间分隔性较远,可以较好的聚类特征地形。综上所述,DBSCAN聚类算法相对其他算法效果更好。

4.2 地形信息重建效果分析

地形信息重建效果主要取决于重建精确度以及耗时长短。为了验证本文三维重建方法效果,在不同类型复杂场景下进行实验(表6)。这些场景分别为沙地、树林、堆积杂物、减速带、台阶等。通过分析场景地形特征点云数据量、地形信息感知时间、复杂场景重建时间,得到如表7所示数据。对比表6各环境下的效果图,可以看出本文使用的凸包算法在地形信息重建过程中不仅识别出所有地形特征,且有效保留了各地形特征信息。结合表6可知,在保证各地形特征的位置与轮廓精度前提下,本文方法极大缩短了重建时间,符合复杂环境下移动机器人执行探测任务时的避障需要。

表6 场景1~5的RGB图、特征图、原始数据重建以及本文方法场景重建Table 6 RGB map,feature map,original data reconstruction of scene 1~5 and scene reconstruction of the method in this paper

表7 多场景重建对比Table 7 Comparison of multi-scene reconstruction

5 结论

1)改进的RANSAC算法可以从包含大量离群点的数据集中提取出一致性较好的拟合平面;

2)通过凸包算法提取特征轮廓,能有效保留特征信息,且简化无用信息,大幅度减少了数据运行量;

3)结合简化的拟合平面方程快速重建地形可以极大地提高了数据利用率与时间利用率,在复杂地形中识别定位障碍物具有有效性和可行性,能实现复杂地形下的信息感知与快速重建。

猜你喜欢

移动机器人聚类算法
基于ROS 和PX4 飞控的四轮驱动移动机器人研究
基于数据降维与聚类的车联网数据分析应用
拉货机器人
基于模糊聚类和支持向量回归的成绩预测
Travellng thg World Full—time for Rree
移动机器人技术的应用与展望
学习算法的“三种境界”
算法框图的补全
算法初步知识盘点
基于密度的自适应搜索增量聚类法