Point Cloud Library (PCL) 1.15.1
Loading...
Searching...
No Matches
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.
virtual ~PointCloudCoherence ()=default
 Destructor.
void compute (const PointCloudInConstPtr &cloud, const IndicesConstPtr &indices, float &w_i)
 compute coherence between two pointclouds.
std::vector< PointCoherencePtrgetPointCoherences ()
 get a list of pcl::tracking::PointCoherence.
void setPointCoherences (std::vector< PointCoherencePtr > coherences)
 set a list of pcl::tracking::PointCoherence.
virtual bool initCompute ()
 This method should get called before starting the actual computation.
void addPointCoherence (PointCoherencePtr coherence)
 add a PointCoherence to the PointCloudCoherence.
virtual void setTargetCloud (const PointCloudInConstPtr &cloud)
 add a PointCoherence to the PointCloudCoherence.

Protected Member Functions

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

Protected Attributes

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

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.

References point_coherences_, and target_input_.

◆ ~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 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.

References point_coherences_.

◆ 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.

References computeCoherence(), getClassName(), and initCompute().

◆ 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

◆ getPointCoherences()

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

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

Definition at line 83 of file coherence.h.

References point_coherences_.

◆ initCompute()

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

◆ 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 point_coherences_.

◆ setTargetCloud()

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

Member Data Documentation

◆ coherence_name_

◆ point_coherences_

◆ target_input_


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