之前用rosbag命令记录了相机拍摄的图像数据以及激光雷达的点云数据,需要从bag包中将两种数据分别提取出来,并且要有时间戳,此处记录下来,以便后用。
1.查看bag包信息
rosbag info xxx.bag
xxx.bag就是你录取时候设置或者系统你默认的包名。(请保证ROS主节点roscore已运行)例如:rosbag info water3.bag,此时会输出以下信息:
可以看到,图像数据3222帧,点云1161帧。
2.提取出点云数据
命令原型如下:
rosrun pcl_ros bag_to_pcd <*.bag> <topic> <output_directory>
后面三个<>括号中对应的分别是bag包名,提取点云话题,输出文件夹,例如:
rosrun pcl_ros bag_to_pcd water3.bag /velodyne_points /home/zbr/bagfile/pcd
命令是在bag包所在文件夹下执行的。然后就会在pcd文件中得到1161帧pcd文件。
3.提取图像数据
wiki官网给出了一种提取图像的方式