ubuntu 20.04 编译运行lio-sam,并保存为pcd

1.环境依赖

ubuntu 20.04 + ROS1

gtsam

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

其他依赖

复制代码
sudo apt-get install ros-noetic-fake-localization
sudo apt-get install ros-noetic-robot-localization

2.创建工作空间和克隆代码

复制代码
mkdir -p liosam/src
cd liosam/src
git clone https://github.com/TixiaoShan/LIO-SAM.git

3.修改文件

cpp 复制代码
3.1  catkin_ws/src/LIO-SAM/include/ 文件夹下的 utility.h 文件,
替换其中的 #include <opencv/cv.h> 这一行,改为:#include <opencv2/opencv.hpp>


3.2  将catkin_ws/src/LIO-SAM/include/ 文件夹下的 utility.h 文件
#include <pcl/kdtree/kdtree_flann.h>剪切到#include <opencv2/opencv.hpp>前面


3.3  /catkin_ws/src/LIO-SAM/ 文件夹下的 CMakeList.txt 文件,
替换其中的 set(CMAKE_CXX_FLAGS "-std=c++11") 这一行,
改为:set(CMAKE_CXX_FLAGS "-std=c++14")

4.编译和运行launch

cpp 复制代码
catkin_make -j4
cpp 复制代码
source ./devel/setup.bash
roslaunch lio_sam run.launch

5.下载官方数据集,运行数据集

这里用网盘官方数据集的百度网盘链接 提取码: 1i2p

5.1 casual_walk_2.bag这个包不用修改,直接运行即可

5.2 outdoor.bag、west.bag

params.yaml 改成如下:

1)extrinsicRot 和 extrinsicRPY 设为单位矩阵

cpp 复制代码
  # 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]

2)imuTopic: "imu_raw" 改为 imuTopic: "imu_correct"

cpp 复制代码
imuTopic: "imu_correct"                         # IMU data

5.3 park.bag

这个数据集有 gps 数据,更改文件 params.yaml 文件即可使用gps数据;

1)

cpp 复制代码
gpsTopic: "odometry/gpsz"  改为 gpsTopic: "odometry/gps"

2)

cpp 复制代码
useImuHeadingInitialization: false 改为 useImuHeadingInitialization: true 

6.保存pcd 和查看pcd

修改config/params.yaml文件的这两行

cpp 复制代码
savePCD: false                             # https://github.com/TixiaoShan/LIO-SAM/issues/3
savePCDDirectory: "/Downloads/LOAM/"        # in your home folder, starts and ends with

false 改为true

/Downloads/LOAM/ 改为/your save directory/

ps: 1. 保存路径要以 / 开始和结束

2.这里路径已经从 /<usrname>/home/开始算了,所以直接是保存到家目录下

关闭Rviz,就可以保存到指定路径

查看pcd用命令

cpp 复制代码
pcl_viewer XXX.pcd
相关推荐
程序员老舅5 小时前
C++高并发精髓:无锁队列深度解析
linux·c++·内存管理·c/c++·原子操作·无锁队列
雨中风华5 小时前
Linux, macOS系统实现远程目录访问(等同于windows平台xFsRedir软件的目录重定向)
linux·windows·macos
kyle~5 小时前
ROS2---QoS策略
c++·机器人·ros2
爱吃生蚝的于勒5 小时前
【Linux】进程信号之捕捉(三)
linux·运维·服务器·c语言·数据结构·c++·学习
The森6 小时前
Linux IO 模型纵深解析 01:从 Unix 传统到 Linux 内核的 IO 第一性原理
linux·服务器·c语言·经验分享·笔记·unix
翼龙云_cloud6 小时前
腾讯云代理商: Linux 云服务器搭建 FTP 服务指南
linux·服务器·腾讯云
纤纡.6 小时前
Linux中SQL 从基础到进阶:五大分类详解与表结构操作(ALTER/DROP)全攻略
linux·数据库·sql
好好学习天天向上~~6 小时前
6_Linux学习总结_自动化构建
linux·学习·自动化
冉佳驹6 小时前
Linux ——— 静态库和动态库的设计与使用
linux·动态库·静态库·fpic
符哥20086 小时前
Ubuntu 常用指令集大全(附实操实例)
数据库·ubuntu·postgresql