3#include <pcl/tracking/coherence.h>
4#include <pcl/tracking/particle_filter.h>
5#include <pcl/tracking/tracking.h>
13template <
typename Po
intInT,
typename StateT>
89#ifdef PCL_NO_PRECOMPILE
90#include <pcl/tracking/impl/particle_filter_omp.hpp>
PointCloudConstPtr input_
The input point cloud dataset.
IndicesPtr indices_
A pointer to the vector of point indices to use.
ParticleFilterOMPTracker tracks the PointCloud which is given by setReferenceCloud within the measure...
void weight() override
weighting phase of particle filter method.
ParticleFilterOMPTracker(unsigned int nr_threads=0)
Initialize the scheduler and set the number of threads to use.
unsigned int threads_
The number of threads the scheduler should use.
void setNumberOfThreads(unsigned int nr_threads=0)
Initialize the scheduler and set the number of threads to use.
ParticleFilterTracker tracks the PointCloud which is given by setReferenceCloud within the measured P...
void calcBoundingBox(double &x_min, double &x_max, double &y_min, double &y_max, double &z_min, double &z_max)
Compute the parameters for the bounding box of hypothesis pointclouds.
CloudCoherencePtr coherence_
A pointer to PointCloudCoherence.
typename Coherence::Ptr CoherencePtr
typename PointCloudIn::ConstPtr PointCloudInConstPtr
typename Coherence::ConstPtr CoherenceConstPtr
typename CloudCoherence::Ptr CloudCoherencePtr
bool changed_
A flag to be true when change of pointclouds is detected.
unsigned int change_detector_filter_
Minimum points in a leaf when calling change detector.
pcl::octree::OctreePointCloudChangeDetector< PointInT >::Ptr change_detector_
Change detector used as a trigger to track.
typename PointCloudState::Ptr PointCloudStatePtr
std::vector< PointCloudInPtr > transed_reference_vector_
A list of the pointers to pointclouds.
typename PointCloudState::ConstPtr PointCloudStateConstPtr
unsigned int change_counter_
A counter to skip change detection.
double alpha_
The weight to be used in normalization of the weights of the particles.
bool use_normal_
A flag to use normal or not.
PointCloudStatePtr particles_
A pointer to the particles
unsigned int change_detector_interval_
The number of interval frame to run change detection.
double normalizeParticleWeight(double w, double w_min, double w_max)
Normalize the weight of a particle using .
int particle_num_
The number of the particles.
typename PointCloudIn::Ptr PointCloudInPtr
typename Tracker< PointInT, StateT >::PointCloudState PointCloudState
bool use_change_detector_
The flag which will be true if using change detection.
typename CloudCoherence::ConstPtr CloudCoherenceConstPtr
typename Tracker< PointInT, StateT >::PointCloudIn PointCloudIn
virtual void normalizeWeight()
Normalize the weights of all the particels.
PointCloudCoherence is a base class to compute coherence between the two PointClouds.
shared_ptr< PointCloudCoherence< PointInT > > Ptr
shared_ptr< const PointCloudCoherence< PointInT > > ConstPtr
PointCoherence is a base class to compute coherence between the two points.
shared_ptr< const PointCoherence< PointInT > > ConstPtr
shared_ptr< PointCoherence< PointInT > > Ptr
Tracker represents the base tracker class.
const std::string & getClassName() const
Get a string representation of the name of this class.
SearchPtr search_
A pointer to the spatial search object.
std::string tracker_name_
The tracker name.