Go to the documentation of this file.
9 #ifndef CMonteCarloLocalization2D_H
10 #define CMonteCarloLocalization2D_H
21 class COccupancyGridMap2D;
41 mrpt::math::TPose2D, CMonteCarloLocalization2D,
42 mrpt::poses::CPosePDFParticles::PARTICLE_STORAGE>
77 const double freeCellsThreshold = 0.7,
const int particlesCount = -1,
78 const double x_min = -1e10f,
const double x_max = 1e10f,
79 const double y_min = -1e10f,
const double y_max = 1e10f,
80 const double phi_min = -
M_PI,
const double phi_max =
M_PI);
142 const size_t i,
bool& is_valid_pose)
const override;
151 const std::vector<mrpt::math::TPose3D>& newParticles,
152 const std::vector<double>& newParticlesWeight,
153 const std::vector<size_t>& newParticlesDerivedFromIdx)
const override;
159 const size_t particleIndexForMap,
std::deque< CParticleData > CParticleList
Use this type to refer to the list of particles m_particles.
mrpt::math::TPose3D getLastPose(const size_t i, bool &is_valid_pose) const override
Return the robot pose for the i'th particle.
Declares a class that represents a Probability Density Function (PDF) over a 2D pose (x,...
CMonteCarloLocalization2D(size_t M=1)
Constructor.
virtual ~CMonteCarloLocalization2D()
Destructor.
Declares a class for storing a collection of robot actions.
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
void prediction_and_update_pfAuxiliaryPFStandard(const mrpt::obs::CActionCollection *action, const mrpt::obs::CSensoryFrame *observation, const bayes::CParticleFilter::TParticleFilterOptions &PF_options) override
Update the m_particles, predicting the posterior of robot pose and map after a movement command.
void resetUniformFreeSpace(mrpt::maps::COccupancyGridMap2D *theMap, const double freeCellsThreshold=0.7, const int particlesCount=-1, const double x_min=-1e10f, const double x_max=1e10f, const double y_min=-1e10f, const double y_max=1e10f, const double phi_min=-M_PI, const double phi_max=M_PI)
Reset the PDF to an uniformly distributed one, but only in the free-space of a given 2D occupancy-gri...
Declares a class for storing a "sensory frame", a set of "observations" taken by the robot approximat...
size_t particlesCount() const override
A class used to store a 3D pose (a 3D translation + a rotation in 3D).
A set of common data shared by PF implementations for both SLAM and localization.
void prediction_and_update_pfAuxiliaryPFOptimal(const mrpt::obs::CActionCollection *action, const mrpt::obs::CSensoryFrame *observation, const bayes::CParticleFilter::TParticleFilterOptions &PF_options) override
Update the m_particles, predicting the posterior of robot pose and map after a movement command.
Lightweight 3D pose (three spatial coordinates, plus three angular coordinates).
double PF_SLAM_computeObservationLikelihoodForParticle(const mrpt::bayes::CParticleFilter::TParticleFilterOptions &PF_options, const size_t particleIndexForMap, const mrpt::obs::CSensoryFrame &observation, const mrpt::poses::CPose3D &x) const override
Evaluate the observation likelihood for one particle at a given location.
Declares a class that represents a Probability Density Function (PDF) over a 2D pose (x,...
void PF_SLAM_implementation_custom_update_particle_with_new_pose(mrpt::math::TPose2D *particleData, const mrpt::math::TPose3D &newPose) const override
void PF_SLAM_implementation_replaceByNewParticleSet(CParticleList &old_particles, const std::vector< mrpt::math::TPose3D > &newParticles, const std::vector< double > &newParticlesWeight, const std::vector< size_t > &newParticlesDerivedFromIdx) const override
TMonteCarloLocalizationParams options
MCL parameters.
The struct for passing extra simulation parameters to the prediction stage when running a particle fi...
A class for storing an occupancy grid map.
void prediction_and_update_pfStandardProposal(const mrpt::obs::CActionCollection *action, const mrpt::obs::CSensoryFrame *observation, const bayes::CParticleFilter::TParticleFilterOptions &PF_options) override
Update the m_particles, predicting the posterior of robot pose and map after a movement command.
The configuration of a particle filter.
Page generated by Doxygen 1.8.17 for MRPT 1.9.9 Git: ad3a9d8ae Tue May 1 23:10:22 2018 -0700 at miƩ 12 jul 2023 10:03:34 CEST | |