无人驾驶-ROS-rosbag

无人驾驶-ROS-rosbag详解

一、常用操作

1.1 录包

(1)录制所有话题:

rosbag record -a

(2)录制指定话题,设置 bag 包名:

rosbag record -O bag_name.bag /topic1_name /topic2_name /xxx

(3)录制包不设置名称,默认按照录制结束时间命名:

rosbag record /topic1_name /topic2_name /xxx

1.2 回放

(1)以暂停的方式启动,防止跑掉数据:

rosbag play --pause record.bag

(2)直接回放:

rosbag play record.bag

(3)设置0.5倍速度回放:

rosbag play -r 0.5 record.bag

1.3 修复

rosbag reindex xxx.bag

二、rosbag recore

2.1 订阅指定主题

使用 record 订阅指定主题并生成一个 bag 文件,其中包含有关这些主题的所有消息,常见用法如下

(1)用指定的话题 topic_names 来录制 bag 包:

rosbag record <topic_names>
  • 比如录制 rosout、tf、cmd_vel 3 个话题,录制的 bag 包以时间命名:
rosbag recoed rosout tf cmd_vel

(2)录制完保存 bag 包名称为 session1 + 时间戳.bag 格式:

rosbag record -o session1 /chatter

(3)录制完保存为指定文件名 session2_090210.bag:

rosbag record -O session2_090210.bag /chatter

(4)录制系统中所有的话题:

rosbag record -a

(5)使用 -h 查看 record 使用方法,很多命令都可以用这个:

rosbag record -h

三、rosbag info

3.1 显示bag 包的信息

(1)查看bag信息
rosbag info 显示包文件内容的可读摘要,包括开始和结束时间,主题及其类型,消息计数、频率以及压缩统计信息,常见用法如下:

rosbag info name.bag
$ rosbag info foo.bag
path:        foo.bag
version:     2.0
duration:    1.2s
start:       Jun 17 2010 14:24:58.83 (1276809898.83)
end:         Jun 17 2010 14:25:00.01 (1276809900.01)
size:        14.2 KB
messages:    119
compression: none [1/1 chunks]
types:       geometry_msgs/Point [4a842b65f413084dc2b10fb484ea7f17]
topics:      /points   119 msgs @ 100.0 Hz : geometry_msgs/Point

(2)查看常用命令

rosbag info -h

(3)输出 YAML 格式的信息

rosbag info -y name.bag

(4)输出 bag 中指定域的信息,比如只显示持续时间

rosbag info -y -k duration name.bag

四、rosbag play

rosbag play 读取一个或多个 bag 文件的内容,并以时间同步的方式回放,时间同步基于接收消息的全局时间。回放开始后,会根据相对偏移时间发布消息。如果同时回放两个单独的 bag 文件,则根据时间戳的间隔来播放。比如我先录制一个 bag1 包,等待一个小时,然后录制另一个 bag2 包,那我在一起回放 bag1 和 bag2 时,在回放的中间会有 1 个小时的停滞期,也就是先回放 bag1,然后需要等待 1 个小时才能回放 bag2。

(1)在回放过程中按空格暂停,常见用法如下,回放单个 bag

rosbag play record.bag

(2)回放多个 bag,基于全局时间间隔播放

rosbag play record1.bag record2.bag

(3)开始播放立刻暂停,按空格继续

rosbag play --pause record.bag

(4)以录制的一半频率回放

rosbag play -r 0.5 --pause record.bag

(5)指定回放频率,默认 100HZ

rosbag play --clock --hz=200 record.bag

(6)循环播放

rosbag play -l record.bag

参考链接

  1. https://www.guyuehome.com/35777
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值