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

This class is used for storing, analyzing and manipulating votes obtained from ISM algorithm. More...

#include <pcl/recognition/implicit_shape_model.h>

Public Types

using Ptr = shared_ptr< ISMVoteList< PointT > >
 
using ConstPtr = shared_ptr< const ISMVoteList< PointT > >
 

Public Member Functions

 ISMVoteList ()
 Empty constructor with member variables initialization. More...
 
virtual ~ISMVoteList ()
 virtual descriptor. More...
 
void addVote (pcl::InterestPoint &in_vote, const PointT &vote_origin, int in_class)
 This method simply adds another vote to the list. More...
 
pcl::PointCloud< pcl::PointXYZRGB >::Ptr getColoredCloud (typename pcl::PointCloud< PointT >::Ptr cloud=0)
 Returns the colored cloud that consists of votes for center (blue points) and initial point cloud (if it was passed). More...
 
void findStrongestPeaks (std::vector< ISMPeak, Eigen::aligned_allocator< ISMPeak > > &out_peaks, int in_class_id, double in_non_maxima_radius, double in_sigma)
 This method finds the strongest peaks (points were density has most higher values). More...
 
double getDensityAtPoint (const PointT &point, double sigma_dist)
 Returns the density at the specified point. More...
 
unsigned int getNumberOfVotes ()
 This method simply returns the number of votes. More...
 

Protected Member Functions

void validateTree ()
 this method is simply setting up the search tree. More...
 
Eigen::Vector3f shiftMean (const Eigen::Vector3f &snapPt, const double in_dSigmaDist)
 

Protected Attributes

pcl::PointCloud< pcl::InterestPoint >::Ptr votes_
 Stores all votes. More...
 
bool tree_is_valid_
 Signalizes if the tree is valid. More...
 
pcl::PointCloud< PointT >::Ptr votes_origins_
 Stores the origins of the votes. More...
 
std::vector< int > votes_class_
 Stores classes for which every single vote was cast. More...
 
pcl::KdTreeFLANN< pcl::InterestPoint >::Ptr tree_
 Stores the search tree. More...
 
std::vector< int > k_ind_
 Stores neighbours indices. More...
 
std::vector< float > k_sqr_dist_
 Stores square distances to the corresponding neighbours. More...
 

Detailed Description

template<typename PointT>
class pcl::features::ISMVoteList< PointT >

This class is used for storing, analyzing and manipulating votes obtained from ISM algorithm.

Definition at line 71 of file implicit_shape_model.h.

Member Typedef Documentation

◆ ConstPtr

template<typename PointT >
using pcl::features::ISMVoteList< PointT >::ConstPtr = shared_ptr<const ISMVoteList<PointT> >

Definition at line 76 of file implicit_shape_model.h.

◆ Ptr

template<typename PointT >
using pcl::features::ISMVoteList< PointT >::Ptr = shared_ptr<ISMVoteList<PointT> >

Definition at line 75 of file implicit_shape_model.h.

Constructor & Destructor Documentation

◆ ISMVoteList()

template<typename PointT >
pcl::features::ISMVoteList< PointT >::ISMVoteList

Empty constructor with member variables initialization.

Definition at line 52 of file implicit_shape_model.hpp.

◆ ~ISMVoteList()

template<typename PointT >
pcl::features::ISMVoteList< PointT >::~ISMVoteList
virtual

virtual descriptor.

Definition at line 64 of file implicit_shape_model.hpp.

Member Function Documentation

◆ addVote()

template<typename PointT >
void pcl::features::ISMVoteList< PointT >::addVote ( pcl::InterestPoint in_vote,
const PointT vote_origin,
int  in_class 
)

This method simply adds another vote to the list.

Parameters
[in]in_votevote to add
[in]vote_originorigin of the added vote
[in]in_classclass for which this vote is cast

Definition at line 76 of file implicit_shape_model.hpp.

Referenced by pcl::ism::ImplicitShapeModelEstimation< FeatureSize, PointT, NormalT >::findObjects().

◆ findStrongestPeaks()

