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).Аудио — в модуль
audioдобавлена поддержка цифрового микрофона DFSDM.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/.
Каждое изменение помечено степенью его влияния:
minor — узкое API; только инструментарий на стороне хоста.
behavior — то же API, другие результаты; перепроверьте настроенные скрипты.
Изменения сгруппированы по влиянию в этом порядке. Каждый хеш коммита ведёт к его diff на GitHub.
Класс десктопной библиотеки RPC переименован (minor)¶
В десктопной библиотеке RPC на стороне хоста (tools/rpc/rpc.py) класс rpc_wifi_or_ethernet_master был переименован в rpc_network_master, а хост-скрипты RTSP/RPC были переключены на использование стандартных сетевых библиотек. Это затрагивает только программы на хост-ПК; скрипты на камере не затронуты.
erode() / dilate() работают с не-белыми пикселями (behavior)¶
Image.erode() и Image.dilate() были исправлены так, чтобы работать с не-белыми пикселями, а не только с белыми. Результаты отличаются от предыдущих выпусков для не-бинарных / не-только-белых изображений — перепроверьте настроенные конвейеры морфологии.
Коммит: 899f80759
Контрольный список миграции¶
Для чистого переноса на v4.1.2: в программах RPC на хост-ПК переименуйте rpc_wifi_or_ethernet_master в rpc_network_master (переименование RPC) и перепроверьте все результаты erode() / dilate() на не-бинарных изображениях (изменение морфологии). В остальном скрипты на камере работают без изменений.