דלגו לתוכן

פורמט מפת רשת תפוסה של ROS

מפת רשת התפוסה של ROS היא זוג קבצים — בדרך כלל map.pgm ו-map.yaml — המתארים תצוגה דו-ממדית ממבט-על של סביבת הרובוט. זהו פורמט המפה הקנוני שנצרך על ידי מחסניות ניווט ROS (nav1 map_server, nav2 map_server) ומיוצר על ידי חבילות SLAM כמו gmapping, Cartographer, ו-slam_toolbox.

קובץ ‎.pgm הוא תמונת גווני אפור Portable Gray Map. ערכי פיקסל מקודדים תפוסה:

  • פיקסלים כהים — תפוסים (מכשולים, קירות).
  • פיקסלים בהירים — מרחב פנוי.
  • אפור ספציפי (לרוב 205) — לא ידוע.

קובץ ‎.yaml מתאר כיצד לפרש את התמונה בקואורדינטות מטריות:

image: map.pgm
resolution: 0.05 # מטרים לפיקסל
origin: [-12.2, -28.5, 0.0] # פינה שמאלית-תחתית ב-(x, y, yaw)
negate: 0
occupied_thresh: 0.65
free_thresh: 0.196

resolution ו-origin יחד מאפשרים לכל כלי downstream להמיר קואורדינטות פיקסל לקואורדינטות עולם ובחזרה.

מהיכן בא הפורמט הזה בפועל

Section titled “מהיכן בא הפורמט הזה בפועל”

הצינורות הנפוצים ביותר:

  1. נהגו את הרובוט ידנית והזינו אודיות + lidar דו-ממדי ל-gmapping או slam_toolbox; שמרו את המפה שהתקבלה.
  2. הריצו Cartographer לא מקוון על קובץ bag וייצאו את רשת התפוסה.
  3. המירו מפורמט אחר — ‎.bt, הטלת OctoMap, או פורמט מותאם אישית.

הפלט נטען לאחר מכן על ידי map_server לשם לוקליזציה (AMCL) ותכנון (nav2).

drawtonomy מייבא זוגות ‎.pgm + ‎.yaml ומאפשר לכם להוסיף הערות לרשת התפוסה בדפדפן:

  • המפה מוצגת בקנה מידה על הקנבס באמצעות מטאדטה resolution ו-origin.
  • ניתן לצייר נתיבים, צמתים, רכבים, הולכי רגל ותמרורים מעל המפה.
  • ההערות מאוחסנות בנפרד כצורות drawtonomy — קובץ ה-‎.pgm המקורי אינו משתנה.
  • שימושי לאיורים למאמרים (מפת SLAM עם מסלולים מתוכננים מצוירים עליה), הוראה (הוספת הערות על מה שמתכנן רואה) ותיוג אמת קרקע מהיר.

זהו ייבוא חד-כיווני במכוון: drawtonomy אינו תחליף לכלי עריכת מפות של nav2. זוהי אפשרות נוחה כשרוצים הערה נקייה וניתנת לפרסום של מפת SLAM.

ראו ייבוא רשת תפוסה של ROS לתהליך הייבוא.