SLAM从入门到精通(数据回放工具之rosbag)

这篇具有很好参考价值的文章主要介绍了SLAM从入门到精通(数据回放工具之rosbag)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        前面我们学习了hector-slam、gmapping slam两种slam方法。当时我们操作的时候,是通过手动操作的方法来建图的。但是这里面可能存在一个问题,因为建图的时候,我们只能选择一种slam建图方法。如果我们想针对同一种场景用不同的slam算法,比较下它们的建图效果,这个时候就没有办法了。好在ros给我们提供了一个数据回放的工具,即rosbag。

        rosbag好处蛮多的,最主要的就两个。一个是方便学习。对于刚开始ros入门的同学来说,可能自身缺少相应的传感器,无法对算法进行分析和测试。但是有了rosbag之后,数据可以按照之前的速度进行回放处理,这个时候即使没有传感器,没有实际数据,也可以对算法进行单步调试的。第二个好处就是debug了。这个比较显而易见。对于部分复杂的场景,用rosbag来分析问题是再好不过了。现场fae人员描述得再好,都不如一个rosbag文件来得踏实。

        下面我们就用小乌龟行走的场景,看下rosbag应该怎么使用。

1、第一步打开roscore

        这个比较好理解,roscore是所有消息的分发器,它肯定第一个被启动。

2、依次打开turtlesim_node和turtle_teleop_key

        前者是打开小乌龟的界面,后者是实际操作。两者的命令是,

rosrun turtlesim turtlesim_node
rosrun turtlesim turtle_teleop_key

3、打开rosbag工具

        在用turtle_teleop_key操作小乌龟之前,我们需要用rosbag记录一下所有的话题和消息。对应的命令是,

rosbag record -a

        输入完毕之后,我们就可以在当前目录下看到生成了一个bag文件,

feixiaoxing@feixiaoxing-VirtualBox:~/Desktop$ ls
2023-10-13-16-44-52.bag  catkin_ws  wpr_simulation-master.zip

        这个bag文件就是系统记录的数据包了。

4、操作小乌龟,继续生成bag文件

        所有操作都准备好了,就可以操作小乌龟了。让小乌龟各个方向都走一走,最好是走出一个图案出来。这样在后续rosbag回放的时候,可以看下生成的图案和当前的图案是否一致。等图案生成后,就可以关闭turtlesim_node、turtle_teleop_key、rosbag了。

SLAM从入门到精通(数据回放工具之rosbag),SLAM从入门到精通,机器人

5、确认bag文件是否正确

        为了验证bag文件是否正确,可以输入rosbag info 2023-10-13-16-44-52.bag的方法来进一步确认下,

feixiaoxing@feixiaoxing-VirtualBox:~/Desktop$ rosbag info 2023-10-13-16-44-52.bag 
path:        2023-10-13-16-44-52.bag
version:     2.0
duration:    1:07s (67s)
start:       Oct 13 2023 16:44:52.39 (1697186692.39)
end:         Oct 13 2023 16:46:00.20 (1697186760.20)
size:        607.8 KB
messages:    8646
compression: none [1/1 chunks]
types:       geometry_msgs/Twist [9f195f881246fdfa2798d1d3eebca84a]
             rosgraph_msgs/Log   [acffd30cd6b6de30f120938c17c593fb]
             turtlesim/Color     [353891e354491c51aabe32df673fb446]
             turtlesim/Pose      [863b248d5016ca62ea2e895ae5265cf9]
topics:      /rosout                    6 msgs    : rosgraph_msgs/Log  
             /rosout_agg                3 msgs    : rosgraph_msgs/Log  
             /turtle1/cmd_vel         191 msgs    : geometry_msgs/Twist
             /turtle1/color_sensor   4223 msgs    : turtlesim/Color    
             /turtle1/pose           4223 msgs    : turtlesim/Pose

6、数据回放与验证

        有了bag文件,其实下面就可以通过回放的方法来进一步验证了。验证的步骤也不复杂,主要分成这三步。第一,打开roscore;第二,打开turtlesim_node;第三步,这里用rosbag play 2023-10-13-16-44-52.bag来代替turtle_teleop_key了。可以观察一下,确认小乌龟生成的图案和之前保存的图案是否一致。如果一致,基本代表整个过程都是ok的。文章来源地址https://www.toymoban.com/news/detail-725672.html

feixiaoxing@feixiaoxing-VirtualBox:~/Desktop$ rosbag play 2023-10-13-16-44-52.bag 
[ INFO] [1697186826.134207057]: Opening 2023-10-13-16-44-52.bag

Waiting 0.2 seconds after advertising topics... done.

Hit space to toggle paused, or 's' to step.
 [DELAYED]  Bag Time: 1697186692.394805   Duration: 0.000000 / 67.807504   Delay [RUNNING]  Bag Time: 1697186692.394805   Duration: 0.000000 / 67.807504         [RUNNING]  Bag Time: 1697186692.394805   Duration: 0.000000 / 67.807504         [RUNNING]  Bag Time: 1697186692.396400   Duration: 0.001595 / 67.807504         [RUNNING]  Bag Time: 1697186692.496650   Duration: 0.101844 / 67.807504         [RUNNING]  Bag Time: 1697186692.596853   Duration: 0.202048 / 67.807504         [RUNNING]  Bag Time: 1697186692.639153   Duration: 0.244348 / 67.807504         [RUNNING]  Bag Time: 