template<typename PointT >
void pcl::features::ISMVoteList< PointT >::findStrongestPeaks ( std::vector< ISMPeak, Eigen::aligned_allocator< ISMPeak > > &  out_peaks,
int  in_class_id,
double  in_non_maxima_radius,
double  in_sigma 
)

This method finds the strongest peaks (points were density has most higher values).

It is based on the non maxima supression principles.

Parameters
[out]out_peaksit will contain the strongest peaks
[in]in_class_idclass of interest for which peaks are evaluated
[in]in_non_maxima_radiusnon maxima supression radius. The shapes radius is recommended for this value.
in_sigma

Definition at line 127 of file implicit_shape_model.hpp.

References pcl::ISMPeak::class_id, and pcl::ISMPeak::density.

◆ getColoredCloud()

template<typename PointT >
pcl::PointCloud< pcl::PointXYZRGB >::Ptr pcl::features::ISMVoteList< PointT >::getColoredCloud ( typename pcl::PointCloud< PointT >::Ptr  cloud = 0)

Returns the colored cloud that consists of votes for center (blue points) and initial point cloud (if it was passed).

Parameters
[in]cloudcloud that needs to be merged with votes for visualizing.

Definition at line 88 of file implicit_shape_model.hpp.

References pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::points, pcl::PointCloud< PointT >::size(), and pcl::PointCloud< PointT >::width.

◆ getDensityAtPoint()

template<typename PointT >
double pcl::features::ISMVoteList< PointT >::getDensityAtPoint ( const PointT point,
double  sigma_dist 
)

Returns the density at the specified point.

Parameters
[in]pointpoint of interest
[in]sigma_dist

Definition at line 269 of file implicit_shape_model.hpp.

◆ getNumberOfVotes()

template<typename PointT >
unsigned int pcl::features::ISMVoteList< PointT >::getNumberOfVotes

This method simply returns the number of votes.

Definition at line 294 of file implicit_shape_model.hpp.

◆ shiftMean()

template<typename PointT >
Eigen::Vector3f pcl::features::ISMVoteList< PointT >::shiftMean ( const Eigen::Vector3f &  snapPt,
const double  in_dSigmaDist 
)
protected

Definition at line 242 of file implicit_shape_model.hpp.

◆ validateTree()

template<typename PointT >
void pcl::features::ISMVoteList< PointT >::validateTree
protected

this method is simply setting up the search tree.

Definition at line 227 of file implicit_shape_model.hpp.

Member Data Documentation

◆ k_ind_

template<typename PointT >
std::vector<int> pcl::features::ISMVoteList< PointT >::k_ind_
protected

Stores neighbours indices.

Definition at line 147 of file implicit_shape_model.h.

◆ k_sqr_dist_

template<typename PointT >
std::vector<float> pcl::features::ISMVoteList< PointT >::k_sqr_dist_
protected

Stores square distances to the corresponding neighbours.

Definition at line 150 of file implicit_shape_model.h.

◆ tree_

template<typename PointT >
pcl::KdTreeFLANN<pcl::InterestPoint>::Ptr pcl::features::ISMVoteList< PointT >::tree_
protected

Stores the search tree.

Definition at line 144 of file implicit_shape_model.h.

◆ tree_is_valid_

template<typename PointT >
bool pcl::features::ISMVoteList< PointT >::tree_is_valid_
protected

Signalizes if the tree is valid.

Definition at line 135 of file implicit_shape_model.h.

◆ votes_

template<typename PointT >
pcl::PointCloud<pcl::InterestPoint>::Ptr pcl::features::ISMVoteList< PointT >::votes_
protected

Stores all votes.

Definition at line 132 of file implicit_shape_model.h.

◆ votes_class_

template<typename PointT >
std::vector<int> pcl::features::ISMVoteList< PointT >::votes_class_
protected

Stores classes for which every single vote was cast.

Definition at line 141 of file implicit_shape_model.h.

◆ votes_origins_

template<typename PointT >
pcl::PointCloud<PointT>::Ptr pcl::features::ISMVoteList< PointT >::votes_origins_
protected

Stores the origins of the votes.

Definition at line 138 of file implicit_shape_model.h.


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