point_cloud_library / 1.12.1 / classpcl_1_1_euclidean_cluster_extraction.html /

EuclideanClusterExtraction represents a segmentation class for cluster extraction in an Euclidean sense. More...

#include <pcl/segmentation/extract_clusters.h>

Public Types

using PointCloud = pcl::PointCloud< PointT >
using PointCloudPtr = typename PointCloud::Ptr
using PointCloudConstPtr = typename PointCloud::ConstPtr
using KdTree = pcl::search::Search< PointT >
using KdTreePtr = typename KdTree::Ptr
using PointIndicesPtr = PointIndices::Ptr
using PointIndicesConstPtr = PointIndices::ConstPtr
- Public Types inherited from pcl::PCLBase< PointT >
using PointCloud = pcl::PointCloud< PointT >
using PointCloudPtr = typename PointCloud::Ptr
using PointCloudConstPtr = typename PointCloud::ConstPtr
using PointIndicesPtr = PointIndices::Ptr
using PointIndicesConstPtr = PointIndices::ConstPtr

Public Member Functions

EuclideanClusterExtraction ()
Empty constructor. More...
void setSearchMethod (const KdTreePtr &tree)
Provide a pointer to the search object. More...
KdTreePtr getSearchMethod () const
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 () const
Get the spatial cluster tolerance as a measure in the L2 Euclidean space. More...
void setMinClusterSize (pcl::uindex_t min_cluster_size)
Set the minimum number of points that a cluster needs to contain in order to be considered valid. More...
pcl::uindex_t getMinClusterSize () const
Get the minimum number of points that a cluster needs to contain in order to be considered valid. More...
void setMaxClusterSize (pcl::uindex_t max_cluster_size)
Set the maximum number of points that a cluster needs to contain in order to be considered valid. More...
pcl::uindex_t getMaxClusterSize () const
Get the maximum number of points that a cluster needs to contain in order to be considered valid. More...
void extract (std::vector< PointIndices > &clusters)
Cluster extraction in a PointCloud given by <setInputCloud (), setIndices ()> More...
- Public Member Functions inherited from pcl::PCLBase< PointT >
PCLBase ()
Empty constructor. More...
PCLBase (const PCLBase &base)
Copy constructor. More...
virtual ~PCLBase ()=default
Destructor. More...
virtual void setInputCloud (const PointCloudConstPtr &cloud)
Provide a pointer to the input dataset. More...
const PointCloudConstPtr getInputCloud () const
Get a pointer to the input point cloud dataset. More...
virtual void setIndices (const IndicesPtr &indices)
Provide a pointer to the vector of indices that represents the input data. More...
virtual void setIndices (const IndicesConstPtr &indices)
Provide a pointer to the vector of indices that represents the input data. More...
virtual void setIndices (const PointIndicesConstPtr &indices)
Provide a pointer to the vector of indices that represents the input data. More...
virtual void setIndices (std::size_t row_start, std::size_t col_start, std::size_t nb_rows, std::size_t nb_cols)
Set the indices for the points laying within an interest region of the point cloud. More...
IndicesPtr getIndices ()
Get a pointer to the vector of indices used. More...
const IndicesConstPtr getIndices () const
Get a pointer to the vector of indices used. More...
const PointT & operator[] (std::size_t pos) const
Override PointCloud operator[] to shorten code. More...

Protected Member Functions

virtual std::string getClassName () const
Class getName method. More...
bool initCompute ()
This method should get called before starting the actual computation. More...
bool deinitCompute ()
This method should get called after finishing the actual computation. More...
- Protected Member Functions inherited from pcl::PCLBase< PointT >
bool initCompute ()
This method should get called before starting the actual computation. More...
bool deinitCompute ()
This method should get called after finishing the actual computation. More...

Protected Attributes

KdTreePtr tree_
A pointer to the spatial search object. More...
double cluster_tolerance_
The spatial cluster tolerance as a measure in the L2 Euclidean space. More...
pcl::uindex_t min_pts_per_cluster_
The minimum number of points that a cluster needs to contain in order to be considered valid (default = 1). More...
pcl::uindex_t max_pts_per_cluster_
The maximum number of points that a cluster needs to contain in order to be considered valid (default = MAXINT). More...
PointCloudConstPtr input_
The input point cloud dataset. More...
IndicesPtr indices_
A pointer to the vector of point indices to use. More...
- Protected Attributes inherited from pcl::PCLBase< PointT >
PointCloudConstPtr input_
The input point cloud dataset. More...
IndicesPtr indices_
A pointer to the vector of point indices to use. More...
bool use_indices_
Set to true if point indices are used. More...
bool fake_indices_
If no set of indices are given, we construct a set of fake indices that mimic the input PointCloud. More...

Detailed Description

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

EuclideanClusterExtraction represents a segmentation class for cluster extraction in an Euclidean sense.

Author
Radu Bogdan Rusu

Definition at line 325 of file extract_clusters.h.

Member Typedef Documentation

KdTree

template<typename PointT >
using pcl::EuclideanClusterExtraction< PointT >::KdTree = pcl::search::Search<PointT>

Definition at line 334 of file extract_clusters.h.

KdTreePtr

template<typename PointT >
using pcl::EuclideanClusterExtraction< PointT >::KdTreePtr = typename KdTree::Ptr

Definition at line 335 of file extract_clusters.h.

PointCloud

