v4.1.2

v4.1.2 ajoute des formats de pixels avancés avec dématriçage complet, le traitement d’images YUV, un nouveau module imu (LSM6DSOX), l’audio par microphone numérique DFSDM et la prise en charge du capteur événementiel FrogEye2020. Le comportement de erode()/dilate() et la bibliothèque RPC de bureau ont changé — consultez les changements incompatibles ci-dessous.

Points forts

  • Formats de pixels avancés avec prise en charge du dématriçage complet.

  • Traitement d’images YUV.

  • Nouveau module imu — prise en charge du LSM6DSOX (orientation configurable, MLC).

  • Audio DFSDM — entrée par microphone numérique.

  • Prise en charge du capteur événementiel FrogEye2020.

  • Incompatible : erode()/dilate() opèrent désormais sur les pixels non blancs et une classe RPC de bureau a été renommée — voir les changements incompatibles.

Nouvelles fonctionnalités

  • Formats de pixels avancés — nouvelle gestion des formats de pixels avec prise en charge du dématriçage complet (Bayer → RGB/niveaux de gris à travers les formats).

  • Traitement d’images YUV — ajout de la prise en charge du traitement d’images YUV.

  • Module imu — un nouveau module IMU avec le pilote LSM6DSOX, une orientation IMU configurable et la prise en charge du machine-learning-core (MLC).

  • Audio — ajout de la prise en charge du microphone numérique DFSDM au module audio.

  • FrogEye2020 — nouveau pilote de capteur événementiel FrogEye2020, avec des exemples de scripts pour caméra événementielle.

Autres changements et améliorations

  • L’encodage JPEG logiciel est ~10 % plus rapide (gestion des bits améliorée).

  • machine.I2C utilise désormais le périphérique I2C matériel sur STM32 H7.

  • find_apriltags(), find_line_segments() et le chemin d’entrée TensorFlow ont été déplacés vers le backend draw_image unifié.

Corrections de bogues

  • Correction des situations de débordement de l’encodage JPEG logiciel, de compress du module image et de la détection de format IS_JPEG.

Matériel et prise en charge des cartes

  • Capteur événementiel FrogEye2020.

  • Arduino Nicla Vision (BORMIO) — brochage et VID/PID USB mis à jour.

  • Arduino Portenta H7 — horloge de capteur par défaut réglée à 12 MHz.

Changements d’API incompatibles

Ruptures d’API visibles par l’utilisateur entre v4.1.1 et v4.1.2. Portée : modules C Python dans modules/ et bibliothèques Python dans scripts/libraries/.

Chaque changement est étiqueté selon son impact :

  • mineur — API restreinte ; outillage côté hôte uniquement.

  • comportement — même API, résultats différents ; revérifiez les scripts réglés.

Les changements sont regroupés par impact dans cet ordre. Chaque hachage de commit renvoie à son diff sur GitHub.

Classe de la bibliothèque RPC de bureau renommée (mineur)

Dans la bibliothèque RPC de bureau côté hôte (tools/rpc/rpc.py), la classe rpc_wifi_or_ethernet_master a été renommée en rpc_network_master, et les scripts hôtes RTSP/RPC ont été basculés vers l’utilisation des bibliothèques réseau standard. Cela n’affecte que les programmes sur PC hôte ; les scripts embarqués sur la caméra ne sont pas affectés.

Commits : a2f016ba0, a4858015c

erode() / dilate() opèrent sur les pixels non blancs (comportement)

Image.erode() et Image.dilate() ont été corrigés pour opérer sur les pixels non blancs au lieu des seuls pixels blancs. Les résultats diffèrent des versions précédentes pour les images non binaires / non exclusivement blanches — revérifiez les pipelines de morphologie réglés.

Commit : 899f80759

Liste de vérification de migration

Pour un portage propre vers v4.1.2 : dans les programmes RPC sur PC hôte, renommez rpc_wifi_or_ethernet_master en rpc_network_master (le renommage RPC), et revérifiez les résultats de erode() / dilate() sur les images non binaires (le changement de morphologie). Les scripts embarqués sur la caméra s’exécutent par ailleurs sans modification.