StatisticalOutlierRemoval
class pcl: :StatisticalOutlierRemoval< PointT >
类 StatisticalOutlierRemoval ,稀疏离群点移除方法, 通过对查询点与邻域点集之间的距离统计判断来过滤离群点 :对每个点,我们计算它到它的所有临近点的平均距离。假设得到的结果是一个高斯分布,其形状由均值和标准差决定,平均距离在标准范围(由全局距离平均值和方差定义〉之外的点,可被定义为离群点并可从数据集中去除掉。
关键成员函数
- void setMeanK (int nr_k)
设置用于计算平均距离估计时用的邻域点的数量 nr_k。
- void setStddevMulThresh (double std_mul)
设置标准差倍数阈值 std_mul ,点云中所有点与其邻域的距离大于 μ ±σ• std_mul 则被认为是离群点,其中 μ 代表估计的平均距离, σ 代表标准差 。
#include <iostream>
#include <pcl/io/pcd_io.h>
#include <pcl/point_types.h>
#include <pcl/filters/statistical_outlier_removal.h>
int
main (int argc, char** argv)
{
pcl::PointCloud<pcl::PointXYZ>::Ptr cloud (new pcl::PointCloud<pcl::PointXYZ>);
pcl::PointCloud<pcl::PointX