Skip to content

Latest commit

 

History

History
executable file
·
59 lines (31 loc) · 1.99 KB

README.md

File metadata and controls

executable file
·
59 lines (31 loc) · 1.99 KB

ROS Map Editor

A Python Qt based tool for editing maps generated by ROS gmapping package.

ROS Map Editor

This was inspired by lack of any editors dedicated to this purpose. All chatter I could find just mentioned using Gimp, or some equivalent for editing these files, which is quite inadequate.

In particular, I needed a way to add areas of map which are "out of bounds" for the robot, but not necessarily obstacles detected by sensor. Things like ponds, sand traps, flower beds, etc. Flat surfaces, not detected by sensors in mapping, but off limits (or highly dangerous) to the robot.

I also needed a way to match the map with a real world map like Google Maps and associate grid cells with lat/lng.

Also, just general cleanup of map is an arduous taks with Gimp, et al.

With the Map Editor tool, I can now do all of these things (well, some of these features have yet to be added).

Current Functionality

  1. Edits files of type pgm with an accompanying yaml file describing metadata as generated by ROS gmapping package

  2. Grid cells can be set to occupied (black), unoccupied (white), or uncertain (gray).

  3. Thumb image shows entire map with the current viewport indicated (weirdly, commercial packages did not have this)

  4. Can zoom 100%, 200%, 400%, 800%, and 1600% for large grain to fine grain work

  5. Set color choice to white (unoccupied), black (occupied), gray (uncertain), and alternating (white->black->gray).

  6. Can color free form with mouse drag or pixel by pixel by clicking

Future Functionality

  1. Draw rectangles

  2. Overlay Google Map

  3. Start a New map (currently only opens on current map)

  4. Associate map/grids with lat/lng

  5. mods to yaml file as well

Getting Started

  1. Move to this package
$ cd ros_map_editor
  1. Move your map and yaml file to this directory

  2. Run the editor

$ python3 MapEditor.py (your_map_file_name)