v4.8.9

v4.8.9 היא גרסת יעילות במצב סרק ואמינות ניתוק, הבנויה על Qt Creator 14.0.2. היא משפצת את אופן ניטור החומרה ב-IDE כך שהוא מפסיק לבצע פולינג כשאין פעילות, מהדקת את נתיב החיבור/ניתוק, ומקצצת את מאגר המודלים המצורף. אין בטווח זה ביצוע rebase ל-Qt Creator, אך כמה התנהגויות ברירת מחדל ושמות מודלים מצורפים השתנו, לכן עיינו בשינויים השוברים שלהלן.

עיקרים

  • ניטור חומרה מונחה אירועים מחליף פולינג רציף של התקנים: ה-IDE עוצר כעת את טיימרי הסריקה שלו במצב סרק וסורק מחדש יציאות טוריות וכוננים רק בתגובה לאירועי חיבור/ניתוק USB אמיתיים ולאירועי עיגון/ביטול עיגון של דיסק, מה שמפחית באופן דרמטי את ניצול ה-CPU והמשאבים במצב סרק.

  • טיימרי סרק מותנים בפעילות: טיימר אירועי חוצץ הפריימים (frame buffer) (שלפנים פעל כל 1ms) פועל כעת רק בעת חיבור, וטיימר הבהוב הסמן של הטרמינל (500ms) פועל כעת רק כאשר הטרמינל בפוקוס.

  • סנכרון ייבוא ברקע מכובה כברירת מחדל: סנכרון אוטומטי של תיקיות הייבוא Examples ו-Documents/OpenMV מושבת כעת ומתג התפריט שלו מוסתר, כך שה-IDE אינו סורק עוד באופן רציף את התיקיות האלה.

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

  • כפתור מצב חוצץ פריימים (frame buffer) ברור יותר המציג JPG Mode או RAW Mode כדי להבהיר את מצב הדחיסה הנוכחי במבט חטוף.

תכונות חדשות

  • ניטור אירועי חומרה מקורי באמצעות HardwareMonitor חדש הפולט hardwareEventDetected תוך שימוש ב-IOKit וב-DiskArbitration ב-macOS, חלון message-only מסוג WM_DEVICECHANGE ב-Windows, ושקע netlink מסוג NETLINK_KOBJECT_UEVENT ב-Linux. טיימרי סריקת היציאות הטוריות וסריקת הכוננים מותנים כעת בחלון סריקה של 10s המתחיל מחדש בכל אירוע (a6612fec9, 462b55f7b, 17c2e93c7).

שינויים ושיפורים נוספים

  • טיימר עיבוד אירועי חוצץ הפריימים (frame buffer) (שלפנים פעל כל 1ms) מופעל כעת בעת חיבור ונעצר בעת ניתוק, וטיימר הבהוב הסמן של הטרמינל (500ms) מתחיל ונעצר כעת בעת כניסה/יציאה של פוקוס הטרמינל במקום לפעול תמיד (a02afea53).

  • סנכרון אוטומטי של תיקיות הייבוא Examples ו-Documents/OpenMV מושבת כברירת מחדל והמתג מוסתר; טיימרי סריקת התיקיות אינם מופעלים עוד בעת האתחול ופועלים רק כאשר הפעולה (המוסתרת כעת) מאופשרת (478f83e97).

  • כפתור החלפת פורמט חוצץ הפריימים (frame buffer) מציג כעת JPG Mode כאשר דחיסת JPEG מופעלת ו-RAW Mode כאשר היא מכובה (c48831224).

  • בעת החיבור, ה-IDE מיישם כעת תמיד את ברירת המחדל המעדיפה JPEG של הלוח עבור חוצץ הפריימים (frame buffer) במקום לשחזר את בחירת ה-JPG/RAW שנשמרה בעבר לכל לוח (c48831224).

תיקוני באגים

  • ניתוק סוגר כעת את היציאה הטורית ומשחרר את המצלמה (ואת היציאה) באופן ישיר בתוך close(), מה שהופך את הניתוק למהיר ואמין יותר (1e8941080, 9d31bcf80).

  • טיימר הסרק הטורי נעצר כעת ודגל פרוטוקול-v2 מנוקה כאשר היציאה נסגרת, מה שמתקן התנהגות טיימר סרק מיושנת לאחר ניתוק (4bd2fd9ea).

  • פסקי הזמן של פקודות הפרוטוקול כווננו (פסק זמן הפתיחה הופחת מ-5s ל-2s, סנכרון מחדש ו-CHANNEL_SIZE משתמשים בפסק זמן קצר של 1s) וכל פקודה טורית משחררת כעת את אובייקט המצלמה בעת כשל, כך שמצלמה תקועה מתאוששת ומתנתקת מהר יותר במקום להיתקע (04aa6aea3).

  • תוקנה בעיית נעילה/תקיעה בעת עצירת סקריפט: אירוע עצירת סקריפט מנקה כעת גם את מצב אירוע הפריים ומאפס את טיימרי המוכנות לפריים (3695b0704).

  • הפרוטוקול סובל כעת קריאות קצרות מהמצלמה, ומחזיר את המטען החלקי או הטקסט במקום לזרוק אותו או להיכשל (0c8ccd58e).

תמיכה בפלטפורמה וכלים

  • בסיס Qt Creator: 14.0.2.

  • לוחות המשלבים מודול AE3 או N6 עם חיישן PAG7936 או PS5520 מקבלים כעת את ברירת המחדל הגבוהה יותר של QVGA (בעבר רק AE3 + PAG7936), כך שדוגמאות מושפעות משודרגות אוטומטית מ-QQVGA ל-QVGA (fcc0c3227).

  • מאגר מודלי הערכת התנוחה MoveNet של ST המצורף נוקה: הוסרו וריאנטים מיותרים פר-טנזור (_pt) ווריאנטים כפולים של singlepose/st_movenet, ומודלי מפת החום פר-ערוץ שנותרו שמותם שונו ל-movenet_singlepose_192, movenet_singlepose_224 ו-movenet_singlepose_256 (18f66c4c1).

  • הוסר מודל הפילוח הסמנטי DeepLabV3 המצורף ונכסי הדוגמה שלו ממאגר המודלים (a929e0dc1).

שינויים שוברים

שינויים בהתנהגות הגלויה למשתמש ובנכסים המצורפים בין v4.8.8 ל-v4.8.9.

  • בעת החיבור, חוצץ הפריימים (frame buffer) משתמש כעת תמיד בברירת המחדל המעדיפה JPEG של הלוח ומתעלם מכל בחירת JPG/RAW שנשמרה בעבר לכל לוח (c48831224).

  • סנכרון ברקע של תיקיות הייבוא Examples ו-Documents/OpenMV מושבת כברירת מחדל והמתג שלו מוסתר (478f83e97).

  • כמה מודלים מצורפים הוסרו או שמותם שונו: מודל הפילוח הסמנטי DeepLabV3 הוסר, ומודלי MoveNet של ST קוצצו ושמותם שונו ל-movenet_singlepose_192/224/256. יש לעדכן סקריפטים המפנים לשמות הקבצים הישנים של המודלים (a929e0dc1, 18f66c4c1).