引言

同时定位与建图技术(Simultaneous Localization and Mapping,SLAM)的提出,开辟了室内外一体化定位与导航的新纪元。其中,激光雷达(Light Detection and Ranging,LiDAR)SLAM具有可靠性高、建图直观、不受光照条件影响等优点,在昏暗房间、地下停车场等弱光场景中具有天然优势。

LiDAR退化环境的挑战

在某些环境中,由于地物特征单一、结构纹理匮乏,导致相邻LiDAR量测数据之间相似度较高,在某个方向或某些方向缺乏用于点云帧间配准的几何特征或有效约束,从而影响LiDAR里程计定位精度和点云地图构建效果。通常将具有上述特点的环境称为LiDAR退化环境,例如:长廊、小巷、隧道、环廊等。

图1:LiDAR退化环境点云示例

现有方法的局限性

基于特征值的检测方法

将状态估计问题转化为最小二乘问题,通过比较特征值和阈值来判断是否存在退化。检测性能过度依赖于启发式阈值,在不同环境中需要设置合适阈值才能获得高精度的检测结果。

基于点云配准的检测方法

通过计算信息熵、判断几何一致性等策略来评价环境提供几何约束的充分性。依赖于点云配准过程或配准结果,无法对单帧点云进行直接检测。

基于传统机器学习的检测方法

如CELLO方法,直接基于LiDAR点云来预测机器人位姿估计的不确定性。属于间接预测方法,预测结果对选择特征的质量比较敏感。

基于深度学习的检测方法

采用PointNet、3D ResUNet等神经网络来检测移动机器人的自主定位定姿能力或直接预测LiDAR点云的退化情况。网络结构通常比较复杂,模型训练效率以及数据的实时处理效率有待提高。

为降低启发式阈值和间接判断对最终LiDAR退化环境检测结果的影响,本文从点云所描述的环境几何结构角度,通过提取点云特征并采用传统的机器学习方法直接检测单帧LiDAR点云的退化情况,实现了高效率、高精度的LiDAR退化环境检测。

研究方法

基于改进XGBoost的LiDAR退化环境检测方法流程
图2:基于改进XGBoost的LiDAR退化环境检测方法流程

本文提出的基于改进XGBoost的LiDAR退化环境检测方法,通过构建点云特征体系并量化退化标签,从而构建模型训练数据集。在XGBoost算法基础上,提出一种点云特征的综合重要性计算方法并采用一种高效的最优分类特征子集构建方法,用于提高模型的检测精度和训练效率。针对XGBoost初步检测结果,提出一种二次修正方法,进一步提高最终的LiDAR退化环境检测精度。

分类特征体系构建及退化标签量化

基于在真实环境中所采集的LiDAR点云,提取并量化能够描述当前环境结构的18种点云特征,用于构建分类特征体系。按照提取方式的不同,划分为直接特征、间接特征、衍生特征。

直接特征 (7种)

  • 激光点数量 N
  • 高程差 H
  • 高程均值 Hmean
  • 高程标准差 SH
  • X-Y平面投影面积 SXY
  • X-Z平面投影面积 SXZ
  • Y-Z平面投影面积 SYZ

间接特征 (4种)

  • 几何对称程度 C
  • 线特征点数量 Nlen
  • 独立平面数量 Nnor
  • 点云簇聚类数量 Nclu

衍生特征 (7种)

  • 点云簇X轴跨度标准差 SX
  • 点云簇Y轴跨度标准差 SY
  • 点云簇Z轴跨度标准差 SZ
  • 点云簇体积比例 Vsca
  • 地面点占比 Rg
  • 地面点平面度 Pg
  • 地面点高程标准差 Sg

基于模糊综合评价的特征重要性计算

为了全面评价点云特征的重要性,本文采用模糊综合评价(FCE)算法计算特征的综合重要性度量指标,用于构建最优的分类特征子集。

// 模糊综合评价算法计算特征重要性
1. 构建评价指标体系,包括信息增益、基尼系数、相关性等
2. 确定评价指标权重向量 W
3. 建立模糊关系矩阵 R
4. 计算综合评价向量 B = W · R
5. 根据综合评价结果对特征进行排序

特征重要性排序(示例)

独立平面数量 Nnor
0.95
点云簇聚类数量 Nclu
0.87
线特征点数量 Nlen
0.82
几何对称程度 C
0.78
高程标准差 SH
0.73

基于Spearman秩相关系数的双向特征筛选

