Format de carte d'occupation ROS
La carte d’occupation ROS est une paire de fichiers — typiquement map.pgm et map.yaml — qui décrit une vue 2D en plongée de l’environnement d’un robot. C’est le format de carte de référence consommé par les piles de navigation ROS (map_server nav1, map_server nav2) et produit par les packages SLAM comme gmapping, Cartographer et slam_toolbox.
Ce que contiennent les deux fichiers
Section intitulée « Ce que contiennent les deux fichiers »Le fichier .pgm est une image en niveaux de gris au format Portable Gray Map. Les valeurs de pixels encodent l’occupation :
- Pixels sombres — occupé (obstacles, murs).
- Pixels clairs — espace libre.
- Un gris spécifique (souvent 205) — inconnu.
Le fichier .yaml décrit comment interpréter l’image en coordonnées métriques :
image: map.pgmresolution: 0.05 # mètres par pixelorigin: [-12.2, -28.5, 0.0] # coin inférieur gauche en (x, y, lacet)negate: 0occupied_thresh: 0.65free_thresh: 0.196resolution et origin permettent à tout outil aval de convertir les coordonnées pixel en coordonnées monde et vice versa.
D’où vient ce format en pratique
Section intitulée « D’où vient ce format en pratique »Les pipelines les plus courants :
- Conduire le robot manuellement et alimenter odométrie + lidar 2D à gmapping ou slam_toolbox ; sauvegarder la carte résultante.
- Lancer Cartographer hors ligne sur un fichier bag et exporter la grille d’occupation.
- Convertir depuis un autre format —
.bt, projection OctoMap, ou format personnalisé.
Le résultat est ensuite chargé par map_server pour la localisation (AMCL) et la planification (nav2).
La place de drawtonomy
Section intitulée « La place de drawtonomy »drawtonomy importe des paires .pgm + .yaml et vous permet d’annoter la grille d’occupation dans le navigateur :
- La carte est affichée à l’échelle sur le canevas grâce aux métadonnées
resolutionetorigin. - Vous pouvez dessiner des voies, intersections, véhicules, piétons et panneaux de signalisation par-dessus.
- Les annotations sont stockées séparément comme des formes drawtonomy — le
.pgmd’origine n’est pas modifié. - Utile pour les figures d’article (une carte SLAM avec des itinéraires planifiés dessinés dessus), l’enseignement (annoter ce que voit le planificateur) et le labelling rapide de vérité terrain.
Il s’agit intentionnellement d’un import unidirectionnel : drawtonomy ne remplace pas les outils d’édition de carte de nav2. C’est une option pratique quand vous souhaitez une annotation visuellement propre et publiable d’une carte SLAM.
Voir Importer une grille d’occupation ROS pour le flux de travail d’import.
Pour aller plus loin
Section intitulée « Pour aller plus loin »- Cas d’usage : annoter des cartes d’occupation ROS — flux de travail typiques.