【古月居《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运行会从远程服务器加载一些离线的模型,比如:阳光,大地,这也是模型,尤其是第一次启动,它需要连接很久,因为这个服务器在国外,如果网络不好的话,可能需要加载很长时间,设置一直就加载不出来,大家知道有这样一个工具就行了。

相关推荐
你可以叫我仔哥呀1 分钟前
ElasticSearch学习笔记三:基础操作(一)
笔记·学习·elasticsearch
周末不下雨3 分钟前
win11+ubuntu22.04双系统 | 联想 24 y7000p | ubuntu 22.04 | 把ubuntu系统装到1T的移动固态硬盘上!!!
linux·运维·ubuntu
maxiumII3 分钟前
Diving into the STM32 HAL-----DAC笔记
笔记·stm32·嵌入式硬件
ZOMI酱4 分钟前
【AI系统】GPU 架构与 CUDA 关系
人工智能·架构
deephub11 分钟前
使用 PyTorch-BigGraph 构建和部署大规模图嵌入的完整教程
人工智能·pytorch·深度学习·图嵌入
哎呦喂-ll43 分钟前
Linux进阶:环境变量
linux
deephub43 分钟前
优化注意力层提升 Transformer 模型效率:通过改进注意力机制降低机器学习成本
人工智能·深度学习·transformer·大语言模型·注意力机制
Rverdoser44 分钟前
Linux环境开启MongoDB的安全认证
linux·安全·mongodb
搏博1 小时前
神经网络问题之二:梯度爆炸(Gradient Explosion)
人工智能·深度学习·神经网络