到了这里,关于SLAM从入门到精通(数据回放工具之rosbag)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 移动机器人激光SLAM导航(五):Cartographer SLAM 篇

    参考 Cartographer 官方文档 Cartographer 从入门到精通 1.1 前置条件 推荐在刚装好的 Ubuntu 16.04 或 Ubuntu 18.04 上进行编译 ROS 安装:ROS学习1:ROS概述与环境搭建 1.2 依赖库安装 资源下载完解压并执行以下指令 https://pan.baidu.com/s/1LWqZ4SOKn2sZecQUDDXXEw?pwd=j6cf 1.3 编译 本文只编译 cartographer

    2024年02月21日
    浏览(43)
  • 机器人SLAM与自主导航

    机器人技术的迅猛发展,促使机器人逐渐走进了人们的生活,服务型室内移动机器人更是获得了广泛的关注。但室内机器人的普及还存在许多亟待解决的问题,定位与导航就是其中的关键问题之一。在这类问题的研究中,需要把握三个重点:一是地图精确建模;二是机器人准

    2024年02月08日
    浏览(36)
  • SLAM+路径规划:巡检机器人算法设计

    标题:Research on SLAM and Path Planning Method of Inspection Robot in Complex Scenarios 作者:Xiaohui Wang,Xi Ma,Zhaowei Li 编译:东岸因为 编辑:郑欣欣@一点人工一点智能 入群邀请:7个专业方向交流群+1个资料需求群 原文:SLAM+路径规划:巡检机器人算法设计 工厂安全检查对于保持生产环境

    2024年02月03日
    浏览(46)
  • 基于机器人自主移动实现SLAM建图

    博客地址:https://www.cnblogs.com/zylyehuo/ 基于[移动机器人运动规划及运动仿真],详见之前的博客 移动机器人运动规划及运动仿真 - zylyehuo - 博客园 参考链接 Autolabor-ROS机器人入门课程《ROS理论与实践》 ubuntu 18.04

    2024年02月05日
    浏览(42)
  • 《机器人SLAM导航核心技术与实战》第1季:第5章_机器人主机

    《机器人SLAM导航核心技术与实战》第1季:第5章_机器人主机 视频讲解 【第1季】5.第5章_机器人主机-视频讲解 【第1季】5.1.第5章_机器人主机_X86与ARM主机对比-视频讲解 【第1季】5.2.第5章_机器人主机_ARM主机树莓派3B+-视频讲解 【第1季】5.3.第5章_机器人主机_ARM主机RK3399-视频讲

    2024年02月08日
    浏览(44)
  • 机器人SLAM导航学习-All in one

    参考引用 张虎,机器人SLAM导航核心技术与实战[M]. 机械工业出版社,2022. 本博客未详尽之处可自行查阅上述书籍 移动机器人激光SLAM导航(文章链接汇总) 1. ROS 入门必备知识 ROS学习笔记(文章链接汇总) 2. C++ 编程范式 《21天学通C++》读书笔记(文章链接汇总) 3. OpenCV 图像

    2024年02月16日
    浏览(40)
  • 学习记录-自动驾驶与机器人中的SLAM技术

    以下所有内容均为高翔大神所注的《自动驾驶与机器人中的SLAM技术》中的内容 作者实现了一个2D 的ICP,包含了点到线的处理方式 实现了一个似然场法的配准,介绍了相关公式,使用了高斯牛顿法和g2o进行求解,其中g2o中有对核函数的使用 实现了一个 并发的ICP 配准 实现了点

    2024年02月02日
    浏览(43)
  • 机器人运动学——轮速里程计(SLAM)

    目录 一、机器人运动学分析 二、阿克曼小车  2.1运动学分析   想要让机器人运动, 除了提供目标速度还不够, 需要将机器人的目标速度转换每个电机实际的目标速度, 最终根据电机的目标速度对电机的控制实现对机器人的控制。 机器人的目标速度转换成电机的目标速度这

    2024年02月16日
    浏览(36)
  • 盘点机器人常用的几大主流SLAM算法

    SLAM可以说是近几年最火的机器人技术之一,也是机器人领域的关键技术。不少同学表示,学了几年还在「爬坑」,甚至感觉「越学越难」。本文通过整理机器人领域常用的SLAM算法架构及特点,希望为大家的方向选择提供一些参考。 我们先界定一下SLAM技术。SLAM,是指即时定

    2024年02月05日
    浏览(41)
  • 【配置Swarm-SLAM(swarm slam : 开源的多机器人协同CSLAM算法)更新中】

    旨在记录Swarm-SLAM过程。 Swarm-SLAM: Sparse Decentralized Collaborative Simultaneous Localization and Mapping Framework for Multi-Robot Systems Swarm-SLAM 是一个开源的多机器人协同同时定位与建图(C-SLAM)系统,旨在可扩展,灵活,分散和稀疏,这些都是集群机器人的关键属性。其系统支持激光雷达、双

    2024年01月17日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包