1、点云两种保存方式
// 两种都是pcl::PCDWriter()函数的封装
pcl::PCDWriter writer;
writer.write("test.pcd",*cloud);
// 读写快速 不可以用记事本打开
pcl::io::savePCDFileASCII("test.pcd",*cloud);
// 读写慢 可以用记事本打开
pcl::io::savePCDFileBinary("test.pcd",*cloud);
2、常用点云滤波器
直通滤波器:过滤掉xyz轴指定范围内的点云;体素滤波器:相当于降采样,一个体素只保留一个点云,留下的点云体素内点云的重心。与随机下采样相比,虽然效率没有那么高,但可以在保证减少点云的同时最大的保存点云的形状特性;
统计滤波器:对去噪有很好的效果,速度慢。计算每个点与其最近的k个点的平均距离,所有点云的距离构成高斯分布,计算均值和标准差,剔除n个标准差范围外的点;
半径滤波器:指定半径内指定点云个数阈值,大于阈值的留下,小于阈值的删掉。对零散噪声点去除比较好,只考虑局部环境,对小连通区域产生的噪声不友好,速度快;
条件滤波器:可以一次性删除满足对输入点云设定的一个或多个条件指标的所有的数据点,用户需提供条件;