v4.1.2

v4.1.2 додає розширені формати пікселів із повним дебаєризацією, обробку зображень YUV, новий модуль imu (LSM6DSOX), цифровий мікрофонний аудіовхід DFSDM та підтримку подієвого датчика FrogEye2020. Поведінка erode()/dilate() та бібліотека RPC для робочого столу змінились — перегляньте несумісні зміни нижче.

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

  • Розширені формати пікселів із підтримкою повного дебаєризації.

  • Обробка зображень YUV.

  • Новий модуль imu — підтримка LSM6DSOX (конфігурована орієнтація, MLC).

  • Аудіо DFSDM — цифровий мікрофонний вхід.

  • Підтримка подієвого датчика FrogEye2020.

  • Несумісна зміна: erode()/dilate() тепер працюють на не-білих пікселях, а клас RPC для робочого столу перейменовано — дивіться несумісні зміни.

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

  • Розширені формати пікселів — нова обробка форматів пікселів із підтримкою повного дебаєризації (Bayer → RGB/grayscale в різних форматах).

  • Обробка зображень YUV — додано підтримку обробки YUV-зображень.

  • Модуль imu — новий IMU-модуль із драйвером LSM6DSOX, конфігурованою орієнтацією IMU та підтримкою ядра машинного навчання (MLC).

  • Аудіо — додано підтримку цифрового мікрофона DFSDM до модуля audio.

  • FrogEye2020 — новий драйвер подієвого датчика FrogEye2020 із прикладами скриптів для подієвих камер.

Інші зміни та покращення

  • Програмне кодування JPEG приблизно на 10 % швидше (покращена обробка бітів).

  • machine.I2C тепер використовує апаратний I2C-периферійний пристрій на STM32 H7.

  • find_apriltags(), find_line_segments() та шлях вхідних даних TensorFlow переведено на уніфікований бекенд draw_image.

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

  • Виправлено ситуації переповнення при програмному кодуванні JPEG, compress модуля image та визначення формату IS_JPEG.

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

  • Подієвий датчик FrogEye2020.

  • Arduino Nicla Vision (BORMIO) — оновлено розпинування та USB VID/PID.

  • Arduino Portenta H7 — тактова частота датчика за замовчуванням встановлена на 12 МГц.

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

Видимі користувачу несумісні зміни API між v4.1.1 та v4.1.2. Область: C-модулі Python у modules/ та бібліотеки Python у scripts/libraries/.

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

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

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

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

Клас бібліотеки RPC для робочого столу перейменовано (незначний)

У бібліотеці RPC для робочого столу на стороні хоста (tools/rpc/rpc.py) клас rpc_wifi_or_ethernet_master перейменовано на rpc_network_master, а хостові скрипти RTSP/RPC переведено на стандартні мережеві бібліотеки. Це стосується лише програм на стороні ПК; скрипти на камері не зачіпаються.

Коміти: a2f016ba0, a4858015c

erode() / dilate() працюють на не-білих пікселях (поведінка)

Image.erode() та Image.dilate() виправлено для роботи на не-білих пікселях замість лише білих. Результати відрізняються від попередніх версій для небінарних / не лише білих зображень — перевірте налаштовані конвеєри морфологічної обробки.

Коміт: 899f80759

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

Для чистого перенесення до v4.1.2: у хостових програмах RPC на ПК перейменуйте rpc_wifi_or_ethernet_master на rpc_network_master (перейменування RPC), а також перевірте всі результати erode() / dilate() на небінарних зображеннях (зміна морфології). Скрипти на камері в іншому випадку працюють без змін.