Point Cloud Library (PCL)  1.14.1-dev
List of all members | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
pcl::gpu::EuclideanClusterExtraction< PointT > Class Template Reference

EuclideanClusterExtraction represents a segmentation class for cluster extraction in an Euclidean sense, depending on pcl::gpu::octree More...

#include </__w/1/s/gpu/segmentation/include/pcl/gpu/segmentation/gpu_extract_clusters.h>

+ Collaboration diagram for pcl::gpu::EuclideanClusterExtraction< PointT >:

Public Types

using PointCloudHost = pcl::PointCloud< PointT >
 
using PointCloudHostPtr = typename PointCloudHost::Ptr
 
using PointCloudHostConstPtr = typename PointCloudHost::ConstPtr
 
using PointIndicesPtr = PointIndices::Ptr
 
using PointIndicesConstPtr = PointIndices::ConstPtr
 
using GPUTree = pcl::gpu::Octree
 
using GPUTreePtr = pcl::gpu::Octree::Ptr
 
using CloudDevice = pcl::gpu::Octree::PointCloud
 

Public Member Functions

 EuclideanClusterExtraction ()=default
 Empty constructor. More...
 
virtual ~EuclideanClusterExtraction ()=default
 Default virtual destructor. More...
 
void setSearchMethod (GPUTreePtr &tree)
 the destructor More...
 
GPUTreePtr getSearchMethod ()
 Get a pointer to the search method used. More...
 
void setClusterTolerance (double tolerance)
 Set the spatial cluster tolerance as a measure in the L2 Euclidean space. More...
 
double getClusterTolerance ()
 Get the spatial cluster tolerance as a measure in the L2 Euclidean space. More...
 
void setMinClusterSize (int min_cluster_size)
 Set the minimum number of points that a cluster needs to contain in order to be considered valid. More...
 
int getMinClusterSize ()
 Get the minimum number of points that a cluster needs to contain in order to be considered valid. More...
 
void setMaxClusterSize (int max_cluster_size)
 Set the maximum number of points that a cluster needs to contain in order to be considered valid. More...
 
int getMaxClusterSize ()
 Get the maximum number of points that a cluster needs to contain in order to be considered valid. More...
 
void setInput (CloudDevice input)
 
void setHostCloud (PointCloudHostPtr host_cloud)
 
void extract (std::vector< pcl::PointIndices > &clusters)
 extract clusters of a PointCloud given by <setInputCloud(), setIndices()> More...
 

Protected Member Functions

virtual std::string getClassName () const
 Class getName method. More...
 

Protected Attributes

CloudDevice input_
 the input cloud on the GPU More...
 
PointCloudHostPtr host_cloud_
 the original cloud the Host More...
 
GPUTreePtr tree_
 A pointer to the spatial search object. More...
 
double cluster_tolerance_ {0.0}
 The spatial cluster tolerance as a measure in the L2 Euclidean space. More...
 
int min_pts_per_cluster_ {1}
 The minimum number of points that a cluster needs to contain in order to be considered valid (default = 1). More...
 
int max_pts_per_cluster_ {std::numeric_limits<int>::max()}
 The maximum number of points that a cluster needs to contain in order to be considered valid (default = MAXINT). More...
 

Detailed Description

template<typename PointT>
class pcl::gpu::EuclideanClusterExtraction< PointT >

EuclideanClusterExtraction represents a segmentation class for cluster extraction in an Euclidean sense, depending on pcl::gpu::octree

Author
Koen Buys, Radu Bogdan Rusu

Definition at line 66 of file gpu_extract_clusters.h.

Member Typedef Documentation

◆ CloudDevice

Definition at line 78 of file gpu_extract_clusters.h.

◆ GPUTree

template<typename PointT >
using pcl::gpu::EuclideanClusterExtraction< PointT >::GPUTree = pcl::gpu::Octree

Definition at line 75 of file gpu_extract_clusters.h.

◆ GPUTreePtr

Definition at line 76 of file gpu_extract_clusters.h.

