Point Cloud Library (PCL)  1.14.0-dev
List of all members | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
pcl::tracking::PointCloudCoherence< PointInT > Class Template Referenceabstract

PointCloudCoherence is a base class to compute coherence between the two PointClouds. More...

#include <pcl/tracking/coherence.h>

+ Inheritance diagram for pcl::tracking::PointCloudCoherence< PointInT >:

Public Types

using Ptr = shared_ptr< PointCloudCoherence< PointInT > >
 
using ConstPtr = shared_ptr< const PointCloudCoherence< PointInT > >
 
using PointCloudIn = pcl::PointCloud< PointInT >
 
using PointCloudInPtr = typename PointCloudIn::Ptr
 
using PointCloudInConstPtr = typename PointCloudIn::ConstPtr
 
using PointCoherencePtr = typename PointCoherence< PointInT >::Ptr
 

Public Member Functions

 PointCloudCoherence ()
 Constructor. More...
 
virtual ~PointCloudCoherence ()=default
 Destructor. More...
 
void compute (const PointCloudInConstPtr &cloud, const IndicesConstPtr &indices, float &w_i)
 compute coherence between two pointclouds. More...
 
std::vector< PointCoherencePtrgetPointCoherences ()
 get a list of pcl::tracking::PointCoherence. More...
 
void setPointCoherences (std::vector< PointCoherencePtr > coherences)
 set a list of pcl::tracking::PointCoherence. More...
 
virtual bool initCompute ()
 This method should get called before starting the actual computation. More...
 
void addPointCoherence (PointCoherencePtr coherence)
 add a PointCoherence to the PointCloudCoherence. More...
 
virtual void setTargetCloud (const PointCloudInConstPtr &cloud)
 add a PointCoherence to the PointCloudCoherence. More...
 

Protected Member Functions

virtual void computeCoherence (const PointCloudInConstPtr &cloud, const IndicesConstPtr &indices, float &w_j)=0
 Abstract method to compute coherence. More...
 
double calcPointCoherence (PointInT &source, PointInT &target)
 
const std::string & getClassName () const
 Get a string representation of the name of this class. More...
 

Protected Attributes

std::string coherence_name_
 The coherence name. More...
 
PointCloudInConstPtr target_input_
 a pointer to target point cloud More...
 
std::vector< PointCoherencePtrpoint_coherences_
 a list of pointers to PointCoherence. More...
 

Detailed Description

template<typename PointInT>
class pcl::tracking::PointCloudCoherence< PointInT >

PointCloudCoherence is a base class to compute coherence between the two PointClouds.

Author
Ryohei Ueda

Definition at line 59 of file coherence.h.

Member Typedef Documentation

◆ ConstPtr

template<typename PointInT >
using pcl::tracking::PointCloudCoherence< PointInT >::ConstPtr = shared_ptr<const PointCloudCoherence<PointInT> >

Definition at line 62 of file coherence.h.

◆ PointCloudIn

template<typename PointInT >
using pcl::tracking::PointCloudCoherence< PointInT >::PointCloudIn = pcl::PointCloud<PointInT>

Definition at line 64 of file coherence.h.

◆ PointCloudInConstPtr

template<typename PointInT >
using pcl::tracking::PointCloudCoherence< PointInT >::PointCloudInConstPtr = typename PointCloudIn::ConstPtr

Definition at line 66 of file coherence.h.

◆ PointCloudInPtr

template<typename PointInT >
using pcl::tracking::PointCloudCoherence< PointInT >::PointCloudInPtr = typename PointCloudIn::Ptr

Definition at line 65 of file coherence.h.

◆ PointCoherencePtr

template<typename PointInT >
using pcl::tracking::PointCloudCoherence< PointInT >::PointCoherencePtr = typename PointCoherence<PointInT>::Ptr

Definition at line 68 of file coherence.h.

◆ Ptr

template<typename PointInT >
using pcl::tracking::PointCloudCoherence< PointInT >::Ptr = shared_ptr<PointCloudCoherence<PointInT> >

