ubuntu20.04 运行 lio-sam
记录流程,方便自己快速复现
一、安装和编译
1.1、安装 ROS1
这里使用的鱼香 ros 一键安装
wget http://fishros.com/install -O fishros && . fishros
1.2、安装 gtsam
sudo add-apt-repository ppa:borglab/gtsam-release-4.0
sudo apt install libgtsam-dev libgtsam-unstable-dev
1.3、安装依赖
sudo apt-get install ros-noetic-fake-localization
sudo apt-get install ros-noetic-robot-localization
1.4、下载源码
创建工作空间 catkin_ws/src
cd ~/catkin_ws/src
git clone https://github.com/TixiaoShan/LIO-SAM.git
1.5、修改文件
第一处:
~/catkin_ws/src/LIO-SAM/include/ 文件夹下的 utility.h
文件,替换其中的 #include <opencv/cv.h>
这一行,改为:#include <opencv2/imgproc.hpp>
第二处:
~/catkin_ws/src/LIO-SAM/ 文件夹下的 CMakeList.txt
文件,替换其中的 set(CMAKE_CXX_FLAGS "-std=c++11")
这一行,改为:set(CMAKE_CXX_FLAGS "-std=c++14")
,并且添加
find_package(Boost REQUIRED COMPONENTS timer thread serialization chrono)
1.6、编译和运行
catkin_make
source devel/setup.bash
roslaunch lio_sam run.launch
二、官方数据集的运行
数据集下载链接:
链接: https://pan.baidu.com/s/1IZClZE_YfsrsES3xklBzhQ 提取码: vsks
如果想要保存地图,需要对config/params.yaml
文件的这两行做修改
# Export settings
savePCD: true # https://github.com/TixiaoShan/LIO-SAM/issues/3
savePCDDirectory: "/Downloads/LOAM/" # in your home folder, starts and ends with
会保存五个pcd
2.1、casual_walk_2.bag
这个包可以直接运行,不用做任何修改
2.2、outdoor.bag、west.bag
将 params.yaml
改成如下,便可运行
extrinsicRot 和 extrinsicRPY 设为单位矩阵
# Extrinsics (lidar -> IMU)
extrinsicTrans: [0.0, 0.0, 0.0]
# extrinsicRot: [-1, 0, 0,
# 0, 1, 0,
# 0, 0, -1]
#extrinsicRPY: [0, 1, 0,
# -1, 0, 0,
# 0, 0, 1]
extrinsicRot: [1, 0, 0,
0, 1, 0,
0, 0, 1]
extrinsicRPY: [1, 0, 0,
0, 1, 0,
0, 0, 1]
imuTopic: “imu_raw” 改为 imuTopic: “imu_correct”
imuTopic: "imu_correct" # IMU data
outdoor.bag :
west.bag:
2.3、park.bag
这个数据集有 gps 数据,更改文件 params.yaml
文件即可使用gps数据;
更改文件第一处:
gpsTopic: "odometry/gpsz" 改为 gpsTopic: "odometry/gps"
更改文件第二处:
useImuHeadingInitialization: false 改为 useImuHeadingInitialization: true
运行结果:
三、一些比较好的参考链接
方便自己查阅