צינורות Python SnapScript
עם סקריפטים בפייתון, תוכלו לנצל את מלוא העוצמה של OpenCV לבניית צינורות משלכם במהירות. מפרש הפייתון מוטמע בתוך הקוד האחורי של Limelight ב-C++, כך ששגיאות וקריסות מטופלות בצורה חלקה.
צינורות SnapScript רגילים מתוכנתים ישירות בממשק האינטרנט של Limelight.
Limelight מטפל בחומרה, ממשק המצלמה, רשת, סטרימינג ועיבוד תמונה בסיסי מקדים. כל מה שאתם צריכים לעשות זה לכתוב פונקציית פייתון אחת בשם runPipeline().
- אחת התכונות החשובות ביותר שאנו מציעים היא הכוונת בלחיצה אחת. הכוונת, הכוונת הכפולה, tx, ty, ta, ts, tvert, וכל שאר קריאות NetworkTables הסטנדרטיות של Limelight יינעלו אוטומטית על הקונטור שתחזירו מפונקציית runPipeline() בפייתון.
- כתבו ויזואליזציות בזמן אמת משלכם, סינון סף, פילטור, ועקפו את הקוד האחורי שלנו לחלוטין אם תרצו.
- לסקריפטים בפייתון של Limelight יש גישה לספריות OpenCV ו-numpy המלאות.
- מעבר לגישה לתמונה, לפונקציית runPipeline() יש גם גישה לנתונים מהרובוט. קבוצות FTC יכולות להשתמש ב-updatePythonInputs() וקבוצות FRC יכולות לעדכן את מערך המספרים "llrobot" ב-NetworkTables. שלחו כל נתון מהרובוטים שלכם לסקריפטים בפייתון לויזואליזציה או יישומים מתקדמים (אפשר לשלוח נתוני IMU, נתוני מיקום, מהירות רובוט וכו' לשימוש בסקריפטים בפייתון)
- פונקציית runPipeline גם מוציאה מערך מספרים שנגיש עם getPythonOutputs() ומתוך מערך המספרים "llpython" ב-NetworkTables. זה אומר שתוכלו לעקוף את הכוונת של Limelight ופונקציונליות אחרת לחלוטין ולשלוח נתונים מותאמים אישית משלכם בחזרה לרובוטים.
- סקריפטים בפייתון מבודדים בתוך סביבת ה-C++ שלנו, כך שאתם לא צריכים לדאוג מקריסות. שינויים בסקריפטים מיושמים מיידית, וכל הודעות שגיאה מודפסות ישירות לממשק האינטרנט.