1 #ifndef PCL_TRACKING_KLD_ADAPTIVE_PARTICLE_FILTER_H_
2 #define PCL_TRACKING_KLD_ADAPTIVE_PARTICLE_FILTER_H_
4 #include <pcl/tracking/tracking.h>
5 #include <pcl/tracking/particle_filter.h>
6 #include <pcl/tracking/coherence.h>
19 template <
typename Po
intInT,
typename StateT>
115 int dimension = StateT::stateDimension ();
116 for (
int i = 0; i < dimension; i++)
128 const double a[9] = { 1.24818987e-4, -1.075204047e-3, 5.198775019e-3,
129 -0.019198292004, 0.059054035642,-0.151968751364,
130 0.319152932694,-0.5319230073, 0.797884560593};
131 const double b[15] = { -4.5255659e-5, 1.5252929e-4, -1.9538132e-5,
132 -6.76904986e-4, 1.390604284e-3,-7.9462082e-4,
133 -2.034254874e-3, 6.549791214e-3,-0.010557625006,
134 0.011630447319,-9.279453341e-3, 5.353579108e-3,
135 -2.141268741e-3, 5.35310549e-4, 0.999936657524};
152 for (i = 1; i < 9; i++)
160 for (i = 1; i < 15; i++)
165 return ((1. - z) / 2.0);
166 return ((1. + z) / 2.0);
176 double chi = 1.0 - 2.0 / (9.0 * (k - 1)) + sqrt (2.0 / (9.0 * (k - 1))) * z;
177 return ((k - 1.0) / (2.0 *
epsilon_) * chi * chi * chi);
186 insertIntoBins (std::vector<int> bin, std::vector<std::vector<int> > &
B);
214 #ifdef PCL_NO_PRECOMPILE
215 #include <pcl/tracking/impl/kld_adaptive_particle_filter.hpp>