非均匀B样条离散点的加密与平滑

离散点的预处理是点云网格化很关键的一步,主要就是离散点的平滑、孔洞修补;本文是基于非均匀B样条基函数进行离散点云的加密和平滑的,一下为初步实现结果。

算法步骤:

1、数据点分割投影

  将三维数据点投影到二维平面上,进行数据排序,得到m*n矩阵形式的数据点(当然这种方法有一定的弊端)。

2、非均匀双三次B样条曲线曲面的拟合

  a、数据点的参数化;b、节点矢量的计算;c、计算B样条基函数 N(u);d、控制点计算;e、曲线曲面上加密点计算。

细节:

非均匀B样条离散点的加密与平滑-LMLPHP

利用累计弦长计算参数化结果。

非均匀B样条离散点的加密与平滑-LMLPHP

利用上面方法计算节点矢量U。

非均匀B样条离散点的加密与平滑-LMLPHP

利用上面方法计算B样条基函数N(u)。

非均匀B样条离散点的加密与平滑-LMLPHP

利用上面方法计算曲线上的数据点 p(u)。

曲面是在曲线的基础上加了一个维度,曲面点计算公式如下:

非均匀B样条离散点的加密与平滑-LMLPHP

运行结果:

非均匀B样条离散点的加密与平滑-LMLPHP

图1

非均匀B样条离散点的加密与平滑-LMLPHP

图2

非均匀B样条离散点的加密与平滑-LMLPHP

图3

非均匀B样条离散点的加密与平滑-LMLPHP

05-11 14:03