赞
踩
一、使用lidatr2rosbag工具包流程
1、创建工作空间
2、数据集文件要求
3、编译
4、运行工具包程序
二、遇到的问题
1、缺少times.txt文件
***************************** 运行环境Ubuntu20.04+Noetic *************************
在运行SLAM算法时,常常用到多种格式的数据,例如:
对于自己使用激光雷达采集的数据,以本人的速腾雷达为例,转换点云话题即可,具体内容见另一篇博客速腾激光雷达rslidar(RS 16)运行ALOAM建图_abanchao的博客-CSDN博客_速腾雷达
然而,KITTI数据集的点云文件为bin格式,配置比较复杂。有大佬编写了KITTI数据集转化为ROS bag包的lidatr2rosbag工具包,这里将具体介绍这个功能包的使用,以及使用过程中遇到的问题和解决方法。
为方便使用,在主目录下新建一个工作空间,将以下网站下载的源码添加到src文件夹中。
https://github.com/AbnerCSZ/lidar2rosbag_KITTI
数据集文件路径下必须包含“velodyne”和“times.txt”,即数据必须有对应的时间戳。
- └── dataset
- └── sequences
- └── 04
- ├── calib.txt
- ├── image_0 [271 entries exceeds filelimit, not opening dir]
- ├── image_1 [271 entries exceeds filelimit, not opening dir]
- ├── times.txt
- └── velodyne [271 entries exceeds filelimit, not opening dir]
方法同其他程序包略有不同!编译指令如下:
- cd ~/catkin_ws
- catkin_make -DCMAKE_BUILD_TYPE=Release
- source ~/catkin_ws/devel/setup.bash
首先要启动roscore!
命令语句结构如下:
rosrun lidar2rosbag lidar2rosbag KITTI_input_dir output_name
例如:
- rosrun lidar2rosbag lidar2rosbag /YOUR_FOLDER/KITTI/dataset/sequences/04/ 04
- rosrun lidar2rosbag lidar2rosbag /YOUR_FOLDER/KITTI/dataset/sequences/01/ bag01
其中,YOUR_FOLDER指KITTI数据集存放路径,可以包含中文。显示下图后表示转换完成,在工作空间下会生成一个bag文件。
这个bag文件就可以用来运行SLAM算法了!
打开下载好的数据集,发现路径下只有velodyne文件夹,而没有times.txt文件,网上查找资料的时候,发现很多人也遇到了这个问题,转换终端只显示bin数量,但是并没有执行数据转换。报错“
段错误 (核心已转储)”
报错原因:产生这个问题的原因是数据集路径下没有times.txt文件。
解决方法:为数据路径下增加该文件。可是,这个文件该从哪找呢?点云数据集没有欸。其实,KITTI数据集分为图像和点云的三个类别,图像数据集里是包含这个times.txt文件的。
可以从博主分享的百度网盘进行下载,避免了下载整个数据集,感谢博主下页依然如故。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。