amcl allocating particles in occupied space

asked 2017-03-17 15:35:15 -0500

JordanMarr gravatar image

I'm trying to use the navigation stack with Turtlebot. I have a global map that I've put together from a building floorplan. I then blacked out any areas of the map that the robot won't be visiting to try to prevent amcl from erroneously localizing the robot to that spot.

However this has actually made things worse, as blacking out large sections of the map removes some ambiguity about how the laser scan profiles match up, and amcl ends up putting a lot of particles in the blacked out space, even though it registers as occupied in the costmap.

What's interesting is that calling /global_localization service only allocates particles within the free space on the map. Is there a way to enforce this constraint in amcl?

edit retag flag offensive close merge delete