基于某一分割算法提取点云中的一个子集。
pcl::ModelCoefficients::Ptr coefficients(new pcl::ModelCoefficients());
pcl::PointIndices::Ptr inliers(new pcl::PointIndices());
pcl::SACSegmentation<pcl::PointXYZ> seg; //创建分割对象
seg.setOptimizeCoefficients(true); //设置对估计的模型参数进行优化处理
seg.setModelType(pcl::SACMODEL_PLANE); //设置分割模型类别
seg.setMethodType(pcl::SAC_RANSAC); //设置用哪个随机参数估计方法
seg.setMaxIterations(1000); //设置最大迭代次数
seg.setDistanceThreshold(0.01); //设置判断是否为模型内点的距离阈值
pcl::ExtractIndices<pcl::PointXYZ> extract;
extract.setInputCloud(pointCloud_raw);
extract.setIndices(inliers);//设置分割后的内点为需要提取的点集
extract.setNegative(false); //设置提取内点而非外点
extract.filter(*pointCloud_filter);