LeGO-LOAM 编译安装与运行

news/2025/3/31 8:36:17/

LeGO-LOAM 是IROS 2018 LeGO-LOAM: Lightweight and Ground-Optimized Lidar Odometry and Mapping on Variable Terrain 文章的代码。github链接:https://github.com/RobustFieldAutonomyLab/LeGO-LOAM

文章在LeGO-LOAM的github里。

此代码基于LOAM。关于LOAM的安装与运行可以参考https://blog.csdn.net/qq_36396941/article/details/82973772

他们在Youtube上有介绍视频,有能力的可以去看一下,视频演示了loam和LeGO-LOAM在i7 4710mq和jetson tx2两种平台下的对比,效果十分好。https://www.youtube.com/watch?v=O3tz_ftHV48  

博主的环境 Ubuntu16.04+ROS kinetic+pcl1.8+gtsam

1.编译安装LeGO-LOAM的依赖

    gtasm的编译安装

    1.下载gtsam的源代码     

git clone https://bitbucket.org/gtborg/gtsam.git

   编译安装

mkdir build
cd build
cmake ..
sudo make install

至此,gtsam已经编译安装完成了。

2.LeGO-LOAM的编译安装

1.LeGO-LOAM的编译需要使用catkin,如果已经建立catkin_ws,可以跳过下面这步

mkdir -p catkin_ws/src
cd catkin_ws/src
catkin_init_workspace

2.下载LeGO-Loam的源码

cd ~/catkin_ws/src # catkin_ws自己的ROS工作空间。

git clone https://github.com/RobustFieldAutonomyLab/LeGO-LOAM.git

如果觉得github下载慢,可以使用我clone到gitee的代码

git clone https://gitee.com/Yeah2333/LeGO-LOAM.git

 编译LeGO-Loam

cd catkin_ws
catkin_make -j1
source ~/devel/setup.bash


source命令在每打开一个新的终端需要重新输入,也可以把它写入到.bahsrc里面

3.运行LeGO-LOAM

 论文作者在youtube上的演示视频使用了imu,不过imu是选配的。博主实测不使用imu效果也还是很好的,不过手里没有能回环检测的数据集,只是测试了以下手里的rosbag,占用的资源小很多,不过有个问题是在点多时之前的点会被剔除。

作者给出的回复是修改include文件夹utility.h 91行 globalMapVisualizationSearchRadius的值,修改后再执行catkin_make,实测问题已经得到解决。

roslaunch lego_loam run.launch
rosbag play *.bag --clock --topic /velodyne_points /imu/data

虽然这里配准了imu信息,没有imu数据是可以正常运行的,不过不加这个运行会失败。

效果图

 


http://www.ppmy.cn/news/449727.html

相关文章

2.MSMQ 消息发送接收避坑

MSMQ创建队列(本地): 专用队列 - 新建 - 专用队列 - 队列名称:MessageQueuing - 勾选事务性   环境配置: 首先需要下载配置文件:https://download.csdn.net/download/qq_24950043/11662752 CSDN的文章:h…

“系统和压缩内存”导致电脑卡顿问题

电脑配置(i7-4710mq, 8g*2, ssd机械硬盘),win10 第一次出现问题 很久以前用win10使用正常。后来加了8g内存组双通道(形成16g内存),发现电脑经常卡顿,于是以为是内存条问题(实际并不…

粗浅介绍Intel处理器

Intel处理器 一、系列 Atom(凌动):主打低功耗、小面积芯片,多用于上网本,win平板。性能只够用于上网,视觉娱乐Celeron(赛扬):主打入门市场,价格低廉&#x…

MQ(MessageQueue)消息队列

同步调用 同步调用的优点: 时效性较强,可以立即得到结果 同步调用的问题: 耦合度高: 每次加入新的需求,都要修改原来的代码 性能和吞吐能力下降: 调用者需要等待服务提供者响应,如果调用…

使用mqtt.fx向EMQX服务器发送消息

摘要:本文介绍如何使用mqtt.fx向mqtt服务器(EMQX)发送消息。顺便介绍一下labview与EMQX连接成功的实现效果。 上一篇文章介绍了如何在ubuntu下安装emqx服务器,以及如何使用mqtt.fx订阅服务器上的一个主题。 ubuntu系统下搭建本地…

linux查询CPU信息几种方式

CPU架构 CPU架构主要包括:amd64、arm32v7、arm64v8、mips64el、mips32、ppc64le和ppc32等架构。 CPU信息 CPU信息主要为中央处理器详细信息,包括: 架构核心数量处理速度厂商名称CPU主频标签....... 注:不同的操作系统或者CPU…

Tomcat和Undertow并发性能对比

Undertow(SpringBoot内置版)篇 JVM参数: - Xms1024m - Xmx1024m 测试参数: 压测工具,参数最大化,连续测试10分钟,得出各种曲线。软件架构: JDK1.8 SpringBoot全家桶,version1.4.2 SpringMVC Fre…

MQ系列7:消息通信,追求极致性能

🚀 优质资源分享 🚀 学习路线指引(点击解锁)知识定位人群定位🧡 Python实战微信订餐小程序 🧡进阶级本课程是python flask微信小程序的完美结合,从项目搭建到腾讯云部署上线,打造一…