1.rosbag  录制使用
rosbag record -a  录制所有话题 rosbag record /topic_name    录制指定话题 rosbag record -O
filename.bag /topic_name 指定生成数据包的名字filename.bag rosbag record -b 4092
/topic_name   扩大录制内存限制 Record a bag file with the contents of specified topics.
1.2 如果在 launch 文件中使用 rosbag record 命令,如下:
<node pkg="rosbag" type="record" name="bag_record" args="/topic1 /topic2"/>
 2.rosbag info 

2.1 rosbag info指令可以显示数据包中的信息:
rosbag info filename.bag
2.2 输出yaml配置参数  Print information in YAML format.
rosbag info -y filename.bag
3.rosbag 回放使用

rosbag info name.bag 查看话题名称、类型、消息数量

rosbag play name.bag 回放数据包

rosbag play -r 1.5 name.bag  1.5倍速回放,按一定频率回放,-r选项用来设定消息发布速率;

rosbag play -l name.bag 按一定频率回放,-l选项用来设定循环播放;

rosbag play name.bag --topic /topic1 只播放感兴趣的topic;

-d 用来指定延迟播放的时间(sec);

        -s参数用来指定从几秒开始;rosbag play -s 10 xx.bag

        -u 参数表示仅播放包的前几秒信息;rosbag play -u 10 xx.bag

        -r 参数用来指定播放速度

        -l 循环播放

             在上述播放命令执行期间,空格键可以暂停播放。

如果想修改topic名字播放
rosbag play file.bag /topic_name:=/reame_topic_name
#//topic_name是原topic,reame_topic_name是新topic
4.rosbag操作

4.1 将file_name.bag文件中/odom话题的消息转换到odom_name.txt文件中
rostopic echo -b file_name.bag -p /odom > odom_name.txt
4.2 rosbag文件提取话题数据,生成temp1.bag只保留/odom,/tf数据
rosbag filter temp.bag temp1.bag "topic=='/odom' or topic=='/tf'"
4.3 过滤,保留某个时间段的数据
rosbag filter my.bag out.bag "t.to_sec() >= 123564.77 and t.to_sec() <=
794545.88"
4.4 如果播放两个及以上bag包,那么他们会第一帧对其,后面根据第一帧时间戳的时间差播放。
rosbag play recorded1.bag recorded2.bag
4.5 启动5秒进入包中。
rosbag play -s 5 recorded1.bag
4.6 启动时暂停按空格键开始回放
rosbag play --pause record.bag

技术
今日推荐
下载桌面版
GitHub
百度网盘(提取码:draw)
Gitee
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:766591547
关注微信