◆ PointCloudHost

Definition at line 68 of file gpu_extract_clusters.h.

◆ PointCloudHostConstPtr

Definition at line 70 of file gpu_extract_clusters.h.

◆ PointCloudHostPtr

template<typename PointT >
using pcl::gpu::EuclideanClusterExtraction< PointT >::PointCloudHostPtr = typename PointCloudHost::Ptr

Definition at line 69 of file gpu_extract_clusters.h.

◆ PointIndicesConstPtr

Definition at line 73 of file gpu_extract_clusters.h.

◆ PointIndicesPtr

Definition at line 72 of file gpu_extract_clusters.h.

Constructor & Destructor Documentation

◆ EuclideanClusterExtraction()

template<typename PointT >
pcl::gpu::EuclideanClusterExtraction< PointT >::EuclideanClusterExtraction ( )
default

Empty constructor.

◆ ~EuclideanClusterExtraction()

template<typename PointT >
virtual pcl::gpu::EuclideanClusterExtraction< PointT >::~EuclideanClusterExtraction ( )
virtualdefault

Default virtual destructor.

Member Function Documentation

◆ extract()

template<typename PointT >
void pcl::gpu::EuclideanClusterExtraction< PointT >::extract ( std::vector< pcl::PointIndices > &  clusters)

extract clusters of a PointCloud given by <setInputCloud(), setIndices()>

Parameters
clustersthe resultant point clusters

Definition at line 189 of file gpu_extract_clusters.hpp.

◆ getClassName()

template<typename PointT >
virtual std::string pcl::gpu::EuclideanClusterExtraction< PointT >::getClassName ( ) const
inlineprotectedvirtual

Class getName method.

Definition at line 206 of file gpu_extract_clusters.h.

◆ getClusterTolerance()

template<typename PointT >
double pcl::gpu::EuclideanClusterExtraction< PointT >::getClusterTolerance ( )
inline

Get the spatial cluster tolerance as a measure in the L2 Euclidean space.

Definition at line 124 of file gpu_extract_clusters.h.

References pcl::gpu::EuclideanClusterExtraction< PointT >::cluster_tolerance_.

◆ getMaxClusterSize()

template<typename PointT >
int pcl::gpu::EuclideanClusterExtraction< PointT >::getMaxClusterSize ( )
inline

Get the maximum number of points that a cluster needs to contain in order to be considered valid.

Definition at line 160 of file gpu_extract_clusters.h.

References pcl::gpu::EuclideanClusterExtraction< PointT >::max_pts_per_cluster_.

◆ getMinClusterSize()

template<typename PointT >
int pcl::gpu::EuclideanClusterExtraction< PointT >::getMinClusterSize ( )
inline

Get the minimum number of points that a cluster needs to contain in order to be considered valid.

Definition at line 142 of file gpu_extract_clusters.h.

References pcl::gpu::EuclideanClusterExtraction< PointT >::min_pts_per_cluster_.

◆ getSearchMethod()

template<typename PointT >
GPUTreePtr pcl::gpu::EuclideanClusterExtraction< PointT >::getSearchMethod ( )
inline

Get a pointer to the search method used.

Todo:
fix this for a generic search tree

Definition at line 106 of file gpu_extract_clusters.h.

References pcl::gpu::EuclideanClusterExtraction< PointT >::tree_.

◆ setClusterTolerance()

template<typename PointT >
void pcl::gpu::EuclideanClusterExtraction< PointT >::setClusterTolerance ( double  tolerance)
inline

Set the spatial cluster tolerance as a measure in the L2 Euclidean space.

Parameters
tolerancethe spatial cluster tolerance as a measure in the L2 Euclidean space

Definition at line 116 of file gpu_extract_clusters.h.

References pcl::gpu::EuclideanClusterExtraction< PointT >::cluster_tolerance_.

◆ setHostCloud()

template<typename PointT >
void pcl::gpu::EuclideanClusterExtraction< PointT >::setHostCloud ( PointCloudHostPtr  host_cloud)
inline

