class AprilTag – אובייקט AprilTag#

אובייקט ה-apriltag הוא attrtuple המוחזר על ידי Image.find_apriltags(). כל מופע מתאר AprilTag מפוענח: התיבה התוחמת שלו, המרכז התת-פיקסלי, המשפחה/id, מדדי איכות המפענח, ארבע הפינות שזוהו, וכן – כאשר מסופקים נתוני אינטרינזיק ל-Image.find_apriltags() – הערכת תנוחה בעלת 6 דרגות חופש במערכת הצירים של המצלמה.

השדות נגישים לפי שם תכונה (tag.id) או לפי אינדקס (tag[0]). לאובייקט אין בנאי ציבורי.

class image.apriltag#

אנא קראו ל-Image.find_apriltags() כדי ליצור אובייקט זה.

תיבה תוחמת ופינות#

x#

קואורדינטת x של הפינה השמאלית-עליונה של התיבה התוחמת, בפיקסלים. מספר שלם. אינדקס [0].

y#

קואורדינטת y של הפינה השמאלית-עליונה של התיבה התוחמת, בפיקסלים. מספר שלם. אינדקס [1].

w#

רוחב התיבה התוחמת, בפיקסלים. מספר שלם. אינדקס [2].

h#

גובה התיבה התוחמת, בפיקסלים. מספר שלם. אינדקס [3].

cx#

קואורדינטת x של המרכז, מעוגלת ל-int. מספר שלם. אינדקס [4].

cy#

קואורדינטת y של המרכז, מעוגלת ל-int. מספר שלם. אינדקס [5].

cxf#

קואורדינטת x של המרכז כמספר float תת-פיקסלי. אינדקס [9].

cyf#

קואורדינטת y של המרכז כמספר float תת-פיקסלי. אינדקס [10].

corners#

רביעייה של רביעיות (x, y) מספריות עבור ארבע הפינות שזוהו של התג, ממוינות בכיוון השעון החל מהפינה השמאלית-עליונה. אינדקס [21].

area#

שטח התיבה התוחמת (w * h). מספר שלם. אינדקס [22].

rect#

רביעייה (x, y, w, h) של התיבה התוחמת. מתאימה להעברה ישירה למתודות ציור/חיתוך כגון Image.draw_rectangle() או Image.crop(). אינדקס [23].

זיהוי#

id#

ה-id המספרי של התג בתוך משפחתו. הטווח התקף תלוי במשפחה (למשל 0 – 586 עבור TAG36H11). מספר שלם. אינדקס [6].

family#

מזהה משפחה מספרי, אחד מבין:

מספר שלם. אינדקס [7].

name#

שם המשפחה כמחרוזת, למשל "TAG36H11". אינדקס [8].

איכות ההתאמה#

decision_margin#

איכות התאמת התג בטווח 0.0 – 1.0 כאשר 1.0 היא הטובה ביותר. השתמשו בזה כדי לדחות זיהויים בעלי ביטחון נמוך. מספר float. אינדקס [12].

hamming#

מספר שגיאות הביט שהמפענח קיבל עבור תג זה. מוגבל על ידי יכולת התיקון של המשפחה:

  • TAG16H5 -> עד 0 שגיאות ביט

  • TAG25H9 -> עד 3 שגיאות ביט

  • TAG36H10 -> עד 3 שגיאות ביט

  • TAG36H11 -> עד 4 שגיאות ביט

נמוך יותר טוב יותר. מספר שלם. אינדקס [13].

goodness#

איכות התמונה של התג בטווח 0.0 – 1.0 כאשר 1.0 היא הטובה ביותר. כרגע תמיד 0.0 בקושחה המשוחררת (המפענח הבסיסי כבר אינו מחשב מדד זה). מספר float. אינדקס [14].

הערכת תנוחה#

שדות התרגום והסיבוב שלהלן מאוכלסים רק כאשר Image.find_apriltags() נקרא עם נתוני האינטרינזיק של המצלמה fx, fy, cx ו-cy. ללא נתוני אינטרינזיק הם 0.0. ההנחה היא שרוחב התג הוא יחידה אחת, ולכן התרגומים הם ב“רוחבי תג“ – הכפילו בגודל התג בעולם האמיתי כדי לקבל מרחקים מטריים.

x_translation#

תרגום X מהמצלמה (שמאל-ימין) ברוחבי תג. מספר float. אינדקס [15].

y_translation#

תרגום Y מהמצלמה (מעלה-מטה) ברוחבי תג. מספר float. אינדקס [16].

z_translation#

תרגום Z מהמצלמה (קדימה-אחורה) ברוחבי תג. מספר float. אינדקס [17].

x_rotation#

סיבוב סביב ציר X (pitch) ברדיאנים. מספר float. אינדקס [18].

y_rotation#

סיבוב סביב ציר Y (yaw) ברדיאנים. מספר float. אינדקס [19].

z_rotation#

סיבוב סביב ציר Z (roll) ברדיאנים. אותו ערך כמו rotation – משוכפל לשם סימטריה עם x_rotation ו-y_rotation. מספר float. אינדקס [20].

rotation#

סיבוב במישור התמונה של התג ברדיאנים. שווה ל-z_rotation. מספר float. אינדקס [11].