28 #ifndef CMonteCarloLocalization2D_H
29 #define CMonteCarloLocalization2D_H
42 class COccupancyGridMap2D;
45 using namespace mrpt::poses;
46 using namespace mrpt::slam;
47 using namespace mrpt::bayes;
86 void resetUniformFreeSpace(
88 const double freeCellsThreshold = 0.7,
89 const int particlesCount = -1,
90 const double x_min = -1e10f,
91 const double x_max = 1e10f,
92 const double y_min = -1e10f,
93 const double y_max = 1e10f,
94 const double phi_min = -
M_PI,
95 const double phi_max =
M_PI );
106 void prediction_and_update_pfStandardProposal(
120 void prediction_and_update_pfAuxiliaryPFStandard(
134 void prediction_and_update_pfAuxiliaryPFOptimal(
143 const TPose3D * getLastPose(
const size_t i)
const;
145 void PF_SLAM_implementation_custom_update_particle_with_new_pose(
150 void PF_SLAM_implementation_replaceByNewParticleSet(
152 const std::vector<TPose3D> &newParticles,
154 const std::vector<size_t> &newParticlesDerivedFromIdx )
const;
157 double PF_SLAM_computeObservationLikelihoodForParticle(
159 const size_t particleIndexForMap,