v3.6.5

v3.6.5 оновлює TensorFlow та ulab, суттєво покращує камеру HM01B0 (довільні роздільні здатності, QQVGA, обрізання, set_auto_exposure(), та виправлення мерехтіння), та додає підтримку зовнішнього SDRAM та виробничих плат для Portenta. Застарілі інструменти/приклади навчання CMSIS-NN вилучено, а кадровий буфер OpenMV 4 Plus зменшено — ознайомтеся зі змінами, що порушують зворотну сумісність.

Основні можливості

  • HM01B0 — довільні роздільні здатності, QQVGA, обрізання та підтримка set_auto_exposure(), плюс автоматичне виправлення мерехтіння витримки.

  • TensorFlow / ulab оновлено до останніх версій.

  • Portenta — використання зовнішнього SDRAM та файли виробничих плат.

  • Виправлення — корекція лінзи, якість зображення при низьких роздільних здатностях, та виправлення тактового генератора FPS.

  • Несумісні зміни: застарілі інструменти навчання/конвертації CMSIS-NN та приклади вилучено, а кадровий буфер OpenMV 4 Plus зменшено — дивіться зміни, що порушують сумісність.

Нові можливості

  • HM01B0 — додано підтримку довільних роздільних здатностей, QQVGA та додаткові заглушки, обрізання на стороні датчика, та підтримку sensor.set_auto_exposure().

  • Зчитування Apriltag — додано приклад відстеження apriltag з керуванням зчитуванням.

Інші зміни та вдосконалення

  • Оновлено TensorFlow та ulab до останніх версій; додано використання зовнішнього SDRAM Portenta та файли виробничих/CI плат; очищено драйвер MT9V034 та функції доступу до кадрового буфера.

Виправлення помилок

Камера та обробка зображень:

  • Виправлено мерехтіння під час автоматичної витримки на HM01B0, корекцію лінзи, якість зображення при нижчих роздільних здатностях, копіювання рядка OV5640/JPEG (dest_fb), тактовий генератор FPS, та повернення 0, коли bpp від’ємний; вилучено непотрібне горизонтальне перевертання HM01B0.

Апаратне забезпечення та підтримка плат

  • HM01B0 — довільні роздільні здатності, QQVGA та обрізання.

  • Arduino Portenta H7 — зовнішній SDRAM та оновлені файли виробничих плат.

Несумісні зміни API

Зміни API, помітні для користувача, між v3.6.4 та v3.6.5. Область застосування: C-модулі Python у modules/, бібліотеки Python у scripts/libraries/, та пакетні інструменти/приклади.

Кожна зміна позначена ступенем впливу:

  • поведінковий — той самий API, різні результати; перевірте налаштовані скрипти.

  • інструментальний — впливає на інструменти збірки/конвертації або пакетні приклади, а не на API Python мікропрограми.

Зміни згруповано за ступенем впливу в такому порядку. Якщо ви просто хочете перенести свій код, перейдіть до контрольного списку міграції в кінці. Кожен хеш коміту веде до його diff на GitHub.

Кадровий буфер OpenMV 4 Plus зменшено (поведінковий)

Кадровий буфер OpenMV 4 Plus зменшено до 20 МБ (та розмір буфера OpenMV 2/3 виправлено). Скрипти з великим використанням пам’яті на OpenMV 4 Plus, що виділяли дуже великі кадри/об’єкти з кадрового буфера, тепер можуть швидше досягти лімітів виділення і мають бути перевірені.

Коміти: 3a790a827

Застарілі інструменти та приклади CMSIS-NN вилучено (інструментальний)

Застарілі інструменти навчання/конвертації моделей CMSIS-NN (nn_convert.py, nn_quantizer.py, файли моделей LeNet/CIFAR/smile) та скрипти прикладів 25-Machine-Learning/nn_*.py вилучено. Модуль nn сам по собі все ще працює у цьому релізі (він вилучається пізніше, у v3.9.0), але інструменти генерації моделей CMSIS-NN зникли — натомість використовуйте робочий процес TensorFlow Lite (tf).

Коміти: 588f79a62

Контрольний список міграції

Перевірте великі виділення кадрового буфера на OpenMV 4 Plus відносно зменшеного буфера 20 МБ (зміна кадрового буфера), та перейдіть на робочий процес TensorFlow Lite для генерації моделей CMSIS-NN (вилучення інструментів CMSIS-NN). Усі інші скрипти працюють без змін.