v3.6.3

v3.6.3 מפעילה TensorFlow על ה-OpenMV 3 / F7, מוסיפה תמיכה במודלים מסוג uint8/int8/float32, מעבירה את חיישני החום MLX90640/AMG8833 ל-I2C חומרתי, מוסיפה היסטוגרמות של הפרשי תמונה והיסט לתיקון העדשה, ומעצבת מחדש את בקרת הקריאה. קבועי ה-hint של image שונו את שמם ושינוי-קנה-המידה של draw_image() השתנה — קראו את השינויים שוברי-התאימות שלהלן.

עיקרי הדברים

  • TensorFlow על OpenMV 3 / F7tf הופעל במצלמות מבוססות-F7, עם תמיכה במודלים מסוג uint8/int8/float32.

  • חיישני חום — MLX90640 ו-AMG8833 הועברו ל-I2C חומרתי עם מנהל התקן MLX90640 חדש.

  • עיבוד תמונה — תמיכה בהפרשי תמונה ב-get_histogram() ותיקון היסט עבור lens_corr().

  • draw_image — לוחות alpha במצב גווני אפור ובקרת קריאה מעוצבת מחדש.

  • שובר תאימות: קבועי ה-hint של image שונו את שמם ושינוי-קנה-המידה השלילי של draw_image() הוסר — ראו את השינויים שוברי-התאימות.

תכונות חדשות

  • TensorFlow — הופעל tf על OpenMV 3 / F7 ועודכן TensorFlow לתמיכה במודלים מסוג uint8 / int8 / float32.

  • get_histogram() — נוספה יכולת הפרשי תמונה.

  • lens_corr() — נוסף תיקון היסט.

  • draw_image() — לוחות alpha עובדים כעת במצב גווני אפור (לא-בילינארי), עם לוחות alpha באינטרפולציה בילינארית ומרכוז תמונה; קוד בקרת קריאה חדש.

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

  • הועברו ה-MLX90640 וה-AMG8833 ל-I2C חומרתי (מנהל התקן MLX90640 חדש, I2C חומרתי בתצורת הלוח עבור חיישנים חיצוניים, ניסיונות קריאה חוזרים גבוהים יותר ל-MLX), הופעל I2C fast-mode-plus במצלמות התומכות בכך, נוספו קריאת/כתיבת בייטים ב-cambus עם תזמוני I2C, ודולג על החלת alpha כשהוא 0 לשם ביצועים.

תיקוני באגים

מצלמה ועיבוד תמונה:

  • תוקן והואץ תיקון הסיבוב, באג ה-Bayer-to-YCbCr בקצה השמאלי, ונוסף תיקון קצה ל-bayer_to_y() / bayer_to_binary().

כלים:

  • תוקנו שגיאות Python 2/3 וסדר הקריאה של get_statistics().

שינויים שוברי-תאימות ב-API

שבירות API גלויות-למשתמש בין v3.6.2 ל-v3.6.3. היקף: מודולי C של Python ב-modules/ וספריות Python ב-scripts/libraries/.

כל שינוי מתויג לפי ההשפעה שלו:

  • minor — API צר; משפיע רק על סקריפטים שהשתמשו בו.

  • behavior — אותו API, תוצאות שונות; בדקו מחדש סקריפטים מכווננים.

השינויים מקובצים לפי השפעה בסדר זה. אם אתם רק רוצים לעדכן את הקוד שלכם, קפצו ל-רשימת מעבר בסוף. כל hash של commit מקושר ל-diff שלו ב-GitHub.

קבועי ה-hint של image שונו את שמם (minor)

קבועי ה-hint של ציור ב-image שונו את שמם: image.INTERPOLATE_BILINEARimage.IMAGE_HINT_BILINEAR ו-image.IMAGE_CENTERimage.IMAGE_HINT_CENTER. סקריפטים שמעבירים את שמות הקבועים הישנים ל-draw_image() חייבים להשתמש בשמות החדשים. (אלה שונו שוב ל-image.BILINEAR / image.CENTER ב-v3.7.0.)

Commits: 8f8872537

שינוי-קנה-המידה השלילי של draw_image() הוסר (behavior)

image.draw_image() כבר לא תומך בשינוי-קנה-מידה שלילי, ונקודת הדגימה של הטקסטורה הועברה למרכז הפיקסל. סקריפטים שהסתמכו על שינוי-קנה-מידה שלילי כדי להפוך תמונה במהלך הציור חייבים להפוך אותה בדרך אחרת, והפלט עשוי לזוז בעד חצי פיקסל ביחס לקודם.

Commits: 7e83dbb92

רשימת מעבר

שנו את השם של image.INTERPOLATE_BILINEAR / image.IMAGE_CENTER ל-image.IMAGE_HINT_BILINEAR / image.IMAGE_HINT_CENTER (שינוי השם של קבועי ה-hint), והחליפו כל שינוי-קנה-מידה שלילי של draw_image() בהיפוך מפורש (שינוי קנה-המידה של draw_image). כל שאר הסקריפטים רצים ללא שינוי.