דלג לתוכן הראשי

סינון ומיון קווי מתאר

לאחר סינון צבע, Limelight מייצר רשימה של קווי מתאר. לאחר מכן, כל קו מתאר נעטף במלבן תוחם הדוק ביותר, מלבן "לא מסובב", ו"מעטפת קמורה". אלה עוברים דרך סדרת מסננים כדי לקבוע את קו המתאר ה"טוב ביותר". אם מספר קווי מתאר עוברים את כל המסננים, Limelight בוחר את קו המתאר הטוב ביותר באמצעות בקרת "מצב המיון".

מצבי מיון

שולט כיצד קווי מתאר ממוינים לאחר שהם עוברים את כל המסננים האחרים.

ב-2019, נוסף מצב המיון "הקרוב ביותר". מצב זה יבחר את המטרה הקרובה ביותר לכוונת הניתנת להגדרה.

שטח מטרה

שולט בטווח שטחי המלבן התוחם המקובלים, כאחוזים מהמסך. ניתן להגדיל את השטח המינימלי כדי לסנן אורות אצטדיון, ולהקטין את הערך המקסימלי כדי לסנן דברים כמו מסכים גדולים ליד המגרש.

מחוון השטח אינו בקנה מידה ליניארי, אלא בקנה מידה רביעי. זה נעשה כדי לספק דיוק נוסף ליד הערכים הנמוכים של השטח, שם נמצאות מטרות FRC רבות. שטח של ריבוע גדל באופן ריבועי עם אורך הצלע שלו, אך קנה מידה x^4 מספק דיוק גדול עוד יותר היכן שצריך.

מלאות מטרה

מלאות היא אחוז הפיקסלים ה"דולקים" במלבן התוחם של קו המתאר הנבחר. מטרת מלבן מלא תהיה עם מלאות קרובה ל-1.0, בעוד שמטרה בצורת U תהיה עם מלאות נמוכה.

יחס גובה-רוחב של מטרה

יחס גובה-רוחב מוגדר על ידי רוחב המלבן התוחם של קו המתאר הנבחר חלקי גובהו. יחס גובה-רוחב נמוך מתאר מלבן "גבוה", בעוד שיחס גובה-רוחב גבוה מתאר מלבן "רחב".

מחוון יחס הגובה-רוחב גם הוא בקנה מידה ריבועי.

מסנן כיוון

דוחה קווי מתאר על בסיס הכיוון שלהם.

דחיית כתמים חכמה

דוחה קווי מתאר קטנים יחסית (בניגוד לקטנים באופן מוחלט עם מסנן השטח) שעברו את כל המסננים האחרים. זה חיוני אם מטרה חייבת להישאר ניתנת למעקב מטווח קצר וטווח ארוך. תכונה זו הוצגה בעונת 2019 כדי לדחות השתקפויות LED של Limelight כאשר רובוטים היו קרובים מאוד למטרות.

קיבוץ מטרות

שולט ב"קיבוץ" מטרות. הגדר למצב כפול כדי לחפש "מטרות" המורכבות משתי צורות, או מצב משולש כדי לחפש מטרות המורכבות משלוש צורות.

קיבוץ מטרות חכם יכול לקבץ מספר משתנה של מטרות ולדחות חריגים. הוא נוסף ב-2022 כדי לעזור לעקוב אחר מטרת הרכזת העליונה.

מסנן חיתוך (מטרות כפולות בלבד)

דוחה קבוצות של קווי מתאר על בסיס איך הם היו נחתכים אם היו מורחבים לאינסוף.

קיבוץ מטרות חכם

קבץ אוטומטית מטרות שעוברות את כל מסנני המטרה הבודדים.

  • יקבץ באופן דינמי כל מספר של מטרות בין -מינימום מחוון גודל קבוצה- ל-מקסימום מחוון גודל קבוצה-

דחיית חריגים

  • בעוד שמטרות קבוצתיות מאתגרות יותר ממטרות רגילות, הן מספקות יותר מידע והזדמנויות לסינון. אם אתה יודע שמטרה מורכבת ממספר מטרות קרובות זו לזו, אתה יכול למעשה לדחות מטרות חריגות שעומדות בפני עצמן.
  • עליך להסתמך כמעט לחלוטין על סינון מטרות טוב, ולהשתמש בדחיית חריגים רק אם אתה רואה או מצפה לחריגים מזדמנים בזרם המצלמה שלך. אם יש לך סינון מטרות סטנדרטי גרוע, זיהוי חריגים עלול להתחיל לפעול נגדך!

פלט

לשונית זו שולטת במה שקורה בשלב האחרון של צינור הראייה

אזור מיקוד

שולט בנקודת העניין של המלבן התוחם של קו המתאר הנבחר. כברירת מחדל, פרמטרי המיקוד tx ו-ty מייצגים את ההיסטים מהכוונת שלך למרכז המלבן הנבחר. ניתן להשתמש באפשרות אחרת אם מטרה משתנה בגודל, או מורכבת משתי מטרות שלפעמים מתמזגות יחד.

לשלוח פינות גולמיות?

הגדר בקרה זו ל"כן" כדי לכלול מיקומי פינות בתוצאות JSON, NetworkTables ו-API. כוונן את מספר הפינות המוגשות על ידי התאמת ערך "פישוט קו מתאר" בדף "סינון קווי מתאר".

לשלוח JSON דרך NT?

הגדר בקרה זו ל"כן" כדי לשלוח JSON דרך NetworkTables.

כיול כוונת

שולט ב"מקור" של ערכי המיקוד שלך. נניח שמשגר ברובוט שלך צריך להיות מכויל כך שהוא תמיד מכוון קצת שמאלה מהמרכז. אתה יכול ליישר את הרובוט שלך, ללחוץ על "כייל", וכל ערכי המיקוד שלך יישלחו ביחס לכוונת החדשה שלך. ראה את דף הכיול לפרטים נוספים!

3D

התנסה עם הערכת תנוחה מבוססת נקודות PnP כאן.

חשב 3D

שולט האם הערכת תנוחה מופעלת. עליך להפעיל את מצב הרזולוציה הגבוהה 960x720 כדי שזה יעבוד.

כפה קמור

השתמש באפשרות זו כדי לבחור רק את הפינות ה"חיצוניות ביותר" של מטרה עבור SolvePnP.

פישוט קו מתאר

השתמש באפשרות זו כדי להסיר קצוות קטנים ורועשים מהמטרה.

שגיאה מקובלת

Limelight יחזיר מטרה רק אם היא עוברת מבחן הקרנה מחדש עם ציון מסוים בפיקסלים.

היסט Z של מטרה

מתאים אוטומטית את ערך העומק התלת-ממדי של המטרה שלך (ציר Z).