【古月居《ros入门21讲》学习笔记】18_常用可视化工具的使用

目录

说明:

[1. Qt工具箱](#1. Qt工具箱)

日志输出工具:rqt_console

绘制数据曲线:rqt_plot

图像渲染工具:rqt_image_view

综合工具:rqt

[2. 三维可视化工具:Rviz](#2. 三维可视化工具:Rviz)

Rviz启动

使用示例

[3. 仿真平台:Gazebo](#3. 仿真平台:Gazebo)

Gazebo启动

模型环境查看

选择模型环境打开


说明:

  1. 本系列学习笔记基于B站:古月居《ROS入门21讲》课程,且使用的Ubuntu与ROS系统版本与课程完全一致;
虚拟机版本 Linux系统版本 ROS系统版本
VMware WorkStation Pro 16 Ubuntu18.04 Melodic
  1. 课程中的所有示例代码均已跑通,且对Pyhon版本的代码也都做了运行验证,并附带验证过程(错误均已修正);

  2. 本节是整个笔记的第18节,对应视频课程的第20节,请自行对应学习;

  3. 整个系列笔记基本已经完结,但部分章节仍需润色修改 ,后面会陆续发布,请大家持续关注, 创作不易,感谢支持!


这一章节介绍一些ROS中常用可视化工具的使用。 在前面的课程中我们曾经简单介绍过ROS中一个可视化工具:计算图,计算图可视化工具指令:rqt_graph 这里将较为详细的介绍一些其它的可视化工具,如:Qt工具箱Rviz等。

1. Qt工具箱

日志输出工具:rqt_console

还是以小海龟为例,我们先来启动海龟例程

复制代码
roscore
rosrun turtlesim turtlesim_node

然后新建终端打开日志输出工具

复制代码
rqt_console

然后打开海龟键盘控制节点,让海龟动起来,并撞上墙,rqt_console就会把日志信息都显示出来。

复制代码
rosrun turtlesim turtle_teleop_key

绘制数据曲线:rqt_plot

前面已经打开了海龟控制的相关节点,这里我们打开数据绘图工具rqt_plot。

复制代码
rqt_plot

在在左上角的输入框中输入左斜杠/可以看到自动填充项,我们选择 /turtle1/pose 按回车,就会显示位置信息的实时情况。

然后我们让海龟动起来,可以看到各个数据信息的变化,

复制代码
rosrun turtlesim turtle_teleop_key

图像渲染工具:rqt_image_view

复制代码
rqt_image_view

默认里面是没有任何的图像的,需要插入摄像头,驱动摄像头跑起来,然后摄像头会不断的发布图像信息,在左上角选择图像信息的话题,rqt_image_view会把图像渲染出来,包括rgb的彩色值,如果使用rgbd的话,也可以显示深度图,红外图,只要符合ROS图像的定义都可以显示

综合工具:rqt

复制代码
rqt

直接输入rqt可以打开图形界面总接口 在Plugin菜单有各种图形界面的工具,选择点击可分块显示在下方, 前面我们介绍过的Qt工具包都可以在Plugin菜单里找到。

2. 三维可视化工具:Rviz

在前面的学习中我们就曾使用过Rviz来显示空间坐标系的相对位置。

Rviz启动

复制代码
roscore
rosrun rviz rviz

使用示例

点击Add,选择添加Image项,如果我们有摄像头的话,就会在 Image Topic 中显示出来相应的驱动,

我们选择它就可以获取摄像头的图像信息。

点击Add,选择添加LaserScan项,如果我们有激光雷达的话,选择相应的的驱动即可获取渲染出来的效果。

3. 仿真平台:Gazebo

Gazebo启动

模型环境查看
复制代码
roslaunch gazebo_ros

注意:此命令最后要空格,然后再双击tab,才能显示可选择的模型环境。如果命令最后没加空格双击tab,显示信息只有两个。

选择模型环境打开
复制代码
roslaunch gazebo_ros willowgarage_world.launch 

模型环境打开说明:

如果用虚拟机的话,可能运行效果很差或者不成功(比如我的就是),因为,首先gazebo运行需要调用很多资源,而且需要许多图形渲染工具,而虚拟机一方面性能可能就不太能支撑的起来,另一方面gazebo运行会从远程服务器加载一些离线的模型,比如:阳光,大地,这也是模型,尤其是第一次启动,它需要连接很久,因为这个服务器在国外,如果网络不好的话,可能需要加载很长时间,设置一直就加载不出来,大家知道有这样一个工具就行了。

相关推荐
!沧海@一粟!2 小时前
麒麟Zabbix Agent安装配置全攻略
linux·服务器·zabbix
小程故事多_803 小时前
OpenClaw工具引擎架构全解析,AI Agent的“双手”如何落地实操
人工智能·架构·aigc·ai编程·openclaw
qq_452396233 小时前
【AI 架构师】第十篇:Agent 工业化部署 —— 从 FastAPI 到云端全链路监控
网络·人工智能·ai·fastapi
前端摸鱼匠3 小时前
【AI大模型春招面试题11】什么是模型的“涌现能力”(Emergent Ability)?出现条件是什么?
人工智能·算法·ai·自然语言处理·面试·职场和发展
新缸中之脑3 小时前
如何合法地逆向SynthID
人工智能
剑穗挂着新流苏3124 小时前
115_PyTorch 实战:从零搭建 CIFAR-10 完整训练与测试流水线
人工智能·pytorch·深度学习·神经网络
Veggie264 小时前
【Java深度学习】PyTorch On Java 系列课程 第八章 17 :模型评估【AI Infra 3.0】[PyTorch Java 硕士研一课程]
java·人工智能·深度学习
妄汐霜4 小时前
小白学习笔记(spring框架的aop和tx)
笔记·学习
链上杯子5 小时前
《2026 LangChain零基础入门:用AI应用框架快速搭建智能助手》第8课(完结篇):小项目实战 + 部署 —— 构建网页版个人知识库 AI 助手
人工智能·langchain
东方不败之鸭梨的测试笔记5 小时前
AI生成测试用例方案
人工智能·测试用例