ubuntu 20.04 编译运行LeGo_LOAM 跑数据集 并且保存pcl文件

1.搭建文件目录,clone代码,编译

复制代码
mkdir -p Lego_LOAM/src
cd Lego_LOAM/src
git clone https://github.com/RobustFieldAutonomyLab/LeGO-LOAM.git
cd ..
catkin_make -j1

错误1:: fatal error: opencv/cv.h: 没有那个文件或目录

13 | #include <opencv/cv.h>

| ^~~~~~~~~~~~~

compilation terminated.

修改:20.04的openCV自带的是opencv4,所以需要将utility.h中的#include <opencv/cv.h>

CMakeLists.txt修改:

编译通过

2.准备数据集

Lego_LOAM数据集链接

3.刷新环境变量和运行roslaunch

复制代码
source ./devel/setup.bash
roslaunch lego_loam run.launch

4.运行数据集

在数据集目录下打开终端输入:

复制代码
rosbag play <your bag name>.bag --clock --topic /velodyne_points /imu/data

报错2:

将报错的话题复制在src/featureAssociation.cpp和mapOptmization.cpp的文件下CTRL+F查找,并且去掉"/"

如:

将其他五个的话题也这样修改,其中后面的两个在 mapOptmization.cpp中

再重新编译catkin_make下,运行launch,和bag包

效果图:

5.保存包bag,pcl和查看pcl

在代码建图过程中保存数据

复制代码
rosbag record -o out /laser_cloud_surround

转化为pcd文件

复制代码
rosrun pcl_ros bag_to_pcd <your bag name>.bag /laser_cloud_surround pcd

查看pcd文件

复制代码
pcl_viewer xxxxxx.pcd

查看的pcd

相关推荐
tntxia14 小时前
linux curl命令详解_curl详解
linux
扛枪的书生16 小时前
Linux 网络管理器用法速查
linux
顺风尿一寸19 小时前
Java Socket 内核之旅:从 SocketChannel.read() 到 tcp_recvmsg 与 epoll 的完整调用链路
linux
XIAOHEZIcode1 天前
Ubuntu 终端美化全栈指南:Bash 到 Kitty 踩坑实录
linux·ubuntu·命令行
唐青枫1 天前
别再只会用 cron:Linux systemd Timer 定时任务实战详解
linux
AlfredZhao3 天前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
戴为沐4 天前
Linux内存扩容指南
linux
zylyehuo4 天前
Linux 彻底且安全地删除文件
linux
用户805533698035 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297915 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux