前言:在做实验言过程中遇到了想要使用kitti数据集,而我想要的输入数据为bag包文件,故而需要将kitti数据集转化为rosbag包,经过查找相关资料终于实现,现分享出来yon供大家一起交流使用,如有不当之处,欢迎评论交流。


运行系统:Ubuntu18.04

运行环境:python2.7.17


一、安装kitti2bag包

该kitti2bag包为kitti官方出品的的一个数据处理库,可直接使用安装下面命令进行安装

pip install kitti2bag

二、准备数据集

有条件者可以直接去官方下载数据集,官方网址http://www.cvlibs.net/datasets/kitti/raw_data.php

无条件者可以使用我提供的网盘数据进行下载学习交流使用,链接: https://pan.baidu.com/s/1Oa7GZY7hMyP60SmAiMop7A 提取码: 9pfi

为了方便演示,本文使用2011_10_03这一天中数据量少的 2011_10_03_drive_0058_sync.zip 这个数据包,将其进行解压,同时下载解压里面的标定文件 2011_10_03_calib.zip 。如下图所示:

然后将2011_10_03_calib文件夹中最里面的三个文件拷贝到2011_10_03_drive_0058_sync文件夹中2011_10_03文件夹里面,如下图所示:

三、开始转换

2011_10_03_drive_0058_sync文件夹下开启一个终端输入以下命令即可开始转换,转换过程如下图所示:

kitti2bag -t 2011_10_03 -r 0058 raw_synced

上述过程结束之后会生成一个bag包文件,如下图所示:

4、可视化生成bag包

在生成bag包的文件夹下开启一个终端,输入roscore,再开启一个终端开始播放bag包,再开启一个终端启动rviz可视化界面,命令如下:

roscore
rosbag play kitti_2011_10_03_drive_0058_synced.bag -l
rviz

rviz启动之后,点击Add添加相关结点信息即可看到可视化信息。

最终可视化界面如下图所示。

如果不出点云信息,可以更改fixed frame。至此全部过程已经结束。