◆ setInput()

template<typename PointT >
void pcl::gpu::EuclideanClusterExtraction< PointT >::setInput ( CloudDevice  input)
inline

◆ setMaxClusterSize()

template<typename PointT >
void pcl::gpu::EuclideanClusterExtraction< PointT >::setMaxClusterSize ( int  max_cluster_size)
inline

Set the maximum number of points that a cluster needs to contain in order to be considered valid.

Parameters
max_cluster_sizethe maximum cluster size

Definition at line 152 of file gpu_extract_clusters.h.

References pcl::gpu::EuclideanClusterExtraction< PointT >::max_pts_per_cluster_.

◆ setMinClusterSize()

template<typename PointT >
void pcl::gpu::EuclideanClusterExtraction< PointT >::setMinClusterSize ( int  min_cluster_size)
inline

Set the minimum number of points that a cluster needs to contain in order to be considered valid.

Parameters
min_cluster_sizethe minimum cluster size

Definition at line 134 of file gpu_extract_clusters.h.

References pcl::gpu::EuclideanClusterExtraction< PointT >::min_pts_per_cluster_.

◆ setSearchMethod()

template<typename PointT >
void pcl::gpu::EuclideanClusterExtraction< PointT >::setSearchMethod ( GPUTreePtr tree)
inline

the destructor

Provide a pointer to the search object.

Parameters
treea pointer to the spatial search object.

Definition at line 97 of file gpu_extract_clusters.h.

References pcl::gpu::EuclideanClusterExtraction< PointT >::tree_.

Member Data Documentation

◆ cluster_tolerance_

template<typename PointT >
double pcl::gpu::EuclideanClusterExtraction< PointT >::cluster_tolerance_ {0.0}
protected

The spatial cluster tolerance as a measure in the L2 Euclidean space.

Definition at line 194 of file gpu_extract_clusters.h.

Referenced by pcl::gpu::EuclideanClusterExtraction< PointT >::getClusterTolerance(), and pcl::gpu::EuclideanClusterExtraction< PointT >::setClusterTolerance().

◆ host_cloud_

template<typename PointT >
PointCloudHostPtr pcl::gpu::EuclideanClusterExtraction< PointT >::host_cloud_
protected

the original cloud the Host

Definition at line 188 of file gpu_extract_clusters.h.

Referenced by pcl::gpu::EuclideanClusterExtraction< PointT >::setHostCloud().

◆ input_

template<typename PointT >
CloudDevice pcl::gpu::EuclideanClusterExtraction< PointT >::input_
protected

the input cloud on the GPU

Definition at line 185 of file gpu_extract_clusters.h.

Referenced by pcl::gpu::EuclideanClusterExtraction< PointT >::setInput().

◆ max_pts_per_cluster_

template<typename PointT >
int pcl::gpu::EuclideanClusterExtraction< PointT >::max_pts_per_cluster_ {std::numeric_limits<int>::max()}
protected

The maximum number of points that a cluster needs to contain in order to be considered valid (default = MAXINT).

Definition at line 202 of file gpu_extract_clusters.h.

Referenced by pcl::gpu::EuclideanClusterExtraction< PointT >::getMaxClusterSize(), and pcl::gpu::EuclideanClusterExtraction< PointT >::setMaxClusterSize().

◆ min_pts_per_cluster_

template<typename PointT >
int pcl::gpu::EuclideanClusterExtraction< PointT >::min_pts_per_cluster_ {1}
protected

The minimum number of points that a cluster needs to contain in order to be considered valid (default = 1).

Definition at line 198 of file gpu_extract_clusters.h.

Referenced by pcl::gpu::EuclideanClusterExtraction< PointT >::getMinClusterSize(), and pcl::gpu::EuclideanClusterExtraction< PointT >::setMinClusterSize().

◆ tree_

template<typename PointT >
GPUTreePtr pcl::gpu::EuclideanClusterExtraction< PointT >::tree_
protected

The documentation for this class was generated from the following files: