13.6. Edge Impulse

Edge Impulse היא פלטפורמת קצה-אל-קצה לבניית מודלים של למידת מכונה שרצים על מיקרו-בקרים: איסוף ותיוג של נתונים, עיצוב ואימון של מודל בדפדפן, ואופטימיזציה שלו כך שיתאים להתקן הנמדד בקילובייטים. היא פורסת ישירות אל OpenMV – כמה לחיצות הופכות מודל מאומן לקבצים מוכנים להרצה על המצלמה. התיעוד של Edge Impulse עצמה מעמיק בכל שלב.

13.6.1. הזנת נתונים פנימה

מודל מתפקד בצורה הטובה ביותר על סוג התמונות שעליהן אומן, ולכן יש ללכוד את מערך הנתונים עם המצלמה שתריץ אותו. עורך מערך הנתונים של ה-IDE בנוי בדיוק לשם כך – צרו תיקיות מחלקה, לכדו תמונות מתויגות מחוצץ הפריימים (frame buffer) החי, ולאחר מכן העלו את מערך הנתונים ישירות אל פרויקט Edge Impulse מתפריט המשנה Export (היכנסו תחילה לחשבונכם שם). מנקודה זו ואילך אתם עובדים בתוך Edge Impulse Studio.

ראה גם

מדריך התקנת OpenMV Cam של Edge Impulse עצמה להתקנת הכלים וחיבור המצלמה.

13.6.2. אימון

האימון מתרחש כולו בדפדפן: עצבו impulse (בלוקי הקלט, העיבוד והלמידה), אמנו אותו, ובדקו את הדיוק על נתוני הבדיקה שהוקצו בנפרד.

שני סוגי מודלים מתאימים למצלמה. מסווג תמונות מפיק רשימה של ציוני מחלקות, שאותם אתם קוראים ישירות מפלט המודל – ללא צורך במעבד-בתר. FOMO, מזהה עצמים מהיר שתוכנן עבור מיקרו-בקרים, זקוק לשלב פענוח אחד, והמצלמה כוללת עבורו מעבד-בתר (ml.postprocessing.edgeimpulse), כך שגם מודלים אלה רצים ללא קוד נוסף.

13.6.3. פריסה אל המצלמה

כשהאימון מסתיים, פתחו את עמוד ה-Deployment של הפרויקט, בחרו ביעד OpenMV Library, ולחצו על Build. ההורדה היא קובץ zip המכיל את המודל המאומן (trained.tflite), את התוויות שלו (labels.txt), וסקריפט לדוגמה. המודל מכומת לערכים שלמים. Edge Impulse מסבירה זאת ואת חלופת הקושחה המותאמת אישית במדריך הרצה על OpenMV שלה.

הוסיפו את קובץ ה-.tflite אל המצלמה באמצעות עורך ה-ROMFS של ה-IDE, הממיר אותו עבור ה-NPU של הלוח כשקיים כזה, וטענו אותו בסקריפט עם ml.Model. ניתן להריץ מודלים גם מכונן הפלאש של המצלמה – העתיקו את הקבצים והפנו את ml.Model אל הנתיב – אך ROMFS הוא הבית העדיף: מודלים שם מורצים ישירות מהפלאש (flash) ללא העתקה ל-RAM.

ראה גם

פרק למידת המכונה להרצת מודלים עם המודול ml – טעינה, צינור ההסקה, ופענוח הפלט.