Definition at line 61 of file coherence.h.

Constructor & Destructor Documentation

◆ PointCloudCoherence()

template<typename PointInT >
pcl::tracking::PointCloudCoherence< PointInT >::PointCloudCoherence ( )
inline

Constructor.

Definition at line 70 of file coherence.h.

◆ ~PointCloudCoherence()

template<typename PointInT >
virtual pcl::tracking::PointCloudCoherence< PointInT >::~PointCloudCoherence ( )
virtualdefault

Destructor.

Member Function Documentation

◆ addPointCoherence()

template<typename PointInT >
void pcl::tracking::PointCloudCoherence< PointInT >::addPointCoherence ( PointCoherencePtr  coherence)
inline

add a PointCoherence to the PointCloudCoherence.

Parameters
coherencea pointer to PointCoherence.

Definition at line 106 of file coherence.h.

References pcl::tracking::PointCloudCoherence< PointInT >::point_coherences_.

◆ calcPointCoherence()

template<typename PointInT >
double pcl::tracking::PointCloudCoherence< PointInT >::calcPointCoherence ( PointInT &  source,
PointInT &  target 
)
inlineprotected

Definition at line 19 of file coherence.hpp.

◆ compute()

template<typename PointInT >
void pcl::tracking::PointCloudCoherence< PointInT >::compute ( const PointCloudInConstPtr cloud,
const IndicesConstPtr indices,
float &  w_i 
)
inline

compute coherence between two pointclouds.

Definition at line 48 of file coherence.hpp.

◆ computeCoherence()

template<typename PointInT >
virtual void pcl::tracking::PointCloudCoherence< PointInT >::computeCoherence ( const PointCloudInConstPtr cloud,
const IndicesConstPtr indices,
float &  w_j 
)
protectedpure virtual

◆ getClassName()

template<typename PointInT >
const std::string& pcl::tracking::PointCloudCoherence< PointInT >::getClassName ( ) const
inlineprotected

Get a string representation of the name of this class.

Definition at line 132 of file coherence.h.

References pcl::tracking::PointCloudCoherence< PointInT >::coherence_name_.

◆ getPointCoherences()

template<typename PointInT >
std::vector<PointCoherencePtr> pcl::tracking::PointCloudCoherence< PointInT >::getPointCoherences ( )
inline

◆ initCompute()

template<typename PointInT >
bool pcl::tracking::PointCloudCoherence< PointInT >::initCompute
virtual

This method should get called before starting the actual computation.

Reimplemented in pcl::tracking::NearestPairPointCloudCoherence< PointInT >, and pcl::tracking::ApproxNearestPairPointCloudCoherence< PointInT >.

Definition at line 36 of file coherence.hpp.

◆ setPointCoherences()

template<typename PointInT >
void pcl::tracking::PointCloudCoherence< PointInT >::setPointCoherences ( std::vector< PointCoherencePtr coherences)
inline

set a list of pcl::tracking::PointCoherence.

Parameters
coherencesa list of pcl::tracking::PointCoherence.

Definition at line 92 of file coherence.h.

References pcl::tracking::PointCloudCoherence< PointInT >::point_coherences_.

◆ setTargetCloud()

template<typename PointInT >
virtual void pcl::tracking::PointCloudCoherence< PointInT >::setTargetCloud ( const PointCloudInConstPtr cloud)
inlinevirtual

Member Data Documentation

◆ coherence_name_

template<typename PointInT >
std::string pcl::tracking::PointCloudCoherence< PointInT >::coherence_name_
protected

◆ point_coherences_

template<typename PointInT >
std::vector<PointCoherencePtr> pcl::tracking::PointCloudCoherence< PointInT >::point_coherences_
protected

◆ target_input_

template<typename PointInT >
PointCloudInConstPtr pcl::tracking::PointCloudCoherence< PointInT >::target_input_
protected

a pointer to target point cloud

Definition at line 141 of file coherence.h.

Referenced by pcl::tracking::PointCloudCoherence< PointInT >::setTargetCloud().


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