v3.6.5

v3.6.5 uppdaterar TensorFlow och ulab, förbättrar HM01B0-kameran avsevärt (godtyckliga upplösningar, QQVGA, beskärning, set_auto_exposure() och en anti-flimmerfix) och ger stöd för Portentas externa SDRAM och produktionskort. De äldre CMSIS-NN-tränings­verktygen/-exemplen togs bort och bildbufferten på OpenMV 4 Plus minskades — läs de brytande ändringarna nedan.

Höjdpunkter

  • HM01B0 — stöd för godtyckliga upplösningar, QQVGA, beskärning och set_auto_exposure(), plus en flimmerfix för automatisk exponering.

  • TensorFlow / ulab uppdaterade till sina senaste versioner.

  • Portenta — användning av externt SDRAM och produktionskortsfiler.

  • Fixar — linskorrigering, bildkvalitet vid låga upplösningar och en FPS-klockfix.

  • Brytande: de äldre CMSIS-NN-tränings-/konverteringsverktygen och -exemplen togs bort och bildbufferten på OpenMV 4 Plus minskades — se de brytande ändringarna.

Nya funktioner

  • HM01B0 — lade till stöd för godtyckliga upplösningar, QQVGA och ytterligare stubbar, sensorsidig beskärning samt stöd för sensor.set_auto_exposure().

  • Apriltag-readout — lade till ett exempel på apriltag-spårning med readout-styrning.

Övriga ändringar och förbättringar

  • Uppdaterade TensorFlow och ulab till sina senaste versioner; lade till användning av Portentas externa SDRAM och produktions-/CI-kortsfiler; städade upp MT9V034-drivrutinen och bildbuffert-accessorfunktionerna.

Buggfixar

Kamera och bildbehandling:

  • Fixade flimmer under automatisk exponering på HM01B0, linskorrigering, bildkvalitet vid lägre upplösningar, OV5640/JPEG-radkopian (dest_fb), FPS-klockan och returnering av 0 när bpp är negativt; tog bort en onödig horisontell vändning på HM01B0.

Hårdvaru- och kortstöd

  • HM01B0 — godtyckliga upplösningar, QQVGA och beskärning.

  • Arduino Portenta H7 — externt SDRAM och uppdaterade produktionskortsfiler.

Brytande API-ändringar

Användarsynliga API-brott mellan v3.6.4 och v3.6.5. Omfattning: Python-C-moduler i modules/, Python-bibliotek i scripts/libraries/ samt de medföljande verktygen/exemplen.

Varje ändring är märkt med sin påverkan:

  • behavior — samma API, andra resultat; kontrollera finjusterade skript på nytt.

  • tooling — påverkar bygg-/konverteringsverktygen eller de medföljande exemplen, inte den fasta programvarans Python-API.

Ändringarna är grupperade efter påverkan i den ordningen. Om du bara vill porta din kod, hoppa till migrationschecklistan i slutet. Varje commit-hash länkar till sin diff på GitHub.

Bildbufferten på OpenMV 4 Plus minskad (behavior)

Bildbufferten på OpenMV 4 Plus minskades till 20 MB (och buffertstorleken för OpenMV 2/3 korrigerades). Minnessnåla skript på OpenMV 4 Plus som allokerade mycket stora bildrutor/objekt från bildbufferten kan nu nå allokeringsgränserna tidigare och bör kontrolleras på nytt.

Commits: 3a790a827

Äldre CMSIS-NN-verktyg och -exempel borttagna (tooling)

De äldre CMSIS-NN-verktygen för modellträning/-konvertering (nn_convert.py, nn_quantizer.py, modellfilerna för LeNet/CIFAR/smile) och exempelskripten 25-Machine-Learning/nn_*.py togs bort. Själva nn-modulen fungerar fortfarande i den här releasen (den tas bort senare, i v3.9.0), men verktygen för CMSIS-NN-modellgenerering är borta — använd TensorFlow Lite-arbetsflödet (tf) i stället.

Commits: 588f79a62

Migrationschecklista

Kontrollera stora bildbuffertallokeringar på OpenMV 4 Plus på nytt mot den minskade 20 MB-bildbufferten (bildbuffertändringen), och flytta CMSIS-NN-modellgenerering till TensorFlow Lite-arbetsflödet (borttagningen av CMSIS-NN-verktyg). Alla andra skript körs oförändrade.