解析rosbag中的.bag文件,得到.jpg图片数据和.pcd点云数据

解析rosbag中的.bag文件,得到.jpg图片数据和.pcd点云数据

使用ROS对Pandora进行数据获取,得到 .bag文件

  1. 查看.bag文件信息
  2. 解析到.jpg的图像数据
  3. 解析为.pcd的点云数据

1. 查看某个.bag的数据信息(其中*为.bag文件名)

rosbag info *.bag

结果如下:
查看.bag文件信息

2. 解析该.bag文件到.jpg格式图片

建立export.launch文件, 文件内容如下:

<launch>
      <node pkg="rosbag" type="play" name="rosbag" args="-d 2 /home/nawenjie/1st.bag"/>
      <node name="extract" pkg="image_view" type="extract_images" respawn="false" output="screen" cwd="ROS_HOME">
        <remap from="image" to="/pandora/sensor/pandora/camera/front_color"/>
      </node>
 </launch>

其中"home/nawenjie/1st.bag"为需要解析的.bag文件路径, "/pandora/sensor/pandora/camera/front_color"想要解析的话题名称
打开终端,运行roscore:

roscore

新建终端, cd到export.launch文件夹下, 运行代码如下

roslaunch export.launch

解析结果如下:
launch

解析的图片在home下的 .ros目录里,将目录下的图片移动到你想要的文件夹

mv ~/.ros/frame*.jpg ~/image_pandora/1stbag/front_color

其中 /image_pandora/1stbag/front_color 为你的目标文件夹

3. 解析.bag文件到.pcd点云数据文件

有两种方法:

  1. 利用bag_to_pcd, 代码如下(亲测有效):
rosrun pcl_ros bag_to_pcd <*.bag> <topic> <output_directory>
  1. 利用pointcloud_to_pcd, 代码如下:
rosrun pcl_ros pointcloud_to_pcd input:=<topic>

方法2未运行成功,该命令行,需要在节点进行通信时,抓取话题信息,暂时无法测试.

参考
1.http://wiki.ros.org/rosbag/Tutorials/Exporting image and video data
2.https://answers.ros.org/question/9102/how-to-extract-data-from-bag/

猜你喜欢

转载自blog.csdn.net/weixin_40000540/article/details/83859694
今日推荐