点云法向估计

功能描述

该算子用于为输入的点云数据中的每个点估计其表面法向量。

法向量是一个垂直于点所在局部表面的三维向量,表示该点的朝向。

算子采用基于 K 近邻的方法:对于点云中的每个点,查找其最近的 K 个邻近点,然后通过这些邻近点拟合一个局部平面,该平面的法向量即作为该点的法向量估计值。

使用场景

  • 特征提取 : 法向量及其分布是重要的几何特征,可用于点云匹配、分割和识别任务等。

  • 平面拟合与检测 : 法向量信息有助于识别和分割平面区域。

  • 表面分析 : 分析物体表面的曲率、平滑度等。

  • 机器人抓取 : 判断物体表面的可抓取性或计算抓取姿态时,可能需要法向量信息。

输入输出

输入项

点云 :输入点云或点云列表,只包含 XYZ 坐标信息。

输出项

带法向点云 :输出的点云或点云列表,除了包含原始的 XYZ 坐标外,每个点还附加了其估计得到的法向量信息。

参数说明

  • 计算量:法向估计是逐点计算的,点云数量越多、K值越大,计算时间越长。

  • 视点重要性:务必设置正确的视点,以保证法向量方向的一致性。

视点

参数说明

定义一个三维坐标 [X, Y, Z],通常为相机坐标系的原点 [0, 0, 0],用于调整计算出的法向量方向。

调参说明

法向量有两个可能的方向(指向表面内或指向表面外)。算子计算出初始法向量后,会计算从当前点指向视点的向量与初始法向量的夹角,如果夹角大于90度,算子会将法向量反向,以确保法向量大致指向视点方向。

参数范围

默认值:[0,0,0]

搜索数量

参数说明

在为每个点估计法向量时,需要查找其周围邻近点的数量,用这些邻居拟合一个小平面,平面的法向量就是该点的法向量。

调参说明

  • 搜索数量的选择会影响法向量估计的稳定性和对局部细节的敏感度。

  • 搜索数量越少,对局部细节更敏感,能够更好地反映尖锐边缘或高曲率区域的法向变化,但对噪声也更敏感,估计出的法向量可能不够平滑。

  • 搜索数量越多,考虑更大范围的邻域,估计出的法向量更平滑,对噪声不敏感,但可能会平滑掉一些细节特征,使边缘处的法向量过渡不够锐利。

    需要根据点云的密度、噪声水平以及应用需求来选择合适的搜索数量。

参数范围

[0, 1000000],默认值:15