v3.6.5

v3.6.5 met à jour TensorFlow et ulab, améliore considérablement la caméra HM01B0 (résolutions arbitraires, QQVGA, recadrage, set_auto_exposure(), et une correction anti-scintillement), et apporte la prise en charge de la SDRAM externe et des cartes de production du Portenta. L’outillage/les exemples d’entraînement CMSIS-NN hérités ont été supprimés et le tampon d’image de l’OpenMV 4 Plus a été réduit — consultez les changements incompatibles ci-dessous.

Points forts

  • HM01B0 — prise en charge des résolutions arbitraires, du QQVGA, du recadrage et de set_auto_exposure(), plus une correction du scintillement de l’exposition automatique.

  • TensorFlow / ulab mis à jour vers leurs dernières versions.

  • Portenta — utilisation de la SDRAM externe et fichiers de carte de production.

  • Corrections — correction d’objectif, qualité d’image aux basses résolutions, et une correction de l’horloge FPS.

  • Incompatibilité : l’outillage et les exemples d’entraînement/conversion CMSIS-NN hérités ont été supprimés et le tampon d’image de l’OpenMV 4 Plus a été réduit — voir les changements incompatibles.

Nouvelles fonctionnalités

  • HM01B0 — ajout de la prise en charge des résolutions arbitraires, du QQVGA et de stubs supplémentaires, du recadrage côté capteur, et de la prise en charge de sensor.set_auto_exposure().

  • Lecture Apriltag — ajout d’un exemple de suivi d’apriltag avec contrôle de lecture.

Autres changements et améliorations

  • Mise à jour de TensorFlow et de ulab vers leurs dernières versions ; ajout de l’utilisation de la SDRAM externe du Portenta et des fichiers de carte de production/CI ; nettoyage du pilote MT9V034 et des fonctions d’accès au tampon d’image.

Corrections de bugs

Caméra et imagerie :

  • Correction du scintillement pendant l’exposition automatique sur le HM01B0, de la correction d’objectif, de la qualité d’image aux résolutions plus basses, de la copie de ligne OV5640/JPEG (dest_fb), de l’horloge FPS, et du renvoi de 0 lorsque bpp est négatif ; suppression d’un retournement horizontal inutile du HM01B0.

Matériel et prise en charge des cartes

  • HM01B0 — résolutions arbitraires, QQVGA et recadrage.

  • Arduino Portenta H7 — SDRAM externe et fichiers de carte de production mis à jour.

Changements d’API incompatibles

Ruptures d’API visibles par l’utilisateur entre v3.6.4 et v3.6.5. Portée : modules C Python dans modules/, bibliothèques Python dans scripts/libraries/, et l’outillage/les exemples fournis.

Chaque changement est marqué selon son impact :

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

  • tooling — affecte l’outillage de build/conversion ou les exemples fournis, et non l’API Python du micrologiciel.

Les changements sont regroupés par impact dans cet ordre. Si vous souhaitez simplement porter votre code, passez à la liste de contrôle de migration à la fin. Chaque hash de commit renvoie vers son diff sur GitHub.

Tampon d’image de l’OpenMV 4 Plus réduit (behavior)

Le tampon d’image de l’OpenMV 4 Plus a été réduit à 20 Mo (et la taille du tampon de l’OpenMV 2/3 a été corrigée). Les scripts à mémoire contrainte sur l’OpenMV 4 Plus qui allouaient de très grandes trames/objets depuis le tampon d’image peuvent désormais atteindre les limites d’allocation plus tôt et doivent être revérifiés.

Commits : 3a790a827

Outillage et exemples CMSIS-NN hérités supprimés (tooling)

L’outillage hérité d’entraînement/conversion de modèles CMSIS-NN (nn_convert.py, nn_quantizer.py, les fichiers de modèles LeNet/CIFAR/smile) et les scripts d’exemple 25-Machine-Learning/nn_*.py ont été supprimés. Le module nn lui-même fonctionne toujours dans cette version (il est supprimé plus tard, dans la v3.9.0), mais l’outillage de génération de modèles CMSIS-NN a disparu — utilisez le flux de travail TensorFlow Lite (tf) à la place.

Commits : 588f79a62

Liste de contrôle de migration

Revérifiez les grandes allocations du tampon d’image sur l’OpenMV 4 Plus par rapport au tampon d’image réduit à 20 Mo (le changement de tampon d’image), et déplacez la génération de modèles CMSIS-NN vers le flux de travail TensorFlow Lite (la suppression de l’outillage CMSIS-NN). Tous les autres scripts s’exécutent sans modification.