approx_nearest_pair_point_cloud_coherence.h
#ifndef PCL_TRACKING_APPROX_NEAREST_PAIR_POINT_CLOUD_COHERENCE_H_
#define PCL_TRACKING_APPROX_NEAREST_PAIR_POINT_CLOUD_COHERENCE_H_
#include <pcl/search/search.h>
#include <pcl/search/octree.h>
#include <pcl/tracking/nearest_pair_point_cloud_coherence.h>
namespace pcl
{
namespace tracking
{
/** \brief @b ApproxNearestPairPointCloudCoherence computes coherence between two pointclouds using the
approximate nearest point pairs.
* \author Ryohei Ueda
* \ingroup tracking
*/
template <typename PointInT>
class ApproxNearestPairPointCloudCoherence: public NearestPairPointCloudCoherence<PointInT>
{
public:
typedef typename NearestPairPointCloudCoherence<PointInT>::PointCoherencePtr PointCoherencePtr;
typedef typename NearestPairPointCloudCoherence<PointInT>::PointCloudInConstPtr PointCloudInConstPtr;
//using NearestPairPointCloudCoherence<PointInT>::search_;
using NearestPairPointCloudCoherence<PointInT>::maximum_distance_;
using NearestPairPointCloudCoherence<PointInT>::target_input_;
using NearestPairPointCloudCoherence<PointInT>::point_coherences_;
using NearestPairPointCloudCoherence<PointInT>::coherence_name_;
using NearestPairPointCloudCoherence<PointInT>::new_target_;
using NearestPairPointCloudCoherence<PointInT>::getClassName;
/** \brief empty constructor */
ApproxNearestPairPointCloudCoherence () :
NearestPairPointCloudCoherence<PointInT> (), search_ ()
{
coherence_name_ = "ApproxNearestPairPointCloudCoherence";
}
protected:
/** \brief This method should get called before starting the actual computation. */
virtual bool initCompute ();
/** \brief compute the nearest pairs and compute coherence using point_coherences_ */
virtual void
computeCoherence (const PointCloudInConstPtr &cloud, const IndicesConstPtr &indices, float &w_j);
typename boost::shared_ptr<pcl::search::Octree<PointInT> > search_;
};
}
}
#ifdef PCL_NO_PRECOMPILE
#include <pcl/tracking/impl/approx_nearest_pair_point_cloud_coherence.hpp>
#endif
#endif
pcl::tracking::NearestPairPointCloudCoherence
NearestPairPointCloudCoherence computes coherence between two pointclouds using the nearest point pai...
Definition: nearest_pair_point_cloud_coherence.h:18
pcl
Definition: convolution.h:45
pcl::tracking::ApproxNearestPairPointCloudCoherence::ApproxNearestPairPointCloudCoherence
ApproxNearestPairPointCloudCoherence()
empty constructor
Definition: approx_nearest_pair_point_cloud_coherence.h:31
pcl::tracking::PointCloudCoherence::coherence_name_
std::string coherence_name_
The coherence name.
Definition: coherence.h:120
pcl::tracking::ApproxNearestPairPointCloudCoherence
ApproxNearestPairPointCloudCoherence computes coherence between two pointclouds using the approximate...
Definition: approx_nearest_pair_point_cloud_coherence.h:17
pcl::tracking::NearestPairPointCloudCoherence::PointCoherencePtr
PointCloudCoherence< PointInT >::PointCoherencePtr PointCoherencePtr
Definition: nearest_pair_point_cloud_coherence.h:25
pcl::tracking::ApproxNearestPairPointCloudCoherence::PointCoherencePtr
NearestPairPointCloudCoherence< PointInT >::PointCoherencePtr PointCoherencePtr
Definition: approx_nearest_pair_point_cloud_coherence.h:20
pcl::tracking::ApproxNearestPairPointCloudCoherence::search_
boost::shared_ptr< pcl::search::Octree< PointInT > > search_
Definition: approx_nearest_pair_point_cloud_coherence.h:45
pcl::tracking::NearestPairPointCloudCoherence::PointCloudInConstPtr
PointCloudCoherence< PointInT >::PointCloudInConstPtr PointCloudInConstPtr
Definition: nearest_pair_point_cloud_coherence.h:26
pcl::IndicesConstPtr
boost::shared_ptr< const std::vector< int > > IndicesConstPtr
Definition: pcl_base.h:61
pcl::tracking::ApproxNearestPairPointCloudCoherence::initCompute
virtual bool initCompute()
This method should get called before starting the actual computation.
Definition: approx_nearest_pair_point_cloud_coherence.hpp:41
pcl::tracking::ApproxNearestPairPointCloudCoherence::computeCoherence
virtual void computeCoherence(const PointCloudInConstPtr &cloud, const IndicesConstPtr &indices, float &w_j)
compute the nearest pairs and compute coherence using point_coherences_
Definition: approx_nearest_pair_point_cloud_coherence.hpp:12
pcl::tracking::ApproxNearestPairPointCloudCoherence::PointCloudInConstPtr
NearestPairPointCloudCoherence< PointInT >::PointCloudInConstPtr PointCloudInConstPtr
Definition: approx_nearest_pair_point_cloud_coherence.h:21