#include<pcl/ModelCoefficients.h>#include<pcl/point_types.h>#include<pcl/io/pcd_io.h>#include<pcl/filters/extract_indices.h>#include<pcl/filters/voxel_grid.h>#include<pcl/features/normal_3d.h>#include<pcl/kdtree/kdtree.h>#include<pcl/sample_consensus/method_types.h>#include<pcl/sample_consensus/model_types.h>#include<pcl/segmentation/sac_segmentation.h>#include<pcl/segmentation/extract_clusters.h>#include<pcl/visualization/pcl_visualizer.h>intmain(int argc,char** argv){
// Read in the cloud data
pcl::PCDReader reader;
pcl::PointCloud<pcl::PointXYZ>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZ>),cloud_f(new pcl::PointCloud<pcl::PointXYZ>);
reader.read("C:\\table_scene_lms400.pcd",*cloud);
std::cout <<"PointCloud before filtering has: "<< cloud->size()<<" data points."<< std::endl;//*// Create the filtering object: downsample the dataset using a leaf size of 1cm
pcl::VoxelGrid<pcl::PointXYZ> vg;// 体元
pcl::PointCloud<pcl::PointXYZ>::Ptr cloud_filtered(new pcl::PointCloud<pcl::PointXYZ>);
vg.setInputCloud(cloud)