基于直线端点方向匹配的激光定位方法
1 引言
近年来,面向室内的移动机器人高精度定位已经成为国内外研究的热点[1-2]。目前,室外定位技术已经成熟,例如全球定位系统(GPS)和北斗卫星导航系统。这些定位技术已经足以满足大多数室外环境下的定位。然而在室内环境下由于障碍物的遮挡,信号较差,移动机器人无法得到可靠的定位信息[3]。轮式里程计在短时间内可以得到精确的机器人位姿,但是在复杂不平的地形和光滑的地面上性能较差[4]。针对室内环境下移动机器人的精确定位仍存在很大的挑战。
深度相机和激光雷达可以获取丰富的环境信息,实现移动机器人的精确定位。但是深度相机容易受到光照的影响,导致定位精度较差[5]。激光雷达测距精度高,并且不受光照的影响,在室内定位中应用广泛。
目前,基于激光雷达的扫描匹配方法可分为基于全局点的扫描匹配和基于特征的扫描匹配 [6-7]。基于全局点的扫描匹配直接对获取的原始数据进行处理。刘今越等[8]采用建筑信息模型数据校正激光里程计的累计误差。Lü等[9]提出一种基于迭代最近邻(ICP)算法的预处理技术,目的是估计连续扫描帧间大的旋转,处理了大的旋转后再采用标准的ICP来估计剩余变换。这类算法由于使用了全局的点数据,收敛速度慢,并且容易出现点与点之间的异常关联,定位精度较差[10]。
特征匹配通过提取环境中的特征点,根据特征之间的关系进行匹配,因此收敛速度较快。Mohamed等[11]提出一种基于角点特征的匹配方法,为说明角点的不确定度,利用提取线的方差来估计角点的协方差,有效提高了定位精度和计算效率。但是该方法在交叉线较少的情况下表现较差。大多数方法从原始激光扫描数据中提取特征点,An等[12]提出一种从子地图中提取几何特征的新方法,相比其他方法精度更高,但是计算花销更大。Jiang等[13]提出一种名为三角形特征的几何环境描述符,通过子地图中任意三个点构成三角形特征的欧几里得距离约束,可以有效提高闭环检测的准确性和速率,但是该方法目前不能用于构建实时的激光里程计。Spampinato等[14]采用不同神经网络解决机器人定位问题,这些神经网络在机器人定位精度上均有着良好的表现,可以作为传统定位方法的补充,但是计算花销较大。Liu等[15]从提取的线特征中选取兴趣点,采用“聚类、初级匹配和粗匹配”策略进行粗匹配,最后使用ICP优化粗匹配结果,具有较高的精度和效率。但是该方法的特征提取过程较为复杂,并且计算花销较大。
本文针对室内场景下移动机器人精确定位问题,提出一种基于方向端点的激光扫描匹配方法。所提方法从采集的点云数据中提取直线,以直线的端点作为特征点,但基于端点的匹配方法在特征点较少时有可能会产生误匹配。为进一步提高配准精度,以直线的方向作为端点的方向,增加端点的方向作为最近邻的约束条件,剔除误匹配点。在特征点较少的情况下,基于特征的扫描匹配精度有限,传统的ICP算法在给定初值的情况下可以提高点云匹配的准确性,避免点云之间的错误关联。因此,通过ICP算法进一步优化特征匹配的结果,有效提高扫描匹配的精度。
2 所提算法
所提基于方向端点的激光扫描匹配方法由3部分组成:基于区域生长算法的端点特征提取、利用方向端点特征的激光扫描匹配、基于ICP算法的进一步优化。3部分紧密相关、层层递进:1)基于区域生长的端点特征提取。从激光扫描数据中检测直线段,提取直线的端点作为特征点,通过端点特征的扫描匹配估计移动机器人的相对位姿变换。2)利用方向端点特征的激光扫描匹配。以直线的方向作为端点方向、端点方向作为最近邻的约束条件,有效剔除端点之间错误匹配,提高激光扫描匹配的精度。3)基于ICP算法的精配准。方向端点的匹配结果可以作为ICP算法的初值,进一步提高相邻帧之间激光扫描匹配的精度。整体框架如
2.1 基于区域生长的端点特征提取
直线检测的算法有很多种。Munir等[16]使用视觉对物体进行区分,基于霍夫变换算法检测直线特征,显著提高了直线检测的精度,但是该算法的计算花销巨大。分割合并是一种非常经典的直线检测算法[17],但是该算法容易受到噪声的干扰。Gao等[18]借鉴图像处理中种子区域生长的思想,把线段检测当作区域分割处理,与传统的分割合并算法相比有着更高的效率和精度。
所提方法采用基于区域生长的直线检测方法。首先,通过正交最小二乘法选取种子线段。点云构成的直线可以用
点到直线的距离应当满足阈值的要求,当满足阈值要求的点的数量大于
2.2 利用方向端点特征的激光扫描匹配
基于特征的匹配算法根据特征的性质和特征之间的相对关系进行匹配,因此匹配速度较快。直线特征在环境中是较为普遍的且易于观察和提取,因此,直线的端点特征可以有效描述周围环境。记源点云中
源点云
在移动机器人相邻时刻的相对位姿相差较大或者激光传感器误差较大的情况下,基于距离的对应点匹配方法有可能会发生误匹配,如
端点的方向可以由直线的方向表示,源点云
基于方向端点的扫描匹配的具体步骤如下:
1)假设源点云
式中:
2)假设源点云
式中:
2.3 基于ICP算法的精配准
方向端点的扫描匹配可以有效降低误匹配点造成的影响,但是环境特征较少时定位精度有限。ICP算法在没有初值的情况下,点与点之间容易出现异常关联,导致定位精度较差。因此,可以将方向端点的匹配结果作为初值,通过ICP算法进一步优化,提高移动机器人定位精度。假设通过方向端点扫描匹配后,源点云经过旋转平移得到新的点云
点云M和目标点云T之间通过不断迭代求解,最小化对应点之间的距离,得到更加精准的移动机器人相邻时刻之间相对位姿变换关系。
3 实验与分析
3.1 实验设置
本实验的数据采集平台如
3.2 实验1
由于地面光滑,轮子会打滑和空转,在一定程度上影响里程计的精度。在环境中摆放若干个箱子充当障碍物,用于直线特征提取,便于实现基于特征的激光扫描匹配方法。实验场景如
基于端点特征的扫描匹配的前提是能够准确地检测到环境中的直线特征。基于区域生长的直线检测方法在室内和走廊环境中均能达到90%以上的直线检测准确率[18],因此采用基于区域生长的直线检测方法。该方法要求选取的种子线段中每个点到直线的距离小于设定的距离阈值,确定种子线段后通过区域生长进行延伸,延伸的点到直线的距离仍然要小于设置的距离阈值。如果距离阈值设置得较小,可能会导致种子线段无法延伸整条直线,如果距离阈值设定较大,可能会延伸至直线之外,导致端点特征的匹配出现较大误差。因此,不同的距离阈值设置对于直线检测和端点特征匹配具有较大影响。分别设置距离阈值为0.01 m、0.04 m、0.07 m、0.10 m,基于端点特征匹配的移动机器人定位结果如
表 1. 不同约束条件下移动机器人绝对定位误差的平均值(实验1)
Table 1. Average absolute localization error of mobile robot under different constraints (experiment 1)
|
基于端点的扫描匹配方法,通过最近邻之间的距离约束确定端点之间的匹配关系。不同的距离约束对位姿的求解有较大影响。由
基于距离约束的最邻近搜索显然不能有效地保证端点之间的正确匹配,端点的方向可以作为最近邻约束条件,用来剔除误匹配点。当最近邻的距离约束设置为2 m时,基于方向端点的匹配方法与基于端点的匹配方法相比,定位精度显著提高,如
表 2. 不同最近邻约束下绝对定位误差的平均值(实验1)
Table 2. Average absolute localization error under different nearest neighbor constraints (experiment 1)
|
图 5. 误差曲线(实验1)。(a)绝对位置误差曲线;(b)绝对角度误差曲线
Fig. 5. Error curves(experiment 1). (a) Absolute position error curve; (b) absolute angle error curve
直线检测结果、端点检测结果、端点匹配结果和方向端点匹配结果如
图 6. 点云配准图。(a)源点云直线检测结果;(b)目标点云直线检测结果;(c)端点匹配;(d)方向端点匹配
Fig. 6. Point cloud registration graphs. (a) Source point cloud line detection results; (b) target point cloud line detection results; (c) endpoint matching; (d) directional endpoint matching
基于区域生长的直线检测方法可以准确地提取环境中的直线特征,但是由于激光传感器存在一定的误差,提取的直线端点存在一定误差,如
图 7. 轨迹图(实验1)。(a)不同最近邻约束条件下移动机器人轨迹;(b)不同估计方法下移动机器人轨迹
Fig. 7. Trajectories (experiment 1). (a) Trajectory of mobile robot with different nearest neighbor constraints; (b) trajectory of mobile robot with different estimation methods
一帧激光数据平均有393个点,平均每帧激光数据中检测到的直线数量为11条,端点特征平均只有22个点。由于环境中的端点特征与整个点云数据相比,数据量减少了94.4%,并且激光传感器存在一定的测距误差,基于方向端点的匹配方法与传统的ICP算法相比定位精度仍然存在一定差距。在没有给定初值的情况下,ICP算法不能准确建立点云之间的对应关系,计算误差较大,如
表 3. 不同估计方法下绝对定位误差的平均值(实验1)
Table 3. Average value of absolute positioning error under different estimation methods (experiment 1)
|
表 4. 不同估计方法下相邻帧之间定位误差的平均值(实验1)
Table 4. Average value of positioning error between adjacent frames under different estimation methods (experiment 1)
|
3.3 实验2
为验证所提算法在复杂不平地面上的实用性,控制移动机器人以0.2 m/s的速度沿着7 m×7 m的矩阵轨迹移动,并且在矩阵轨迹上铺设纸板模拟复杂不平的地面,纸板的厚度在0.1~0.5 cm之间。实验场景2如
综合实验1的分析结果,在实验2中,点到直线的距离阈值设定为0.04 m,最近邻之间距离约束设置为2 m,角度约束设置为100°。不同估计方法的平均定位误差如
表 5. 不同估计方法下绝对定位误差的平均值(实验2)
Table 5. Average value of absolute positioning error under different estimation methods (experiment 2)
|
图 9. 轨迹图(实验2)。(a)不同最近邻约束条件下移动机器人轨迹;(b)不同估计方法下移动机器人轨迹
Fig. 9. Trajectories (experiment 2). (a) Trajectory of mobile robot with different nearest neighbor constraints; (b) trajectory of mobile robot with different estimation methods
涉及的相关算法均在一款内存为16 GB搭载Intel i5-11400H 2.70 GHz CPU的笔记本上运行。相关算法所消耗的时间如
表 6. 不同激光扫描匹配算法的时间消耗
Table 6. Time consumption of different laser scanning matching algorithms
|
4 结论
提出一种基于方向端点的激光扫描匹配方法。在轮式里程计漂移较大的情况下,仅利用激光雷达传感器解决移动机器人的精确定位问题。与现有方案相比,所提基于方向端点的扫描匹配方法通过距离约束和方向约束有效剔除了误匹配点,提高了匹配的精度,并且通过ICP算法进一步优化方向端点匹配结果,纠正了端点特征较少时精度较差的问题。实验结果表明,在光滑地面上,所提激光里程计算法能够达到0.12 m的平均定位误差以及1.15°的平均角度误差,与传统的ICP算法相比有着更高的精度。在复杂不平的地面上,所提算法相较于传统的ICP算法也有着更好的表现,为移动机器人的精确定位提供了一种具有参考意义的方法。在未来的研究中,将探索其他更有效的方式来减少算法的时间消耗,并考虑加入激光闭环检测和其他传感器信息,通过图优化算法进行多传感器信息融合,进一步提高移动机器人的定位精度,并应用到更具有挑战的环境中。
[1] Guo X S, Ansari N, Hu F Z, et al. A survey on fusion-based indoor positioning[J]. IEEE Communications Surveys & Tutorials, 2019, 22(1): 566-594.
[2] Martinez-Martin E, Del Pobil A P. Robot vision for manipulation: a trip to real-world applications[J]. IEEE Access, 2020, 9: 3471-3481.
[3] Li D A, Jia X, Zhao J M. A novel hybrid fusion algorithm for low-cost GPS/INS integrated navigation system during GPS outages[J]. IEEE Access, 2020, 8: 53984-53996.
[4] 李艳, 杨波, 薛亮, 等. 基于车辆运动约束的里程计误差在线标定方法[J]. 中国惯性技术学报, 2016, 24(4): 485-489.
Li Y, Yang B, Xue L, et al. Online calibration method for odometer’s errors based on vehicle motion constraints[J]. Journal of Chinese Inertial Technology, 2016, 24(4): 485-489.
[5] 宋文松, 张宗华, 高楠, 等. 基于强度信息的激光雷达和相机空间位姿标定方法[J]. 激光与光电子学进展, 2022, 59(2): 0215003.
[6] ChanT H, HesseH, HoS G. LiDAR-based 3D SLAM for indoor mapping[C]∥2021 7th International Conference on Control, Automation and Robotics (ICCAR), April 23-26, 2021, Singapore. New York: IEEE Press, 2021: 285-289.
[7] KhanM U, Ali ZaidiS A, IshtiaqA, et al. A comparative survey of LiDAR-SLAM and LiDAR based sensor technologies[C]∥2021 Mohammad Ali Jinnah University International Conference on Computing (MAJICC), July 15-17, 2021, Karachi, Pakistan. New York: IEEE Press, 2021.
[8] 刘今越, 陈小伟, 贾晓辉, 等. BIM校正累计误差的激光里程计求解方法[J]. 仪器仪表学报, 2022, 43(1): 93-102.
Liu J Y, Chen X W, Jia X H, et al. The solution method of laser odometer for BIM correction of cumulative error[J]. Chinese Journal of Scientific Instrument, 2022, 43(1): 93-102.
[9] LüJ X, YukinoriK, RavankarA A, et al. A solution to estimate robot motion with large rotation by matching laser scans[C]∥2015 54th Annual Conference of the Society of Instrument and Control Engineers of Japan (SICE), July 28-30, 2015, Hangzhou, China. New York: IEEE Press, 2015: 1083-1088.
[10] 王建军, 卢云鹏, 张荠匀, 等. 实现激光点云高效配准的ICP优化及性能验证[J]. 红外与激光工程, 2021, 50(10): 20200483.
[11] Mohamed H A, Moussa A M, Elhabiby M M, et al. Improved real-time scan matching using corner features[J]. ISPRS-International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, 2016, XLI-B5: 533-539.
[12] An S Y, Kim J. Extracting statistical signatures of geometry and structure in 2D occupancy grid maps for global localization[J]. IEEE Robotics and Automation Letters, 2022, 7(2): 4291-4298.
[13] JiangB Q, ZhuY L, LiuM. A triangle feature based map-to-map matching and loop closure for 2D graph SLAM[C]∥2019 IEEE International Conference on Robotics and Biomimetics (ROBIO), December 6-8, 2019, Dali, China. New York: IEEE Press, 2020: 2719-2725.
[14] SpampinatoG, BrunaA, GuarneriI, et al. Deep learning localization with 2D range scanner[C]∥2021 7th International Conference on Automation, Robotics and Applications (ICARA), February 4-6, 2021, Prague, Czech Republic. New York: IEEE Press, 2021: 206-210.
[15] Liu L P, Xiao J, Wang Y B, et al. A novel rock-mass point cloud registration method based on feature line extraction and feature point matching[J]. IEEE Transactions on Geoscience and Remote Sensing, 2022, 60: 5701117.
[16] MunirN, AwrangjebM, StanticB. Extraction of Forest Power lines From LiDAR point cloud Data[C]∥2021 Digital Image Computing: Techniques and Applications (DICTA), November 29-December 1, 2021, Gold Coast, Australia. New York: IEEE Press, 2021.
[17] Nguyen V, Gächter S, Martinelli A, et al. A comparison of line extraction algorithms using 2D range data for indoor mobile robotics[J]. Autonomous Robots, 2007, 23(2): 97-111.
[18] Gao H M, Zhang X B, Fang Y C, et al. A line segment extraction algorithm using laser data based on seeded region growing[J]. International Journal of Advanced Robotic Systems, 2018, 15(1): 5524.
[19] Grisetti G, Stachniss C, Burgard W. Improved techniques for grid mapping with Rao-blackwellized particle filters[J]. IEEE Transactions on Robotics, 2007, 23(1): 34-46.
[20] Thrun S. Probabilistic robotics[J]. Communications of the ACM, 2002, 45(3): 52-57.
Article Outline
陈凯翔, 刘冉, 赵宾, 肖宇峰, 郭林, 邓天睿. 基于直线端点方向匹配的激光定位方法[J]. 激光与光电子学进展, 2024, 61(4): 0428010. Kaixiang Chen, Ran Liu, Bin Zhao, Yufeng Xiao, Lin Guo, Tianrui Deng. Laser Positioning Method Based on Line Endpoint Direction Matching[J]. Laser & Optoelectronics Progress, 2024, 61(4): 0428010.