ROS occupancy grid-kartformat
ROS occupancy grid-kartan är ett par filer — typiskt map.pgm och map.yaml — som beskriver en 2D-vy uppifrån av en robots miljö. Det är det kanoniska kartformatet som konsumeras av ROS navigationsstack (nav1 map_server, nav2 map_server) och produceras av SLAM-paket som gmapping, Cartographer och slam_toolbox.
Vad de två filerna innehåller
Section titled “Vad de två filerna innehåller”.pgm-filen är en gråskalig Portable Gray Map-bild. Pixelvärden kodar ockupans:
- Mörka pixlar — ockuperat (hinder, väggar).
- Ljusa pixlar — fri yta.
- En specifik grå nyans (ofta 205) — okänt.
.yaml-filen beskriver hur bilden ska tolkas i metriska koordinater:
image: map.pgmresolution: 0.05 # meter per pixelorigin: [-12.2, -28.5, 0.0] # nedre vänstra hörnet (x, y, yaw)negate: 0occupied_thresh: 0.65free_thresh: 0.196resolution och origin tillsammans låter vilket nedströmsverktyg som helst omvandla pixelkoordinater till världskoordinater och tillbaka.
Var det här formatet kommer ifrån i praktiken
Section titled “Var det här formatet kommer ifrån i praktiken”De vanligaste pipelines:
- Kör roboten manuellt och mata odometri + 2D-lidar till gmapping eller slam_toolbox; spara den resulterande kartan.
- Kör Cartographer offline på en bag-fil och exportera occupancy grid.
- Konvertera från ett annat format —
.bt, OctoMap-projektion eller ett eget format.
Resultatet laddas sedan av map_server för lokalisering (AMCL) och planering (nav2).
Var drawtonomy passar in
Section titled “Var drawtonomy passar in”drawtonomy importerar .pgm + .yaml-par och låter dig annotera occupancy grid i webbläsaren:
- Kartan visas i skala på arbetsytan med hjälp av
resolution- ochorigin-metadata. - Du kan rita körfält, korsningar, fordon, fotgängare och trafikskyltar ovanpå kartan.
- Annoteringarna lagras separat som drawtonomy-former — den ursprungliga
.pgm-filen ändras inte. - Användbart för pappersfigurer (en SLAM-karta med planerade rutter inritade), undervisning (annotera vad planeraren ser) och snabb referensmärkning.
Det är avsiktligt en envägsimport: drawtonomy är inte ett substitut för nav2:s kartverktygslådor. Det är ett bekvämt alternativ när du vill ha en visuellt ren, publiceringsklar annotering av en SLAM-karta.
Se Importera ROS occupancy grid för importflödet.
Relaterad läsning
Section titled “Relaterad läsning”- Användningsfall: annotera ROS occupancy grid-kartor — typiska arbetsflöden.