0 前言

lego-loam是由Tixiao Shan and Brendan Englot在论文:

LeGO-LOAM: Lightweight and Ground-Optimized Lidar Odometry and Mapping on Variable Terrain

中提出,该方法是基于loam,其主要内容在论文摘要中已经说明,内容如下:

我们提出了LeGO-LOAM,它是一种轻量级和地面优化的激光雷达里程计和建图方法,用于实时估计地面车辆的六自由度姿态。LeGO-LOAM是轻量级的,因为它可以在低功耗嵌入式系统上实现实时姿态估计。LeGO-LOAM经过地面优化,因为它在分割和优化步骤中利用了地面的约束。我们首先应用点云分割来滤除噪声,并进行特征提取,以获得独特的平面和边缘特征。然后,采用两步Levenberg-Marquardt优化方法,使用平面和边缘特征来解决连续扫描中六个自由度变换的不同分量。我们使用地面车辆从可变地形环境中收集的数据集,比较LeGO-LOAM与最先进的LOAM方法的性能,结果表明LeGO-LOAM在减少计算开销的情况下实现了相似或更好的精度。为了消除由漂移引起的姿态估计误差,我们还将LeGO-LOAM集成到SLAM框架中,并用KITTI数据集进行了测试。

本博客主要是安装该方法,并进行数据包测试,最后利用手头的velodyne16线激光雷达进行实时建图。

1 lego-loam安装

博主的安装环境为Ubuntu16.04+ROS(kinetic)+ pcl1.9
1.1 安装依赖
1)gtsam (Georgia Tech Smoothing and Mapping library, 4.0.0-alpha2)

wget -O ~/Downloads/gtsam.zip https://github.com/borglab/gtsam/archive/4.0.0-alpha2.zip
cd ~/Downloads/ && unzip gtsam.zip -d ~/Downloads/
cd ~/Downloads/gtsam-4.0.0-alpha2/
mkdir build && cd build
cmake ..
sudo make install

1.2 安装lego-loam

cd ~/catkin_ws/src
git clone https://github.com/RobustFieldAutonomyLab/LeGO-LOAM.git
cd ..
catkin_make -j1

注:catkin_make后面的-j1是首次编译时生成相关消息类型的,后续编译可以不加。

2 lego-loam跑包测试

1)启动lego-loam
roslaunch lego_loam run.launch
注:要cd到安装包下面并添加环境如:

cd catkin_ws
source devel/setup.bash

最后使用以下命令启动lego-loam

roslaunch lego_loam run.launch

2)播放数据包

rosbag play yourbag.bag --clock --topic /velodyne_points /imu/data

注:yourbag.bag为自己录制的数据包。/imu/data是可选的,没有也没关系。我就没有这劳什子,跑的效果还行。
3 lego-loam实时建图
1)首先要修改run.launch,修改后为:

<launch><!--- Sim Time --><param name="/use_sim_time" value="false" /><!--- Run Rviz--><node pkg="rviz" type="rviz" name="rviz" args="-d $(find lego_loam_bor)/launch/test.rviz" /><!--- TF --><node pkg="tf" type="static_transform_publisher" name="camera_init_to_map"  args="0 0 0 1.570795   0        1.570795 /map    /camera_init 10" /><node pkg="tf" type="static_transform_publisher" name="camera_to_base_link" args="0 0 0 -1.570795 -1.570795 0        /camera /base_link   10" /><!--- 根据雷达和小车相对位置确定 --><node pkg="tf" type="static_transform_publisher" name="base_link_to_velodyne" args="0 0 0 0 0 0      /base_link  /velodyne 10" />  <!--- LeGO-LOAM    <arg name="rosbag"  default=""/><arg name="imu_topic" default="/imu/data"/><arg name="lidar_topic" default="/velodyne_points"/>--> <rosparam file="$(find lego_loam_bor)/config/loam_config.yaml" command="load"/><node pkg="lego_loam_bor" type="lego_loam_bor"    name="lego_loam_bor"    output="screen" >
<!--<remap from="/lidar_points" to="$(arg lidar_topic)"/><remap from="/imu/data" to="$(arg imu_topic)"/><param name="rosbag"      value="$(arg rosbag)" type="string" /><param name="imu_topic"   value="$(arg imu_topic)" type="string" /><param name="lidar_topic" value="$(arg lidar_topic)" type="string" /><remap from="/imu/data" to="/imu"/>
--> <remap from="/lidar_points" to="/velodyne_points"/></node></launch>

2)启动velodyne16激光雷达

roslaunch velodyne_pointcloud VLP16_points.launch calibration:=/home/tl/VLP16.yaml

注:velodyn激光雷达使用请参考如下博客:
https://blog.csdn.net/zbr794866300/article/details/99305864

3)启动lego-loam

roslaunch lego_loam run.launch

4)启动成功效果

至此,大功告成!
如果有问题,可以一起交流。

