40 #ifndef PCL_GPU_SEEDED_HUE_SEGMENTATION_H_
41 #define PCL_GPU_SEEDED_HUE_SEGMENTATION_H_
43 #include <pcl/point_types.h>
44 #include <pcl/point_cloud.h>
45 #include <pcl/PointIndices.h>
46 #include <pcl/pcl_macros.h>
47 #include <pcl/gpu/octree/octree.hpp>
48 #include <pcl/gpu/containers/device_array.hpp>
58 PointIndices &clusters_in,
59 PointIndices &clusters_out,
60 float delta_hue = 0.0);
138 virtual std::string
getClassName ()
const {
return (
"gpu::SeededHueSegmentation"); }
151 #endif //PCL_GPU_SEEDED_HUE_SEGMENTATION_H_
boost::shared_ptr< PointCloud< pcl::PointXYZ > > Ptr
void setClusterTolerance(double tolerance)
Set the spatial cluster tolerance as a measure in the L2 Euclidean space.
void setDeltaHue(float delta_hue)
Set the tollerance on the hue.
PointCloudHostPtr host_cloud_
the original cloud the Host
This file defines compatibility wrappers for low level I/O functions.
boost::shared_ptr< Octree > Ptr
Types.
PointIndices::Ptr PointIndicesPtr
std::vector< int > indices
GPUTreePtr getSearchMethod()
Get a pointer to the search method used.
Octree implementation on GPU.
bool comparePointClusters(const pcl::PointIndices &a, const pcl::PointIndices &b)
Sort clusters method (for std::sort).
GPUTreePtr tree_
A pointer to the spatial search object.
SeededHueSegmentation()
Empty constructor.
boost::shared_ptr< const PointCloud< pcl::PointXYZ > > ConstPtr
A point structure representing Euclidean xyz coordinates.
pcl::gpu::Octree::PointCloud CloudDevice
void setSearchMethod(const GPUTreePtr &tree)
Provide a pointer to the search object.
float delta_hue_
The allowed difference on the hue.
PointCloudHost::ConstPtr PointCloudHostConstPtr
void segment(PointIndices &indices_in, PointIndices &indices_out)
Cluster extraction in a PointCloud given by
boost::shared_ptr< ::pcl::PointIndices > Ptr
CloudDevice input_
the input cloud on the GPU
float getDeltaHue()
Get the tolerance on the hue.
pcl::gpu::Octree::Ptr GPUTreePtr
PointIndices::ConstPtr PointIndicesConstPtr
void setInput(CloudDevice input)
PointCloudHost::Ptr PointCloudHostPtr
void seededHueSegmentation(const boost::shared_ptr< pcl::PointCloud< pcl::PointXYZRGB > > &host_cloud_, const pcl::gpu::Octree::Ptr &tree, float tolerance, PointIndices &clusters_in, PointIndices &clusters_out, float delta_hue=0.0)
pcl::PointCloud< pcl::PointXYZ > PointCloudHost
virtual std::string getClassName() const
Class getName method.
void setHostCloud(PointCloudHostPtr host_cloud)
double getClusterTolerance()
Get the spatial cluster tolerance as a measure in the L2 Euclidean space.
boost::shared_ptr< ::pcl::PointIndices const > ConstPtr
double cluster_tolerance_
The spatial cluster tolerance as a measure in the L2 Euclidean space.