template<typename PointT >
using pcl::EuclideanClusterExtraction< PointT >::PointCloud = pcl::PointCloud<PointT>

Definition at line 330 of file extract_clusters.h.

PointCloudConstPtr

template<typename PointT >
using pcl::EuclideanClusterExtraction< PointT >::PointCloudConstPtr = typename PointCloud::ConstPtr

Definition at line 332 of file extract_clusters.h.

PointCloudPtr

template<typename PointT >
using pcl::EuclideanClusterExtraction< PointT >::PointCloudPtr = typename PointCloud::Ptr

Definition at line 331 of file extract_clusters.h.

PointIndicesConstPtr

Definition at line 338 of file extract_clusters.h.

PointIndicesPtr

Definition at line 337 of file extract_clusters.h.

Constructor & Destructor Documentation

EuclideanClusterExtraction()

template<typename PointT >
pcl::EuclideanClusterExtraction< PointT >::EuclideanClusterExtraction ( )
inline

Empty constructor.

Definition at line 342 of file extract_clusters.h.

Member Function Documentation

deinitCompute()

template<typename PointT >
bool pcl::PCLBase< PointT >::deinitCompute
protected

This method should get called after finishing the actual computation.

Definition at line 174 of file pcl_base.hpp.

extract()

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

Cluster extraction in a PointCloud given by <setInputCloud (), setIndices ()>

Parameters
[out] clusters the resultant point clusters

Definition at line 228 of file extract_clusters.hpp.

References pcl::gpu::comparePointClusters(), and pcl::extractEuclideanClusters().

Referenced by pcl::people::GroundBasedPeopleDetectionApp< PointT >::compute().

getClassName()

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

Class getName method.

Definition at line 440 of file extract_clusters.h.

getClusterTolerance()

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

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

Definition at line 377 of file extract_clusters.h.

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

getMaxClusterSize()

template<typename PointT >
pcl::uindex_t pcl::EuclideanClusterExtraction< PointT >::getMaxClusterSize ( ) const
inline

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

Definition at line 409 of file extract_clusters.h.

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

getMinClusterSize()

template<typename PointT >
pcl::uindex_t pcl::EuclideanClusterExtraction< PointT >::getMinClusterSize ( ) const
inline

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

Definition at line 393 of file extract_clusters.h.

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

getSearchMethod()

template<typename PointT >
KdTreePtr pcl::EuclideanClusterExtraction< PointT >::getSearchMethod ( ) const
inline

Get a pointer to the search method used.

Todo:
fix this for a generic search tree

Definition at line 361 of file extract_clusters.h.

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

initCompute()

template<typename PointT >
bool pcl::PCLBase< PointT >::initCompute
protected

This method should get called before starting the actual computation.

Internally, initCompute() does the following:

  • checks if an input dataset is given, and returns false otherwise
  • checks whether a set of input indices has been given. Returns true if yes.
  • if no input indices have been given, a fake set is created, which will be used until:
    • either a new set is given via setIndices(), or
    • a new cloud is given that has a different set of points. This will trigger an update on the set of fake indices

Definition at line 138 of file pcl_base.hpp.

setClusterTolerance()

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

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

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

Definition at line 370 of file extract_clusters.h.

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

Referenced by pcl::people::GroundBasedPeopleDetectionApp< PointT >::compute().

setMaxClusterSize()

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

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

Parameters
[in] max_cluster_size the maximum cluster size

Definition at line 402 of file extract_clusters.h.

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

Referenced by pcl::people::GroundBasedPeopleDetectionApp< PointT >::compute().

setMinClusterSize()

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

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

Parameters
[in] min_cluster_size the minimum cluster size

Definition at line 386 of file extract_clusters.h.

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

Referenced by pcl::people::GroundBasedPeopleDetectionApp< PointT >::compute().

setSearchMethod()

template<typename PointT >
void pcl::EuclideanClusterExtraction< PointT >::setSearchMethod ( const KdTreePtr & tree )
inline

Provide a pointer to the search object.

Parameters
[in] tree a pointer to the spatial search object.

Definition at line 352 of file extract_clusters.h.

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

Referenced by pcl::people::GroundBasedPeopleDetectionApp< PointT >::compute().

Member Data Documentation

cluster_tolerance_

template<typename PointT >
double pcl::EuclideanClusterExtraction< PointT >::cluster_tolerance_
protected

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

Definition at line 431 of file extract_clusters.h.

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

indices_

template<typename PointT >
IndicesPtr pcl::PCLBase< PointT >::indices_
protected

A pointer to the vector of point indices to use.

Definition at line 150 of file pcl_base.h.

input_

template<typename PointT >
PointCloudConstPtr pcl::PCLBase< PointT >::input_
protected

The input point cloud dataset.

Definition at line 147 of file pcl_base.h.

max_pts_per_cluster_

template<typename PointT >
pcl::uindex_t pcl::EuclideanClusterExtraction< PointT >::max_pts_per_cluster_
protected

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

Definition at line 437 of file extract_clusters.h.

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

min_pts_per_cluster_

template<typename PointT >
pcl::uindex_t pcl::EuclideanClusterExtraction< PointT >::min_pts_per_cluster_
protected

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

Definition at line 434 of file extract_clusters.h.

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

tree_

template<typename PointT >
KdTreePtr pcl::EuclideanClusterExtraction< PointT >::tree_
protected

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

© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_euclidean_cluster_extraction.html