为了提高XGBoost的训练效率,本文提出一种基于Spearman秩相关系数(SCC)的双向特征筛选策略,通过评估特征之间的相关性,构建最优的特征子集。

// 双向特征筛选算法
1. 初始化特征集合 F 和空的特征子集 S
2. 根据模糊综合评价结果,选择最重要特征加入 S
3. 前向搜索:计算 F 中剩余特征与 S 中特征的 SCC
   选择与 S 中特征相关性最小的特征加入 S
4. 后向搜索:计算 S 中特征之间的 SCC
   如果存在高度相关的特征对,移除重要性较低的特征
5. 重复步骤 3-4,直到满足终止条件

基于滑动窗口和多数投票的二次修正

针对XGBoost的初步检测结果,本文提出基于滑动窗口(SW)策略和Boyer-Moore多数投票(BMV)策略进行二次修正,进一步提高LiDAR退化环境的检测精度。

滑动窗口策略

通过在时间序列上设置固定大小的窗口,对窗口内的检测结果进行统计分析,减少孤立误检测点的影响,提高检测结果的时间连续性。

[0, 0, 1, 0, 0] → 窗口大小=3 → [0, 0, 0, 0, 0]

多数投票策略

在滑动窗口内应用Boyer-Moore多数投票算法,找出出现次数最多的检测结果作为最终结果,进一步提高检测的鲁棒性。

[1, 1, 0, 1, 0] → 多数投票 → 1(退化环境)

实验设计与数据采集

实验平台

  • 移动机器人:Jackal UGV
  • LiDAR传感器:Velodyne VLP-16
  • 计算平台:Intel i7-10700K CPU
  • 开发环境:Ubuntu 20.04 + ROS Noetic

数据采集场景

  • 退化环境:长廊、隧道、小巷、环廊等
  • 非退化环境:开放空间、多物体场景等
  • 混合环境:包含退化和非退化区域的场景

数据标注与处理

为了构建高质量的训练数据集,本研究采用了自动化的数据标注方法,结合人工校验确保标签的准确性。

通过LOAM算法的退化检测模块和人工校验相结合的方式,对采集的点云数据进行标注。共采集了约5000帧点云数据,其中包含退化环境点云约2000帧,非退化环境点云约3000帧。

5000+
总帧数
2000+
退化环境帧数
3000+
非退化环境帧数

实验结果与分析

特征重要性分析

通过模糊综合评价算法,计算了各特征对LiDAR退化环境检测的重要性,结果表明间接特征和衍生特征对退化环境的识别贡献较大。

检测性能评估

方法 检测成功率 (%) 误检测率 (%) 检测效率 (ms/帧)
LOAM退化检测模块 83.50 26.50 25.3
原始XGBoost 91.23 3.87 12.8
XGBoost + FCE 93.15 2.46 11.5
XGBoost + SCC 92.78 2.91 10.2
本文方法(完整) 94.41 1.24 10.9

实验结果表明,本文方法各组成部分的有效性均能够被合理地验证;LiDAR退化环境检测成功率为94.41%,非退化误检测率为1.24%;相较于LOAM退化检测模块,检测成功率提高了10.91%,误检测率降低了95.26%,检测效率提高了56.97%。

结论

本文提出了一种基于改进XGBoost的LiDAR退化环境检测方法,实现了从环境的几何结构角度直接检测单帧点云的退化情况,达到了高效率、高精度的LiDAR退化环境检测目标。

主要贡献

  • 提出基于模糊综合评价的特征重要性计算方法,提高特征选择的全面性和准确性
  • 设计基于Spearman秩相关系数的双向特征筛选策略,提高模型训练效率
  • 引入滑动窗口和多数投票策略进行二次修正,提高检测结果的时间连续性和鲁棒性
  • 实现了高效率、高精度的LiDAR退化环境检测,检测成功率达94.41%

应用价值

  • 可有效应用于LiDAR SLAM过程,提高定位和建图精度
  • 在地理信息系统(GIS)和遥感(RS)领域具有重要作用
  • 改进的XGBoost算法适用于其他领域,提高数据处理效率和准确性
  • 为复杂环境下的自主导航和空间数据采集提供技术支持

未来工作将进一步优化特征提取方法,探索更多环境特征的量化方式,以及将本方法扩展到更复杂的场景和更多类型的LiDAR传感器中。同时,研究如何将本方法与其他传感器数据融合,进一步提高退化环境检测的准确性和鲁棒性。