[ROS] 录制 PointCloud2 到 rosbag 文件

录制 PointCloud2 到 rosbag 文件

雷达获取到的点云数据, 如何录制到Rosbag文件?

作为一个Javaer我对这个问题进行了搜索. 却很难找到答案.
我只好对自己的需求先进行整理.

啥是ROS?

ROS 作为一个机器人操作系统(Robot Operating System), 有一套自己的生态.

啥是PointCloud?

ROS中定义的一种数据格式, 每个点都有基本的xyz坐标, 很多点就能构成类似图像的效果.

PointCloud和PointCloud2什么区别?

PointCloud2是PointCloud格式的升级版, PointCloud很多播放软件直接不做支持了, PointCloud2格式才支持, 优先使用PointCloud2.
(别问我怎么知道PointCloud播放支持不好的!)

.bag文件?

一种文件格式, 可以持久化ROS中各种结构的数据.

我的问题变成了.

用代码的方式写数据进.bag文件, 应该用那个库?

这里有答案:

http://wiki.ros.org/rosbag

The rosbag package provides a command-line tool for working with bags as well as code APIs for reading/writing bags in C++ and Python.

不能指望我会C++, 只能用Python了.

Python库Writing示例:
https://ternaris.gitlab.io/rosbags/topics/rosbag1.html#writing-rosbag1

Rosbags, 托管在gitlab上, 只有37个Star, 调试成功之路几乎必然是艰辛的.

Python版本要求: image.png

不要指望在搜索引擎上找到关于此库什么, 请仔细阅读文档. 同时Rosbags的issues中搜索相关PointCloud的issues, 这是重要的参考! (不要问我走了多少弯路才到这里)

示例代码

参考 issues/27, 我个人就不献丑了. , issues/27写很全面了. 我走了非常多的弯路才到这里.

https://gitlab.com/ternaris/rosbags/-/issues/27

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值