LeGO-LOAM(1):运行LeGO-LOAM

目录

# 1 安装与编译

## 1.1 依赖项

### 1.1.1 ros

### 1.1.2 gtsam

## 1.2 编译

# 2 系统介绍

# 3 运行demo

### 3.1 数据下载

### 3.2 数据描述

### 3.3 demo运行

####(1)运行launch文件

####(2)播放数据文件

#### (3)demo运行效果

# 4 Stevens data-set

## 4.1 数据下载

## 4.2 数据说明与播放数据包方式

## 4.3 运行LeGO_LOAM效果


# 1 安装与编译

## 1.1 依赖项

### 1.1.1 ros

在indigo, kinetic, and melodic版本上测试过

### 1.1.2 gtsam

gtsam全称为:Georgia Tech Smoothing and Mapping library即佐治亚理工大学平滑和建图库

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 编译

流程为:建立工作空间、下载源码、编译。

第一次运行时使用"-j1"命令,是为了产生一些消息类型,如下所示;之后再运行就不需要使用"-j1"了

cd xx/LeGO_ws

mkdir src && cd src

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

cd ..

catkin_make -j1

# 2 系统介绍

LeGO LOAM特别针对地面车辆上水平放置的VLP-16进行了优化。它假设扫描中始终存在接地层。我们使用的UGV是Clearpath Jackal。它有一个内置IMU。

该数据包在特征提取之前执行分割:

激光雷达里程计执行两步 Levenberg Marquardt 优化以获得 6D 变换:

roll pitch yaw示意图如下:

# 3 运行demo

### 3.1 数据下载

数据地址:https://github.com/RobustFieldAutonomyLab/jackal_dataset_20170608

对应的google云盘:https://drive.google.com/drive/folders/1_t5fX5yIqY-y6sAifY8pVWX4O9LCK5R2

点开云盘,只有下图所示的文件夹"same_start_end_position"可以下载

下载解压后如下所示:

### 3.2 数据描述

ros话题:

雷达话题:`/velodyne_points`

imu话题:`/imu/data`

环境情况:有树木、草地、建筑物

### 3.3 demo运行

demo运行分为两个部分,运行Lego_Loam的launch文件和播放数据文件。

####(1)运行launch文件

运行launch:

cd xx/LeGO_ws

source devel/setup.bash

roslaunch lego_loam run.launch

注意:launch参数`/use_sim_time`设置为“true”用于模拟,“false”用于真实机器人使用;下面的步骤使用的是录制的数据包,此时`/use_sim_time`设置为“true”即可。理解`/use_sim_time`参考:https://blog.csdn.net/qq_39607707/article/details/123706557

如果出现报错:

[mapOptmization-7] process has died [pid 15154, exit code 127, cmd /home/meng/subject/LeGO_ws/devel/lib/lego_loam/mapOptmization __name:=mapOptmization

报错原因是:缺少一些库。它们已安装但不可用,因为不在 LD_LIBRARY_PATH 环境变量中。所以将 /usr/local/lib 目录添加到变量中解决了我的问题。

参考:https://github.com/RobustFieldAutonomyLab/LeGO-LOAM/issues/198

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

新的运行launch步骤为:

cd xx/LeGO_ws

source devel/setup.bash

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

roslaunch lego_loam run.launch

效果如下:

####(2)播放数据文件

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

注意:虽然 /imu/data 是可选的,但如果提供它可以大大提高估计精度。

`--clock` 理解参考:https://blog.csdn.net/qq_39607707/article/details/123706557,播放数据包的时候一定要带上

`--topic` 播放指定话题

#### (3)demo运行效果

包括:edge features(边特征)、surface features(面特征)、trajector(轨迹)、map cloud(stack)(堆叠点云)

包括:edge features(边特征)、surface features(面特征)、trajector(轨迹)

# 4 Stevens data-set

## 4.1 数据下载

github链接:https://github.com/TixiaoShan/Stevens-VLP16-Dataset

google云盘链接:https://drive.google.com/drive/folders/16p5UPUCZ1uK0U4XE-hJKjazTsRghEMJa

直接点击单个文件即可下载

## 4.2 数据说明与播放数据包方式

包括的话题:

/tf # 运行 LeGO-LOAM 不需要,使用 LeGO-LOAM 测试时不要发布

/imu/data # 不与 VLP-16 对齐,仅提供初始转换猜测,对于运行 LeGO-LOAM 不是必需的
          # 参考前面的经验,播放数据时还是带上imu数据以提高精度

/velodyne_points

播放数据包的方式:

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

## 4.3 运行LeGO_LOAM效果

2018-05-18-14-49-12_0.bag :

其他数据包自行跑跑看

  • 7
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 16
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值