python3的独立rosbag装载机
importRosbag的Python项目详细描述
进口行李
导入rosbag数据-纯python-独立-无需安装ROS。在
importRosbag函数导入.rosbag文件。使用“filePathOrName” 参数来提供路径。e、 g
from importRosbag.importRosbag import importRosbag
topics = importRosbag(filePathOrName='path/to/data.bag')
rosbag由一组主题组成,每个主题都有一组消息。 主题有一个由创建者定义的名称和一个消息类型,它 是标准的,并定义每个消息的内容。 此函数使用主题类型来解释来自每个主题的消息, 为每一个主题产生一个dict。每一个都包含 每个数据字段。在
默认情况下,此函数将解压缩其具有消息类型的所有主题 定义,但可以使用以下关键字参数之一来限制 主题被阐明:
- 'listTopics'=True-不解包-只返回文件中包含的主题及其相关类型的列表-使用此选项可以快速检查包中的内容
- 'importTopics'=只导入列出的主题
- 'importTypes'=-仅导入列出的类型。在
用法示例:
^{pr2}$支持的消息类型是标准消息类型的选择,以及一些 与基于事件的传感器相关:
标准:
- 几何图形/位置设置
- 几何图形/变换
- 几何图形/转换标记
- 几何图形/扭曲压印
- 传感器
- 传感器图像/图像
- 传感器msgs/Imu
- 传感器\u msgs/PointCloud2
- tf/tf消息
专业:
- dvs消息/事件阵列
- esim消息/可选流
进口的方法是根据作者的特殊需要而改进的, 有时忽略某些字段,以特定方式对数据分组等。 例如,从CameraInfo消息类型中,我们只导入一条消息 因为我们目前对自动校准或其结果不感兴趣。 但是,对于任何希望导入rosbags的人来说,这个代码应该是一个模型。 虽然可以通过编程方式导入消息,只需给定消息 定义文件,我们选择不这样做,因为如果我们这样做,我们会 不管怎样,我们想得到结果数据并找出我们想要的位。在
时间戳:我们将时间戳转换为64位浮点。如果你 对于任何编码为unix时间的时间戳,关心亚微秒级的精度。在
四元数:注意!如果导入任何将旋转编码为 四元数,例如PoseStamped/Transform/TransformStamped/tfMessage:we import 四元数的形式为w,x,y,z,这是某些软件中的惯例, 就像blender;然而,在rosbag中,原生形式是x,y,z,w
依赖项:
- numpy公司
- 全面质量管理
- 项目
标签: