updating the map partially in a dynamic environment
Hello,
I have generated map.pgm with gmapping
using teleoperation
and RPLidar
, and I am using this map for navigation stack.
The problem is, since the environment (indoor office) changes a lot, it struggles with amcl which causes inaccurate navigation. It works okay when there are minor changes but when the desk is moved or some chairs are moved to other side, it struggles.
I believe there are three possible options for this problem, (If there are other good solutions please let me know, thank you!)
- re generate the whole map using gmapping and teleportation -> easy but time consuming (not what I want to do)
- re generate the whole map using gmapping & exploration (auto-SLAM & auto-Navigation) -> couldn't find a good solution (have tried explore_lite but it kept going under the desk or get stuck due to clustered environment)
- use the previous map and and set some points on the map that robot should visit & update the map during this process.
I was wondering if there is a way to do the third option. I can create a node that sends out move_base goals and my navigation stack works. Is there any way to update already made map (made by gmapping) ?
Since the already-made map used by navigation stack will be published by map_server, if there is a way to update the map and then save the map by map_saver, i will be able to solve this problem. Thank you for your help!