连通域分割

功能描述

该算子用于对输入的点云进行聚类分割。它将空间上足够接近的点组合成独立的点云簇,如果两个点之间的距离小于设定的“连通距离阈值”,则认为它们属于同一个连通域(即同一个簇),最终输出一个点云列表,列表中的每个点云代表一个分割出来的簇。

使用场景

  • 实例分割 : 将场景中相互分离的物体分割成独立的点云簇。

  • 噪声去除 : 可以过滤掉那些点数过少的、可能是噪声的点云簇。

  • 点云预处理 : 在进行目标识别、位姿估计等任务前,将原始点云分割成有意义的单元,简化后续处理。

输入输出

输入项

点云:输入的点云或点云列表。

输出项

分割点云:分割后得到的点云簇列表。

参数说明

该算子有两个版本:

  • 连通域分割 : 处理不带法线信息的点云。

  • 连通域分割(带法向) : 处理带有法线信息的点云。

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

  • 输入 : 可以处理单个点云或点云列表。如果是列表,会对列表中的每个点云独立进行分割,然后将所有结果合并输出(根据排序和保留参数)。

  • 输出 : 输出是一个点云列表,每个元素是一个分割得到的点云簇。

连通距离阈值

参数说明

定义了点与点之间被认为是“连通”的最大距离。如果两个点之间的距离大于此阈值,它们一定不属于同一个聚类簇。

调参说明

  • 减小阈值 : 会使得点云被分割得更细,可能将同一个物体分割成多个小簇,或者更容易分离靠得很近的物体。

  • 增大阈值 : 会使得点云簇更大,可能将距离较近的不同物体合并成一个簇。

参数范围

[0.0001, 1000],默认值:10

聚类最少点数

参数说明

一个有效的聚类簇必须包含的最小点数。

调参说明

用于过滤掉过小的点云簇,这些小簇通常是噪声或不完整的物体部分。增大此值可以去除更多的小簇(噪声),但如果设置过大,可能会过滤掉尺寸较小的有效物体。

参数范围

[1, 4000000],默认值:100

聚类最多点数

参数说明

一个有效的聚类簇允许包含的最大点数。

调参说明

用于过滤掉过大的点云簇。这在某些场景下可能有用,例如,当背景或地面被错误地聚类成一个非常大的簇时,可以通过此参数将其移除。通常保持默认值(一个很大的数)即可,除非有明确需要过滤掉超大点云簇的情况。

参数范围

[1, 4000000],默认值:4000000

启用排序

参数说明

决定是否对最终输出的点云簇列表按照点云数量从大到小进行排序。

调参说明

  • 开启(默认):输出的点云列表按点数从多到少排序。

  • 关闭:输出的点云列表顺序不确定。 如果后续处理依赖于点云簇的大小顺序(例如,总是处理最大的簇),则应保持此项为开启状态。

保留全部结果

参数说明

决定是否输出所有满足大小条件的聚类结果。

调参说明

  • 开启(默认): 保留所有通过最小/最大点数过滤后的聚类簇。

  • 关闭: 只保留点数最多的前 N 个聚类簇,N 由下面的“保留结果数量”参数指定。

使能节点

参数说明

控制该算子是否执行聚类操作。

调参说明

  • 开启(默认):则算子正常执行聚类功能;

  • 关闭:则算子不执行任何操作。