MRPT CMonteCarloLocalization2D instability ("stuttering") when using CSimplePointsMap vs. OccupancyGrid #1339
Unanswered
hirenpatel1207
asked this question in
Q&A
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
I am currently working on 2D localization for an Automated Guided Vehicle (AGV). I am attempting to implement Monte Carlo Localization (MCL) using the MRPT library. I followerd the pf-localization (and partially modified pf_localization ros2 node to accept CSimplePoints map) example.
The Setup
Library: MRPT (specifically mrpt::slam::CMonteCarloLocalization2D and mrpt::bayes::CParticleFilter).
Map Type: The map is a 2D Point Cloud, which I am loading into the filter as a mrpt::maps::CSimplePointsMap. Note: I am not using an Occupancy Grid Map.
Inputs: Standard wheel odometry (Action) and 2D Laser Scans (Observation).
The Problem
I have successfully engaged the filter, but I am experiencing significant accuracy issues. Specifically, the estimated pose exhibits a "stuttering" or jittery effect, even when the robot is moving smoothly.
For comparison, I implemented a standard ICP (Iterative Closest Point) localization on the same data.

The ICP result is smooth
and stable, whereas the Particle Filter output is noisy and erratic

.
Configuration
Here is a snapshot of the map I am using:

So the question is why does Particle Filter based localization have this jitter, it is just wrong parameters? Or Particle Filters wont work with PointMaps since they dont provide a (smooth)likelihood over the entire map area?
Problem with ICP based methods is they are too sensitive to noise and if they loose track then they dont recover.
Beta Was this translation helpful? Give feedback.
All reactions