region_growing_rgb_segmentation.cpp
Go to the documentation of this file.
00001 #include <iostream>
00002 #include <vector>
00003 #include <pcl/point_types.h>
00004 #include <pcl/io/pcd_io.h>
00005 #include <pcl/search/search.h>
00006 #include <pcl/search/kdtree.h>
00007 #include <pcl/visualization/cloud_viewer.h>
00008 #include <pcl/filters/passthrough.h>
00009 #include <pcl/segmentation/region_growing_rgb.h>
00010 
00011 int
00012 main (int argc, char** argv)
00013 {
00014   pcl::search::Search <pcl::PointXYZRGB>::Ptr tree = boost::shared_ptr<pcl::search::Search<pcl::PointXYZRGB> > (new pcl::search::KdTree<pcl::PointXYZRGB>);
00015 
00016   pcl::PointCloud <pcl::PointXYZRGB>::Ptr cloud (new pcl::PointCloud <pcl::PointXYZRGB>);
00017   if ( pcl::io::loadPCDFile <pcl::PointXYZRGB> ("region_growing_rgb_tutorial.pcd", *cloud) == -1 )
00018   {
00019     std::cout << "Cloud reading failed." << std::endl;
00020     return (-1);
00021   }
00022 
00023   pcl::IndicesPtr indices (new std::vector <int>);
00024   pcl::PassThrough<pcl::PointXYZRGB> pass;
00025   pass.setInputCloud (cloud);
00026   pass.setFilterFieldName ("z");
00027   pass.setFilterLimits (0.0, 1.0);
00028   pass.filter (*indices);
00029 
00030   pcl::RegionGrowingRGB<pcl::PointXYZRGB> reg;
00031   reg.setInputCloud (cloud);
00032   reg.setIndices (indices);
00033   reg.setSearchMethod (tree);
00034   reg.setDistanceThreshold (10);
00035   reg.setPointColorThreshold (6);
00036   reg.setRegionColorThreshold (5);
00037   reg.setMinClusterSize (600);
00038 
00039   std::vector <pcl::PointIndices> clusters;
00040   reg.extract (clusters);
00041 
00042   pcl::PointCloud <pcl::PointXYZRGB>::Ptr colored_cloud = reg.getColoredCloud ();
00043   pcl::visualization::CloudViewer viewer ("Cluster viewer");
00044   viewer.showCloud (colored_cloud);
00045   while (!viewer.wasStopped ())
00046   {
00047     boost::this_thread::sleep (boost::posix_time::microseconds (100));
00048   }
00049 
00050   return (0);
00051 }


pcl
Author(s): Open Perception
autogenerated on Wed Aug 26 2015 15:32:03