在本文中,我们将对Lego-LOAM的地面点分离、聚类和两步优化方法进行深入探讨。 一、地面点的分离 在激光雷达数据中,地面点和非地面点的分离是SLAM算法中的关键步骤,而Lego-LOAM采用了一种基于分段式的分离方法。该方法首先将激光雷达数据根据水平线和垂直线进行分段,然后利用线性模型拟合每个分段的点云,找出最适合的...
相较于LOAM的第一个改进:增加基于柱面投影特征分割,对原始点云进行地面点分割和目标聚类。 相较于LOAM的第二个改进:基于分割点云的线面特征提取,从地面点和目标聚类点云中提取线、面特征,特征点更精确。 相较于LOAM的第三个改进:采用两步法实现laserOdometry线程的位姿优化计算,在优化估计精度保持不变的情况下收敛...
其中LeGO就是轻量级和利用地面优化,轻量级的实现就是通过两步的优化方式,利用地面优化的部分也在两步优化的第一步中。 和原始LOAM一样,通过前后两帧点云来估计两帧之间的运动,从而累加得到前端里程计的输出,和上述方法使用线面约束同时优化六自由度帧间位姿不同,LeGO-LOAM的前端分成两个步骤,每个步骤估计三自由度的...
本文介绍的LeGO-LOAM同样是针对LOAM计算效率问题的优化,针对地面移动机器人在室内外环境下运行时的特点,针对性的对LOAM进行优化和改进,实现了一套轻量级的激光雷达SLAM系统。该工作由Shan Tixiao完成,论文LeGO-LOAM: Lightweight and Ground-Optimized LiDAR Odometry and Mapping on Variance Terrain发表于2018年IROS会议,...
简介:**LeGO-LOAM**的全称是 Lightweight and Ground-Optimized Lidar Odometry and Mapping on Variable Terrain其中LeGO就是轻量级和利用地面优化,轻量级的实现就是通过两步的优化方式,利用地面优化的部分也在两步优化的第一步中。和原始LOAM一样,通过前后两帧点云来估计两帧之间的运动,从而累加得到前端里程计的输...
LeGO - LOAM是轻量级的,可以在嵌入式系统上实现实时位姿估计和建图。进行点云分割,丢弃地面分离后可能代表不可靠特征的点。LeGO - LOAM也是地面优化的,因为我们引入了两步优化来进行位姿估计。在第一步中,从地面提取的平面特征用于获取 [t_z,\theta_{roll},\theta_{pitch}] 。在第二步中,进行其余的转化 [t...
里程计部分改为scan2localmap的匹配,特征提取部分去除了原LeGO-LOAM中的聚、分割并提取较为突出的边缘点和平面点,而是沿用LOAM中的边缘和平面点。(精度高一些,LeGO-LOAM主要考虑性能多一点) 维护两个因子图,预积分因子图可联合优化激光雷达odom和IMU,并估计IMU偏差,...
由于是基于地面的优化,LeGO-LOAM通过两步的优化来进行位姿的估计。(解决轻量化问题) 第一步,通过从地面点中提取面点,然后进行z roll pitch 的估计(不估计 x y yaw) 第二步,通过角点来进行 x y yaw的估计 并且集成了回环优化来修正位姿漂移。 硬件系统 ...
LeGO-LOAM是通过关键帧得概念进行局部地图管理,保存了激光雷达一些帧,和该帧的位姿。 局部地图建立就是通过根据当前帧的位置,提取与当前帧位置小于100m的关键帧拼接(根据每帧的位姿拼接)在一起作为局部地图 进行回环检测集成位姿图优化: 最后将SLAM里面的位姿图优化集成到了LeGO-LOAM中 ...
在这一步,和LOAM相比,将针对6-DOF( )的一次LM优化,更改为了两次LM优化方法: 最终,基于两步LM优化,得到6-DOF的姿态变换矩阵 。 具体的实现如下所示: 两次优化: 这里需要注意的是LeGO-LOAM沿袭了LOAM_Velodyne的opencv的写法,并没有使用ceres solver库求解。