🟠 获取平均法向与中心

功能描述

算子提供了多种计算方法用于计算输入的每一个带法向点云的平均法向和中心点。

使用场景

  • 物体姿态估计:当需要确定一个平面或一个物体的整体朝向和中心位置时,例如,为机械臂抓取提供目标的位姿参考。

  • 特征简化:在复杂的点云处理流程中,将一个点云面片简化为一个中心点和其法向,可以大大减少后续计算的复杂度,便于进行高级别的场景分析或匹配。

  • 表面一致性检查:通过计算某个区域的平均法向,可以判断该区域的表面朝向是否一致,或者是否符合预期的方向。

  • 点云匹配:在一些场景下使用平均法向和中心点作为粗略对齐的匹配特征。

输入输出

输入项

带法向点云:一个或多个带法向的点云列表。

输出项

平均法向:计算得到的平均法向列表,每个法向对应一个输入的点云。

点云中心点:计算得到的中心点坐标列表,每个中心点对应一个输入的点云。

参数说明

中心点类型

参数说明

根据项目需求选择计算点云平均法向的算法。

  • 直接均值:将输入点云中所有点的法向量进行直接求和再平均。

  • 聚类均值:先对所有法向量进行聚类,找到数量最多的那一簇法向,然后将这一簇的平均方向作为最终结果。

调参说明

  • 直接均值:这种方法计算速度快,简单直接。但如果点云中存在方向错误的噪声法向,或者包含多个方向相反的面(例如一个薄片的正反两面),这些噪声会影响均值的准确性。

  • 聚类均值:一种更鲁棒的方法,这种方法能有效抵抗离群法向的干扰,特别适用于法向不一致或存在多个主方向的情况。

平均法向方法

参数说明

根据项目需求选择计算点云中心点的方法。

  • 点云均值:选择计算点云中心点的方法。

  • 点云中位数:分别计算所有点X、Y、Z坐标的中位数来构成中心点。

  • 最大最小中值:计算点云在X、Y、Z三个轴上最大值和最小值的中间点,即点云轴对齐包围盒(AABB)的中心。

调参说明

  • 点云均值:最常用的方法,但结果容易受到远离主体点云的噪声点(离群点)的影响。

  • 点云中位数:相比均值,中位数对离群点的敏感度要低得多,计算结果更稳定。

  • 最大最小中值:计算速度极快,但只考虑点云的边界,不考虑内部点的分布。

聚类比较阈值

参数说明

定义在法向聚类时,判断两个法向量是否属于同一簇的相似度阈值。仅当“平均法向方法”选择为“聚类均值”时生效。

调参说明

该值控制了聚类的严格程度。

  • 减小此值:要求法向量之间必须非常接近才能被归为一类,聚类会变得更严格,可能产生更多数量更少的簇。

  • 增大此值:允许方向差异较大的法向量也被归为一类,聚类会变得更宽松。 通常情况下,使用默认值即可满足大部分需求。

参数范围

[0,1000],默认值:0.1