Map Viewer - A Mapping Tool for Mobile Robotics
Map Viewer is an application for working
with maps of an environment, primarily for use with robotics
research. Map Viewer runs on M$ Windows (and will run on some
versions of WINE on Linux), and can edit maps from
most of the major robot simulators including:
- ActivMedia's Saphira
- Carnegie Mellon's CARMEN
- BeeSoft
- Player/Stage
- Rossum (Mapviewer 2.1 and later only)
It works with both bitmap-like grid maps and vector maps, the two most common map types used in robotic simulators. Map Viewer can also import and export image types Jpeg, Bmp and Pnm files, converting them into an occupancy grid map.
Other features of Map Viewer include:
- Generate Voronoi diagram of an occupancy grid, defining all the paths in the map that maximise the robot's distance from all obstacles
- Generate a paramaterised path using a modified A-Star algorithm between two points in the map.
- Average a grid map with another map.
- Perform five comparison benchmark techniques to compare one grid map to another.
- Generate a configuration space (C-Space) on a grid map
- Convert an Occupancy Grid Map into a Vector map using two different line-fitting algorithms. This is useful, for example, if you have architectural drawings of an environment you'd like to turn into a vector map to load into your robot simulator.
- Threshold map to values 0 and 1
- Smooth the grid map
- Build grid maps from sonar data
- Adding robots to maps (useful especially for Saphira, Player/Stage and Rossum users)
- Exporting vector maps to the Rossum Floor Plan format.
- Load/Save files in the Player/Stage format.
- Randomly generate any number of new maps, which can be saved in any of the supported formats.
- Generate Delaunay triangulations of grid points.
MapViewer is free to download and use, though if you feel an urge to fire off a big congratulatory email, feel free to do so.
A large amount of the code used in Map Viewer has been released by
me as open
source. The Library page has more
details.
To download MapViewer 2.2,
click HERE.
To download MapViewer 2.3 click HERE. This release is based on
a
complete rewrite of the base code. This was necessary in order to
separate the code out into a separate library for the MapManager
open source project. As such, there may still be some bugs that
are not present in version 2.2. In addition to the features in
version 2.2, this release can generate Delaunay triagulations of a set
of points. Last updated July 14th 2005. NOTE
THAT MAPVIEWER 2.3 HAS A BUG WITH PLAYER/STAGE MAPS, SO USE VERSION 2.2
UNTIL THIS IS FIXED.
To download a zip file containing example maps in Mapviewer, Carmen and Saphira format, click HERE.
You can also download sets of randomly generated maps for three simulators, Player/Stage, Saphira and Rossum. Each zip file contains 50 maps generated with the same specification for a single simulator.
| Randomly Generated Maps |
||||
| File
Name |
Simulator |
Number
of Rooms |
Avg
Room Area (Metres sq) |
Number
of Robots |
| Stage_1Room_500Msq_5Robots_50Maps.zip |
Player/Stage |
1 |
500 |
5 |
| Stage_5Rooms_100Msq_5Robots_50Maps.zip |
Player/Stage | 5 |
100 |
5 |
| Stage_100Rooms_150Msq_100Robots_50Maps.zip |
Player/Stage | 100 |
150 |
100 |
| Saphira_1Room_500Msq_50Maps.zip |
Saphira |
1 |
500 | 1 |
| Saphira_5Rooms_100Msq_50Maps.zip |
Saphira | 5 |
100 | 1 |
| Saphira_100Rooms_150Msq_50Maps.zip | Saphira | 100 |
150 | 1 |
| Rossum_1Room_500Msq_5Robots_50Maps.zip |
Rossum |
1 |
500 | 5 |
| Rossum_5Rooms_100Msq_5Robots_50Maps.zip |
Rossum | 5 |
100 | 5 |
| Rossum_100Rooms_150Msq_100Robots_50Maps.zip |
Rossum | 100 |
150 | 100 |
The help page is available HERE
in Adobe PDF, or HERE in
Microsoft Word, or HERE
in HTML.
There are a set of tutorials on the use of MapViewer located HERE. Tutorial 4 contains much new
sample data for building grid maps from sonar data.