lego-loam在Ubuntu16.04下安装、跑包及实时建图相关推荐

  1. ubuntu16.04 下安装Opencv2.4.9

    ubuntu16.04 下安装Opencv2.4.9 OpenCV的源码download from:  https://sourceforge.net/projects/opencvlibrary/? ...

  2. wepe 装linux ubuntu,Ubuntu16.04下安装Wechat的实现方法

    Ubuntu16.04下安装Wechat 很久没写博客了,前两天电脑因为teamviewer不了,原因显示是libqt5gui5版本过低,研究了一波更新,卸载了libqt5gui5,和它的依赖qtba ...

  3. ubuntu16.04下安装openssh-server报依赖错误的解决方法

    ubuntu16.04下安装openssh-server报依赖错误的解决方法 参考文章: (1)ubuntu16.04下安装openssh-server报依赖错误的解决方法 (2)https://ww ...

  4. Ubuntu16.04下安装有道翻译

    Ubuntu16.04下安装有道翻译 参考: https://www.cnblogs.com/pursuiting/p/6194682.html 下载并安装3个依赖包 下载并安装有道词典 下载并安装3 ...

  5. Ubuntu16.04下安装tensorflow(CPU)spyder+pycharm

    1.下载并安装Anaconda 1.1 下载 从Anaconda官网(https://www.continuum.io/downloads)上下载Linux版本 https://repo.contin ...

  6. Ubuntu16.04 下安装 Teamviewer 远程控制软件

    TeamViewer软件介绍: TeamViewer是一个能在任何防火墙和NAT代理的后台用于远程控制的应用程序,桌面共享和文件传输的简单且快速的解决方案.为了连接到另一台计算机,只需要在两台计算机上 ...

  7. ubuntu16.04下安装企业微信和微信(实测能用)

    ubuntu16.04下安装企业微信和微信(实测能用) 安装deepin 安装企业微信 安装微信 安装deepin 第一步: git clone https://gitee.com/wszqkzqk/ ...

  8. 【踩坑】Ubuntu16.04下安装Tenda U6无线网卡驱动

    Ubuntu <Ubuntu16.04下安装Tenda U6无线网卡驱动>和<18.04安装腾达Tanda U6无线网卡(RTL8192EU)驱动 >1<Tenda U9 ...

  9. 在ubuntu16.04下安装opencv4.1.1(借鉴多篇的成果,爬了些许坑)(001)

    在ubuntu16.04下安装opencv4.1.1(借鉴多篇的成果,爬了些许坑) 一 下载 先去github上下载对应的opencv版本和opencv_contrib版本,我下载的是opencv4. ...

  10. matlab安装好 启动总是闪退_在Ubuntu16.04下安装MATLAB2017b

    1. 前言 最近在折腾Ubuntu系统的高端机子,matlab这家伙的交互和可视化太方便了!于是想在Linux下安装matlab,在各个版本中,matlab2017的性价比是非常高的,因此选择安装介个 ...

最新文章

  1. 【转】初等数论 ——原根、指标及其应用
  2. 《XNA高级编程:Xbox 360和Windows》3-6
  3. 常微分方程第三版_常微分方程:(第六章)非线性微分方程:5节
  4. 20165115 2017-2018-2 《Java程序设计》第六周学习总结
  5. Android 自定义ListView控件,滑动删除
  6. 容器访问宿主机数据库_docker从容器中怎么访问宿主机
  7. 基于离线策略的强化学习(PPO)
  8. c#--实例选号器--实现打印、序列化方式保存、二维码
  9. PHP数组按字符串长度排序
  10. linphone 回声消除
  11. Visual Studio Ultimate 2012 激活密钥
  12. es文件浏览器鸿蒙,达人教你玩应用:ES文件浏览器之文件互传(原创首发)
  13. 保姆级的接口自动化教程,不会写代码也能2小时学会
  14. 代码复现:Copy-Paste 数据增强for 语义分割
  15. speedoffice表格如何全选表格
  16. 动态分析Android App之动态调试(一)
  17. python3 时区 时间戳 指定输入时间为东八区时间、北京时间
  18. POI解析Excel
  19. 2021计算机学校分数,泰州市博日电脑技术学校2021年招生录取分数线
  20. 数据结构考研复习 | Fibonacci数列的递归、数组、迭代(循环)实现及其时间复杂度

热门文章

  1. Padding Oracle攻击(POODLE)技术分析
  2. markdown和marktop是啥关系?
  3. php arcsin函数,excel如何计算反三角函数
  4. Windows Azure 虚机密码忘记处理
  5. 史上最全常见前端大厂面试知识点汇总【已过字节, 腾讯teg,华为,网易】
  6. 什么是设备管理系统,包括哪些内容?一文读懂
  7. 一看就懂【来自英雄联盟盖伦的怒吼】与 Python 详解设计模式(二)观察者模式...
  8. 极限编程XP 的12个最佳实践
  9. 开通百度通用翻译API---主打个人标准版
  10. HTTP/3 ,它来了。