目录
一、随机采样
1.算法原理及代码实现
见:[1]
2.软件实现
1、找到采样滤波的功能
2、选择随机采样并设置参数
remaing points
:采样后剩余的点数。
3.结果展示
采样前
采样后
二、空间采样
1.算法原理
在'spatial'
模式下,用户必须设置两点之间的最小距离。然后,CloudCompare将从原始云中拾取点,以便输出云中的任何点都不会比指定值更接近另一点。该值越大,保留的点数越少。
2.软件实现
1、找到采样滤波的功能
2、选择空间采样并设置参数
min space between points
:设置两点之间的最小距离,该值越大,保留的点数越少。
3.结果展示
采样前
采样后
三、八叉树采样(1)
1.算法原理及代码实现
'octree'
模式需要选择八叉树的细分级别,点云将在该细分级别内“简化”——在八叉树的每个体素单元中,保留距八叉树单元中心最近的点。
实现代码见:[2]
2.软件实现
1、找到采样滤波的功能
2、选择八叉树采样并设置相关参数
subbdivision level
:八叉树层级,级别越高,体素越小,保留点越多。- 在32位版本的CloudCompare中,八叉树最大层级为10,在64位版本中为21。
- 该下采样方法是用八叉树体素中心的最近邻点代替该体素单元格内所有的点。
3.结果展示
采样前
采样后
四、八叉树采样(2)
1.算法原理及代码实现
'Resample'
模式需要选择八叉树的细分级别,可以实现将点云在该细分级别内下采样——在八叉树的每个体素单元中,保留八叉树单元的中心点。
2.软件实现
1、找到八叉树重采样功能
2、设置采样点个数
- 设置采样点的个数
此方法创建一个新的点云,其中的点不一定与输入点云中的点在空间中的位置相同。因此,不可能将输入点云的各种特征(颜色、法线、标量值等)附加到输出点上。(所以采样后为纯白色)
3.结果展示
采样前
采样后
五、曲率采样
1.算法原理及代码实现
见:[3]
2.软件实现
1、计算表面曲率
2、找到采样滤波的功能
3、选择曲率采样并设置相关参数
- 参数为:曲率采样的采样率
3.结果展示
采样前
采样后
六、模型中采样点云
1.算法原理及代码实现
见:[4]
2.软件实现
可以指定要采样的点的总数(近似)或表面密度(每平方单位的点数)。该方法能够从原始网格导出法线和颜色信息(通过在每个三角形内插值这些信息)。因此,可以选择是否实际导出每个属性(如果可用)。
七、其他采样
CloudCompare中还有很多很多很多上采样和下采样的方法,这里不再一一列举。
八、相关链接
[1] PCL 随机采样
[2] PCL 基于八叉树的体素滤波
[3] PCL 法线空间采样
[4] Open3D 从mesh中采样点云