1.Troubleshooting
如果您遇到问题并且没有看到下面的答案,请尝试“故障排除”页面
2.Install or build rviz
2.1 Install from debian repository
Until fuerte:
sudo apt-get install ros-fuerte-visualization
From groovy on:
sudo apt-get install ros-groovy-rviz
# or
sudo apt-get install ros-hydro-rviz
# or
sudo apt-get install ros-indigo-rviz
2.2Build from source
Download the rviz sources into your ros_workspace or your overlay (help for fuerte, help for groovy).
First satisfy any system dependencies.
rosdep install rviz
Now build the visualizer:
rosmake rviz
rviz首次启动时,您将看到一个空窗口:
黑色最大的东西是3D视图(为空,因为看不到任何东西)。 左侧是“显示器”列表,它将显示您已加载的所有显示器。 现在,它仅包含全局选项和时间视图,我将在后面介绍。 右侧是其他一些面板,如下所述。
4.Displays
显示器是一种在3D世界中画画的东西,并且可能在显示器列表中有一些可用选项。 一个例子是点云,机器人状态等。
4.1 Adding a new display
要添加显示,请单击底部的“添加”按钮:
这将弹出新的显示对话框:
顶部的列表包含显示类型。 该类型详细说明此显示将可视化什么样的数据。 中间的文本框提供了所选显示类型的描述。 最后,您必须给显示器一个唯一的名称。 例如,如果您的机器人上有两个激光扫描仪,则可以创建两个“激光扫描”显示,分别命名为“激光基座”和“激光头”。
4.2 Display Properties
每个显示都有自己的属性列表。 例如:
4.3 Display Status
0.4的新功能
每个显示都有其自己的状态,以帮助您了解一切正常。 状态可以是以下四种之一:OK,Warning,Error和Disabled。 状态在显示器标题中通过背景色以及在状态类别中指示,您可以查看显示器是否展开:
状态类别也会展开以显示特定状态信息。 对于不同的显示,此信息是不同的,并且消息应具有自解释性。
4.5 Built-in Display Types
5.Configurations
显示器的不同配置通常对于可视化器的不同用途很有用。 例如,对完整PR2有用的配置对于测试推车不一定有用。 为此,可视化器使您可以加载和保存不同的配置。
A configuration contains:
- Displays + their properties
- Tool properties
- Camera type + settings for the initial viewpoint
注意:使用RViz for Groovy,配置文件格式已从.vcg / INI更改为.rviz / YAML,可能还更改了内部配置机制。 不幸的是“ Groovy中的RViz不向后兼容”(相关问题)。 因此,无法在Groovy的RViz中打开或转换旧的.rviz配置文件。
6.Views Panel
可视化器中有许多可用的不同摄像机类型,并且随着时间的流逝,列表会不断增加:
摄像机类型包括控制摄像机的不同方式和不同类型的投影(正交投影与透视投影)。
6.1 The different camera types
6.1.1 Orbital Camera (default)
轨道摄像机仅围绕焦点旋转,而始终注视该点。 移动相机时,焦点显示为小光盘:
控制项
- 鼠标左键:单击并拖动以围绕焦点旋转。
- 鼠标中键:单击并拖动以在由相机的上下矢量形成的平面中移动焦点。 移动的距离取决于焦点-如果焦点上有一个对象,然后单击它的顶部,它将停留在鼠标下方。
- 鼠标右键:单击并拖动以放大/缩小焦点。 向上拖动放大,向下拖动缩小。
- 滚轮:放大/缩小焦点
6.1.2 FPS (first-person) Camera
FPS相机是第一人称相机,因此旋转时就好像您用头看一样。
控制项
-
鼠标左键:单击并拖动以旋转。 按住Control键并单击以选择鼠标下方的对象,然后直接查看它。
-
鼠标中键:单击并拖动以沿着由相机的上下矢量形成的平面移动
-
鼠标右键:单击并拖动以沿摄像机的前向矢量移动。 向上拖动向前移动,向下拖动向后移动。
-
滚轮:前进/后退
6.1.3 Top-down Orthographic
自顶向下的正交摄影机始终沿Z轴向下(在机器人框架中),并且是正交视图,这意味着物体越远,物体就不会变小。
控制项
- 鼠标左键:单击并拖动以绕Z轴旋转
- 鼠标中键:单击并拖动以沿XY平面移动相机
- 鼠标右键:单击并拖动以缩放图像
- 滚轮:缩放图像
6.1.4 XY Orbit
与轨道摄像机相同,对焦点限制在XY平面上。
控制项
参见轨道摄像机。
6.1.5 Third Person Follower
相机向目标框保持恒定的视角。 与XY轨道相反,如果目标框偏航,则相机会旋转。 例如,如果您要对带有拐角的走廊进行3D映射,则可能会很方便。
控制项
参见轨道摄像机。
6.2 Views
视图面板还允许您创建不同的命名视图,这些视图可以保存并可以在它们之间切换。 视图由目标框,摄像机类型和摄像机姿势组成。 您可以通过单击“保存当前”按钮来保存视图。
A view consists of:
- View controller type
- View configuration (position, orientation, etc. Possibly different for each view controller type.)
- The Target Frame
7. Coordinate Frames
rviz使用tf转换系统将到达的坐标帧中的数据转换为全局参考帧。 在可视化器中需要了解两个重要的坐标系。
7.1 The Fixed Frame
两个框架中最重要的是固定框架。 固定框架是用于表示“world”框架的参考框架。 这通常是“map”或“world”或类似名称,但也可以是例如里程表框架。
如果将固定框架错误地设置为机器人的基座,则机器人曾经见过的所有物体都将出现在机器人前面,相对于检测到它们的位置。 为了获得正确的结果,固定框架不应相对于世界移动。
如果更改固定帧,则将清除当前显示的所有数据,而不是重新转换它们。
7.2 The Target Frame
目标框架是摄像机视图的参考框架。 例如,如果您的目标框架是地图,您将看到机器人绕着地图行驶。 如果目标框架是机器人的基础,则机器人将停留在同一位置,而其他所有东西都相对于它移动。
8.Tools
可视化工具有许多工具可以在工具栏上使用:
8.1 Move Camera (Keyboard shortcut: m)
“移动相机”工具是默认工具。 选中此选项后,在3d视图中单击时,当前视图便会执行其操作。
8.2 Select (Keyboard shortcut: s)
选择工具可让您选择3D视图中显示的项目。 它支持单点选择以及click/drag框选择。
8.3 2D Nav Goal (Keyboard shortcut: g)
使用此工具,您可以设置在“目标” ROS主题上发送的目标。 单击地平面上的某个位置,然后拖动以选择方向.
8.4 2D Pose Estimate (Keyboard shortcut: p)
使用此工具,您可以设置初始姿势来播种本地化系统(在“ initialpose” ROS主题上发送)。
9.Time
在模拟器中运行时,“时间”面板最有用:它使您可以查看经过了多少ROS时间时间,以及经过了多少“壁钟”(又称真实时间)时间。
时间面板还允许您重置可视化器的内部时间状态-这将导致所有显示的重置以及tf内部数据缓存的重置。
如果您不在仿真中运行,则时间面板几乎没有用。 在大多数情况下,它可以关闭,您甚至可能不会注意到(除了rviz的其余部分具有更多的屏幕空间外)。
10.Stereo
如果您有支持此功能的图形卡,显示器和眼镜,Rviz可以3D立体渲染。
11.Plugins
已设置rviz,以便可以通过插件添加新的显示。 实际上,即使是内置显示器也可以通过“默认”插件加载。 用户的最终结果是,有一种方法可以从UI加载/卸载插件。 (请注意,从提交时开始,所有插件都会自动加载-不再有UI。)如果选择Plugins-> Manage …菜单项,它将弹出一个对话框,让您管理加载/卸载插件:
如果卸载具有显示状态的插件,则它们将不再显示任何内容,但将保留其设置: