1 #ifndef PCL_TRACKING_COHERENCE_H_ 2 #define PCL_TRACKING_COHERENCE_H_ 4 #include <pcl/pcl_base.h> 16 template <
typename Po
intInT>
20 typedef boost::shared_ptr< PointCoherence<PointInT> >
Ptr;
21 typedef boost::shared_ptr< const PointCoherence<PointInT> >
ConstPtr;
35 compute (PointInT &source, PointInT &target);
50 inline const std::string&
59 template <
typename Po
intInT>
63 typedef boost::shared_ptr< PointCloudCoherence<PointInT> >
Ptr;
64 typedef boost::shared_ptr< const PointCloudCoherence<PointInT> >
ConstPtr;
83 inline std::vector<PointCoherencePtr>
90 setPointCoherences (std::vector<PointCoherencePtr> coherences) { point_coherences_ = coherences; }
93 virtual bool initCompute ();
99 addPointCoherence (PointCoherencePtr coherence) { point_coherences_.push_back (coherence); }
112 inline double calcPointCoherence (PointInT &source, PointInT &target);
115 inline const std::string&
133 #include <pcl/tracking/impl/coherence.hpp> PointCloudCoherence()
Constructor.
double compute(PointInT &source, PointInT &target)
compute coherence from the source point to the target point.
PointCoherence< PointInT >::Ptr PointCoherencePtr
PointCloudIn::Ptr PointCloudInPtr
PointCloudInConstPtr target_input_
a pointer to target point cloud
virtual double computeCoherence(PointInT &source, PointInT &target)=0
abstract method to calculate coherence.
boost::shared_ptr< PointCoherence< PointInT > > Ptr
const std::string & getClassName() const
Get a string representation of the name of this class.
pcl::PointCloud< PointInT > PointCloudIn
boost::shared_ptr< const PointCoherence< PointInT > > ConstPtr
std::string coherence_name_
The coherence name.
boost::shared_ptr< PointCloud< PointInT > > Ptr
std::vector< PointCoherencePtr > getPointCoherences()
get a list of pcl::tracking::PointCoherence.
boost::shared_ptr< const PointCloudCoherence< PointInT > > ConstPtr
void addPointCoherence(PointCoherencePtr coherence)
add a PointCoherence to the PointCloudCoherence.
PointCoherence()
empty constructor
PointCoherence is a base class to compute coherence between the two points.
void setPointCoherences(std::vector< PointCoherencePtr > coherences)
set a list of pcl::tracking::PointCoherence.
boost::shared_ptr< const PointCloud< PointInT > > ConstPtr
virtual ~PointCloudCoherence()
Destructor.
std::vector< PointCoherencePtr > point_coherences_
a list of pointers to PointCoherence.
PointCloudCoherence is a base class to compute coherence between the two PointClouds.
boost::shared_ptr< const std::vector< int > > IndicesConstPtr
virtual void setTargetCloud(const PointCloudInConstPtr &cloud)
add a PointCoherence to the PointCloudCoherence.
boost::shared_ptr< PointCloudCoherence< PointInT > > Ptr
std::string coherence_name_
The coherence name.
const std::string & getClassName() const
Get a string representation of the name of this class.
virtual ~PointCoherence()
empty distructor
PointCloudIn::ConstPtr PointCloudInConstPtr