非均匀B样条离散点的加密与平滑
离散点的预处理是点云网格化很关键的一步,主要就是离散点的平滑、孔洞修补;本文是基于非均匀B样条基函数进行离散点云的加密和平滑的,一下为初步实现结果。
算法步骤:
1、数据点分割投影
将三维数据点投影到二维平面上,进行数据排序,得到m*n矩阵形式的数据点(当然这种方法有一定的弊端)。
2、非均匀双三次B样条曲线曲面的拟合
a、数据点的参数化;b、节点矢量的计算;c、计算B样条基函数 N(u);d、控制点计算;e、曲线曲面上加密点计算。
细节:
利用累计弦长计算参数化结果。
利用上面方法计算节点矢量U。
利用上面方法计算B样条基函数N(u)。
利用上面方法计算曲线上的数据点 p(u)。
曲面是在曲线的基础上加了一个维度,曲面点计算公式如下:
运行结果:
图1
图2
图3