v3.9.1

v3.9.1 добавляет библиотеку LoRa для Arduino Portenta, управление частотой кадров sensor (set_framerate() / get_framerate()), обновления draw_image() на месте и exFAT для Portenta, а также обновляет ulab до 2.1.3 с более точной интерполированной таблицей цветов LAB. Обновление ulab и изменение цвета LAB являются изменениями поведения — ознакомьтесь с критическими изменениями ниже.

Основные моменты

  • Библиотека LoRa для Arduino Portenta.

  • Управление частотой кадровsensor.set_framerate() / sensor.get_framerate().

  • Обновления draw_image() на месте и консолидированные операции с изображениями to_* / copy / crop.

  • Файловая система exFAT включена на Portenta.

  • Критическое: ulab был обновлён до 2.1.3, и преобразование цвета теперь использует интерполированную таблицу LAB — см. критические изменения.

Новые возможности

  • LoRa — добавлена библиотека LoRa для Arduino Portenta.

  • Частота кадров датчика — добавлены sensor.set_framerate() и sensor.get_framerate().

  • draw_imageimage.draw_image() теперь поддерживает обновления на месте.

  • exFAT — включена файловая система exFAT на Portenta.

Прочие изменения и улучшения

  • Централизованы и улучшены операции с изображениями to_* / copy / crop, и copy_to_fb стал умнее в отношении использования ресурсов; обновлён драйвер HM01B0; обновлены сборочные скрипты из вышестоящего репозитория.

Исправления ошибок

Камера и датчики:

  • Исправлено значение по умолчанию OV5640 SYSTEM_CTROL0 в sleep(), значение регистра OSC по умолчанию HM01B0 и полярность пиксельного тактового сигнала HM01B0.

Система:

  • Исправления низкого энергопотребления.

Критические изменения API

Видимые пользователю изменения API между v3.9.0 и v3.9.1. Область: C-модули Python в modules/ и библиотеки Python в scripts/libraries/.

Оба критических изменения являются изменениями behavior (тот же API, другие результаты) — перепроверьте затронутые скрипты. Каждый хеш коммита ссылается на свой diff на GitHub.

ulab обновлён до 2.1.3 (behavior)

Встроенный модуль ulab (похожий на NumPy) был обновлён до 2.1.3. Поведение массивов/числовых операций следует за вышестоящим ulab 2.1.3; перепроверьте скрипты, зависящие от поведения ulab конкретной версии.

Коммиты: 2a190f35c

Интерполированная таблица цветов LAB (behavior)

Преобразование цвета теперь использует интерполированную таблицу LAB, что делает операции на основе LAB (цветовые пороги, rgb_to_lab / lab_to_rgb, статистика цвета) более точными. Результаты немного отличаются от предыдущих релизов, поэтому перепроверьте и перенастройте цветовые пороги, откалиброванные под старую таблицу.

Коммиты: 690a39c0c

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

Перепроверьте скрипты, зависящие от поведения ulab конкретной версии (обновление ulab), и перенастройте цветовые пороги на основе LAB под интерполированную таблицу (изменение цвета LAB). Все остальные скрипты работают без изменений.