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
相关推荐
未济20 小时前
linux 配置环境变量
linux
傲世仙尊20 小时前
目录即文件-Ext文件系统收尾篇
linux·c语言
风合星语21 小时前
2026 具身智能技术实战(一):VLA 到底怎么控制机器人?——用 LeRobot 跑通 SmolVLA 推理
pytorch·机器人·具身智能·vla·lerobot·smolvla
鲁邦通物联网21 小时前
图书馆机器人跨楼层运行,机器人梯控低噪设计与架构分析
机器人·巡检机器人·机器人梯控·agv梯控·非侵入式采集·机器人乘梯·机器人自主乘梯
_艾伦 耶格尔.1 天前
进程间通信
linux
Liuqy-051 天前
Linux IO编程——静态库、动态库
linux
彧azz1 天前
Linux 环境下 Redis 学习总结:数据类型、持久化、锁、事务、主从与缓存问题
linux·redis·笔记·学习·面试
-梅1 天前
linux(8) 软硬链接
linux·运维·服务器
AIgorithmGEEK1 天前
[Linux]线程三部曲(上):一个执行流的诞生——从操作系统一路拆到 pthread_create
linux·线程·pid
PascalXie1 天前
人形机器人的“眼睛“:多目视觉方案怎么选?
计算机视觉·机器人