![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
slam
文章平均质量分 67
hccmap
这个作者很懒,什么都没留下…
展开
-
激光SLAM源码解析S-LOAM(三)里程计图优化
里程计,是通过累计帧间位姿变换得来的,因此会累积帧间误差。如果想要纠正此累积误差,我们需要通过另一种方法得到可信位姿,以此校正相同时刻里程计位姿。SLAM图优化,是一种记录各帧时刻里程计,并通过可信位姿校正累积误差的工具。闭环检测,利用“故地重游”的思想,通过当前帧与历史帧的配准(不是相邻时间帧),提供另一种位姿变换的关系,用来校正闭环内的累积误差。mapOptmization.cpp代码注释较详细,如下所示。/** * Created by haocaichao on 20原创 2021-10-06 22:45:38 · 1140 阅读 · 1 评论 -
激光SLAM源码解析S-LOAM(二)激光里程计的计算
10Hz激光雷达点云帧,相临帧的时间间隔是0.1秒。在这0.1秒内激光雷达的位姿变化(平移和旋转)可由这两帧点云的配准计算出来。以某一时刻为起点,累计帧间位姿变换,得到各帧时刻激光雷达相对起点的位姿(位置和方向),这就是里程计。配准是求取帧间变换的关键,帧帧配准是指相邻帧点云的配准,比如,配对的双方分别是当前帧与上一帧。点云共面算法是点云帧帧配准的主要方法。当一个点到一个平面的距离为0时,就认为这个点就与此平面共面。lidarOdometry.cpp代码注释较详细,如下所示。/原创 2021-10-06 22:42:04 · 1149 阅读 · 3 评论 -
激光SLAM源码解析S-LOAM(一)点云特征提取
点云帧数据激光雷达点云数据会以一定频率从激光雷达传输到接收器,比如10Hz,就是每间隔0.1秒发送一帧点云数据。激光SLAM接收到每帧点云数据后,需要提取特征点,然后进行点云配准得到帧间位姿变换,累计变换得到里程计。点云特征数据点云特征点的提取,主要目的是为了配准,然而过滤掉大量非特征点数据,起到了减少数据量的作用。因为点云本身是稀疏的,所以点云的主要是特征是面特征,其次是线特征,很难利用点特征。平面的特征是曲率小,因此点云中曲率小的点可以标记为平面点,曲率可以用来提取点云平面特征。原创 2021-10-06 22:37:13 · 3373 阅读 · 0 评论 -
运行S-LOAM激光SLAM程序
目录1、创建ros工程2、编译S-LOAM源码3、准备点云数据4、运行S-LOAM程序5、S-LOAM优缺点说明1、创建ros工程(1)打开一个文件夹用来存放ros工程在Ubuntu16.04系统中打开一个文件夹,用来创建ros工程。比如在Home文件夹中创建了awkp/myros文件夹,即文件夹路径如下/home/hccmap/awkp/myros(2)打开终端创建ros工程在此文件夹中单击鼠标右键,选择打开终端窗口,此时命令行所处路径为当前窗口(这个路径.原创 2021-10-06 17:45:51 · 860 阅读 · 6 评论 -
S-LOAM 最简单的激光SLAM
1、S-LOAM概述S-LOAM(Simple LOAM) 是一种简单易学的激光SLAM算法,主要思想来源于LOAM算法系列(LOAM,A-LOAM,LEGO-LOAM)。S-LOAM利用多种工具库(Eigen,PCL,ROS,Ceres,Gtsam)简化了SLAM程序,整个程序只有几百行代码,十分方便学习与试验分析。S-LOAM主要包括5个部分,内容如下。(1)点云索引重建(2)点云特征提取(3)里程计计算(4)里程计因子图优化(5)里程计闭环优化S-LOAM的效果如下原创 2021-08-29 20:21:16 · 3936 阅读 · 1 评论