ElementToPose 元素转 pose
ElementToPose 算子用于将元素或者元素中心点输出为 pose 或者 pose_list 。使用元素类型有:Cube 、Cylinder 、Path 。
类型 | 功能 |
---|---|
Cube | 将 cube 或者 cube_list 中心点输出格式为 pose 或者 pose_list 。cube 的 Width/Height/Depth 作为 pose 的 X/Y/Z 轴方向。 |
Cylinder | 将 cylinder 或者 cylinder_list 中心点输出格式为 pose 或者 pose_list 。cylinder 的 Length 作为 pose 的 Z 的方向。 |
Cloud | 将 PointCloud 中的点输出格式为 pose_list, 可根据参考姿态(ref_pose)中 Roll、Pitch、Yaw 调整 pose_list 的旋转姿态。 |
Grasp | / |
Path | 将 path 或者 path_list 中心点输出格式为 poselist 。 |
Cube
将 ElementToPose 算子 类型
属性选择 Cube ,用于将 cube 或者 cube_list 中心点输出格式为 pose 或者 pose_list 。cube 的Width-Height-Depth 作为 pose 的三个轴
X-Y-Z 的方向。
算子参数
-
坐标/pose
:设置 pose 在 3D 视图中的可视化属性。-
打开 pose 可视化。
-
关闭 pose 可视化。
-
设置 pose 的尺寸大小。取值范围:[0.001,10] 。默认值:0.1 。
-
-
坐标列表/pose_list
:设置 pose 列表在 3D 视图中的可视化属性。参数值描述与坐标
一致。
数据信号输入输出
输入:
说明:根据需求选择其中一种数据信号输入即可。
-
cube
:-
数据类型:Cube
-
输入内容:立方体数据
-
-
cube_list
:-
数据类型:CubeList
-
输入内容:立方体数据列表
-
输出:
-
pose
:-
数据类型:Pose
-
输出内容:单个 pose 数据
-
-
pose_list
:-
数据类型:PoseList
-
输出内容: pose 数据列表
-
功能演示
使用 ElementToPose 算子中 Cube ,将 cube 中心点输出格式为 pose 。
步骤1:算子准备
添加 Trigger 、Emit 、ElementToPose 算子至算子图。
步骤2:设置算子参数
-
设置 Emit 算子参数:
-
类型 → Cube
-
坐标 → 0 0 0 0 0 0
-
宽度 → 1
-
高度 → 1
-
深度 → 1
-
立方体 → 可视
-
-
设置 ElementToPose 算子参数:
-
类型 → Cube
-
坐标 → 可视
-
步骤3:连接算子
步骤4:运行
点击 RVS 运行按钮,触发 Trigger 算子。
运行结果
结果如下图所示,3D 视图中显示加载的 cube 以及中心点 pose ,pose 的 X 轴的方向为 cube 的 width ,pose 的 Y 轴的方向为 cube 的 height ,pose 的Z 轴的方向为 cube 的 depth 。
Cylinder
选择 ElementToPose 算子中 Cylinder ,用于将 cylinder 或者 cylinder_list 中心点输出格式为 pose 或者 pose_list 。Cylinder 的 Length 作为 pose 的 Z 的方向。
算子参数
-
坐标/pose
:设置 pose 在 3D 视图中的可视化属性。-
打开 pose 可视化。
-
关闭 pose 可视化。
-
设置 pose 的尺寸大小 。取值范围:[0.001,10] 。默认值:0.1 。
-
-
坐标列表/pose_list
:设置 pose 列表在 3D 视图中的可视化属性。参数值描述与坐标
一致
数据信号输入输出
输入:
说明:根据需求选择其中一种数据信号输入即可。
-
cylinder
:-
数据类型:Cylinder
-
输入内容:圆柱体数据
-
-
cylinder_list
:-
数据类型:CylinderList
-
输入内容:圆柱体数据列表
-
输出:
-
pose
:-
数据类型:Pose
-
输出内容:单个 pose 数据
-
-
pose_list
:-
数据类型:PoseList
-
输出内容: pose 数据列表
-
功能演示
本节将使用 ElementToPose 算子中 Cylinder ,将生成的 cylinder 中心点输出格式为 pose 。这与 ElementToPose算子中 cube 属性将 cube 中心点输出格式为 pose 或者 pose_list的方法相同,请参照该章节的功能演示。
Cloud
将ElementToPose 算子的类型
属性选择Cloud,用于将 PointCloud
中的点输出格式为 pose_list, 可根据参考姿态(ref_pose)中 Roll、Pitch、Yaw 调整 pose_list 的旋转姿态。
算子参数
-
坐标列表/pose_list
:设置 pose 列表在 3D 视图中的可视化属性。-
打开 pose 列表可视化。
-
关闭 pose 列表可视化。
-
设置 pose 列表的尺寸大小。取值范围:[0.001,10] 。默认值:0.1 。
-
数据信号输入输出
输入:
-
cloud
:-
数据类型:PointCloud
-
输入内容:单个点云
-
-
ref_pose
:-
数据类型:pose
-
输入内容:单个坐标
说明:当连接 ref_pose 端口时,pose_list 的结果会根据左侧 ref_pose 输入的姿态进行调整。如果该端口没有连接数据,则默认使用姿态 Pose(0,0,0,0,0,0) 作为参考姿态。
-
输出:
-
pose_list
:-
数据类型:PoseList
-
输出内容:坐标列表
-
功能演示
使用 ElementToPose 算子中 Cloud ,将 点云中的点输出为坐标列表,根据参考姿态(0,0,0,0.5,0,0)调整输出结果的姿态 。
步骤1:算子准备
添加 Trigger 、Load 、Emit、ElementToPose 算子至算子图。
步骤2:设置算子参数
-
设置 Load 算子参数:
-
类型 → PointCloud
-
文件 → 选择点云文件名(example_data/pointcloud/line.pcd)
-
点云 → 可视 → 2
-
-
设置 Emit 算子参数:
-
类型 → Pose
-
坐标 → 0 0 0 0.5 0 0
-
坐标→ 可视 → 0.3
-
-
设置 ElementToPose 算子参数:
-
类型 → PointCloud
-
坐标列表 → 可视
-
步骤3:连接算子
步骤4:运行
点击 RVS 运行按钮,触发 Trigger 算子。
运行结果
结果如下图所示,左图显示的是 Load、Emit 算子结果,右图显示 ElementToPose 的结果。根据参考姿态(0,0,0,0.5,0,0),可以观察到坐标列表的调整。
Path
将 ElementToPose 算子 类型
属性选择 Path ,用于将 path 或者 path_list 中的点输出格式为 poselist 。
算子参数
-
坐标列表/pose_list
:设置 pose 列表在 3D 视图中的可视化属性。-
打开 pose 列表可视化。
-
关闭 pose 列表可视化。
-
设置 pose 列表的尺寸大小。取值范围:[0.001,10] 。默认值:0.1 。
-
数据信号输入输出
输入:
说明:根据需求选择其中一种数据信号输入即可。
-
path
:-
数据类型:Path
-
输入内容:Path 数据
-
-
path_list
:-
数据类型:PathList
-
输入内容:Path 数据列表
-
输出:
-
pose_list
:-
数据类型:PoseList
-
输出内容: pose 数据列表
-
功能演示
使用 ElementToPose 算子中 Path ,将 path 中的点输出为 poselist 。
步骤1:算子准备
添加 Trigger 、Load 、ElementToPose 算子至算子图。
步骤2:设置算子参数
-
设置 Load 算子参数:
-
类型 → Path
-
文件 →→ 选择 path 文件名 ( example_data/paths/path.txt:文件内容如下 )
-
path → 可视
-
-
设置 ElementToPose 算子参数:
-
类型 → Path
-
坐标列表 → 可视
-
步骤3:连接算子
步骤4:运行
点击 RVS 运行按钮,触发 Trigger 算子。
运行结果
结果如下图所示,3D 视图中显示加载的 Path 以及转换后的点 pose 。