ubuntu20.04使用LIO-SAM对热室空间进行重建

一、安装LIO-SAM

1.环境配置

默认已经安装过ros

sudo apt-get install -y ros-Noetic-navigation
sudo apt-get install -y ros-Noetic-robot-localization
sudo apt-get install -y ros-Noetic-robot-state-publisher

安装 gtsam(如果是18.04的ubuntu直接按照官网配置,20.04见下面的链接)

sudo add-apt-repository ppa:borglab/gtsam-release-4.0
sudo apt install libgtsam-dev libgtsam-unstable-dev

catkin_make in ROS Noetic [Error] · Issue #206 · TixiaoShan/LIO-SAM · GitHub

2.下载编译代码

cd ~/catkin_ws/src
git clone https://github.com/TixiaoShan/LIO-SAM.git
cd ..
catkin_make

二、 lidar和imu的外参标定以及imu的内参标定

外参标定见我的上一个文章,这里只说一下imu内参标定

Ubuntu20.04编译并运行imu_utils,并且标定IMU-CSDN博客

这篇文章里面的第二章imu数据采集,其实就是运行imu驱动,然后录制一个bag包。其他的他都讲的很详细这里就不说了。

三、热室地图重建

修改lio-sam的config里面的params.yaml里面的lidar和imu话题以及imu内参,lidar_imu的外参等

针对密闭热室空间的重建这几个参数至关重要(因为空间里面好多相似的管道,所以对于点面特征的匹配要求很高)
实验发现:
mappingCornerLeafSize从0.1变成0.2,地图并不会发生大幅度飘逸,但是在局部区域对不齐,会有翻转和微量飘移。

mappingSurfLeafSize从0.2变为0.4,地图会直接飞走。

odometrySurfLeafSize从0.2变为0.4,效果和0.2差不多,但是会存在一定的拖影。