索引选取点云

功能描述

该算子用于从输入的点云列表(一个包含多个点云的数据集合)中,根据指定的索引号选取一个或多个点云。用户可以通过设置索引号来精确选择列表中的某一个点云,或者通过反向索引功能保留除了指定索引号之外的所有点云。

使用场景

  • 处理多点云输入: 当上一个算子(如点云聚类、多模板匹配)输出了一个包含多个点云的列表时,可以使用此算子从中选取特定的一个点云进行后续处理。例如,选取聚类结果中的第一个点云簇,或最后一个点云簇。

  • 过滤特定点云: 当需要排除列表中的某个特定点云时,可以使用反向索引功能。例如,移除匹配得分最低或最高的那个结果点云。

  • 流程控制: 在复杂的算法流程中,根据条件选择处理列表中的某个点云。

输入输出

输入项

点云:包含一个或多个点云的列表。

输出项

索引到点云列表:包含选中点云的列表。

参数说明

该算子有两个版本:

  • 索引选取点云 : 处理不带法线信息的点云。

  • 索引选取点云(带法向) : 处理带有法线信息的点云。

两者功能和参数完全相同,仅处理的点云数据类型不同。

  • 索引从0开始: 列表中的第一个点云索引为 0,第二个为 1,依此类推。

  • -1索引: -1 是一个方便的快捷方式,用于选取列表中的最后一个元素,无需预先知道列表的确切长度。

  • 索引范围: 确保设置的“索引号”在输入点云列表的有效范围内,否则会引发错误。

索引号

参数说明

指定要选取(或在反向索引时排除)的点云在输入列表中的位置编号。索引从 0 开始计数。特殊值 -1 表示列表中的最后一个点云。

调参说明

  • 设置为0:选取列表中的第1个点云。

  • 设置为1:选取列表中的第2个点云。

  • 设置为-1:选取列表中的最后1个点云。

  • 设置为其他正整数n:选取列表中的第 n+1 个点云。

  • 注意 : 设置的索引号必须在有效范围内(从 -1 到 列表长度-1),否则算子会报错。例如,如果输入列表只有 3 个点云,有效的 index 范围是 -1, 0, 1, 2。

参数范围

[-1, 10000] ,默认值:0,实际有效上限取决于输入列表的长度。

反向索引

参数说明

改变算子的选取逻辑。

调参说明

  • 关闭(默认) :正向索引,算子只输出由“索引号”参数指定的那个点云,输出列表只包含一个点云。

  • 开启: 算子输出列表中除了“索引号”参数指定的那个点云之外的所有点云,输出列表包含原列表长度减一的点云数量。