v4.4.0¶
v4.4.0 adaugă un API tf.regression(), suport pentru FLIR Lepton pe OpenMV Cam H7 Pro, suport pentru coprocesorul Cortex-M4 pe Arduino Nicla Vision și MicroPython 1.19. Câteva module specifice plăcilor și comportamente WiFi/LCD s-au schimbat — citiți modificările incompatibile de mai jos.
Aspecte importante¶
tf.regression()— rulează modele de regresie TensorFlow Lite cu intrare 1D/ieșire 1D.Suport pentru senzorul termic FLIR Lepton pe OpenMV Cam H7 Pro.
Arduino Nicla Vision — suport pentru coprocesorul Cortex-M4, MicroSpeech funcțional, LPUART1.
MicroPython actualizat la 1.19; ulab actualizat la 5.1.1.
Incompatibil: modulele
lcd/tvale plăcii Nicla Vision au fost dezactivate, iar driverul WiFi al plăcii RP2040 Connect s-a schimbat — vedeți modificările incompatibile.
Funcționalități noi¶
tf.regression(model, input_array)— o funcție nouă pentru modele de regresie TensorFlow Lite cu intrare/ieșire 1D, care returnează o listă de ieșiri în virgulă mobilă.Controale GC2145 —
sensor.set_auto_exposure()șisensor.set_auto_whitebal()sunt acum funcționale pe GC2145 (expunerea automată / balansul de alb pot fi dezactivate; expunerea/amplificarea explicite nu sunt încă acceptate).Arduino Nicla Vision — au fost activate suportul pentru coprocesorul Cortex-M4 (CM4) și periphericul LPUART1.
machine.Pin— pinulUSB_VBUSeste acum expus scripturilor utilizatorului.
Alte modificări și îmbunătățiri¶
MicroPython actualizat la 1.19; ulab la 5.1.1; driverul WiFi cyw43 inclus a fost actualizat.
Porturile RP2 (Arduino Nano RP2040 Connect) și nRF (Arduino Nano 33 BLE Sense) au trecut la noul depanator bazat pe TinyUSB pentru conexiunea cu IDE-ul/gazda.
XCLK al OV7670 a fost ridicat de la 12 MHz la 24 MHz (set de registre actualizat).
Corecturi de erori¶
Cameră și senzori:
Statisticile de temperatură ale blob-urilor pe OpenMV Pure Thermal folosesc acum imaginea IR în loc de imaginea color, astfel încât temperatura medie per blob este corectă.
S-a corectat gestionarea ROI și scalarea suprafeței în
draw_image()pentru o ieșire scalată mai exactă.IMU este reinițializat după o resetare soft, astfel încât continuă să funcționeze când magistrala SPI a IMU este activată.
Sistem:
S-au corectat problemele de comparare cu/fără semn în detectarea de caracteristici FAST/AGAST, detectarea de blob-uri, CLAHE și driverele LCD/TV; s-au corectat dezinițializarea GPIO-cameră / SPI / DAC pe STM32, maparea pinilor LPUART pe H7 și înregistrarea modulului
nndin STM32Cube.AI.
Arduino Nicla Vision:
MicroSpeech funcționează acum (tampon PDM dublat, exemplu adăugat), iar modul standby de consum redus a fost corectat.
Suport hardware și plăci¶
OpenMV Cam H7 Pro — suport pentru senzorul termic FLIR Lepton.
Arduino Nicla Vision — coprocesor CM4, LPUART1, MicroSpeech, standby de consum redus.
Modificări incompatibile ale API-ului¶
Modificări incompatibile ale API-ului vizibile pentru utilizator între v4.3.3 și v4.4.0. Domeniu: module C Python din modules/ și biblioteci Python din scripts/libraries/.
Fiecare modificare este etichetată cu impactul său:
minor — API restrâns; afectează doar scripturile de pe o anumită placă.
comportament — același API, rezultate diferite; reverificați scripturile reglate fin.
Modificările sunt grupate după impact în această ordine. Dacă doriți doar să portați codul, săriți la lista de verificare pentru migrare de la final. Fiecare hash de commit are legătură către diff-ul său de pe GitHub.
Module Nicla Vision și WiFi RP2040 (minor)¶
Pe Arduino Nicla Vision, modulele lcd și tv au fost dezactivate pentru a elibera memorie pentru suportul coprocesorului CM4 — scripturile care folosesc aceste module pe Nicla Vision nu le vor mai găsi. Arduino Nano RP2040 Connect a trecut de la implementarea WiFi/nina personalizată de OpenMV la driverul/modulul NINA-W10 din amonte al MicroPython, al cărui API diferă.
Timeout socket WiFi și inversare verticală LCD (comportament)¶
Un timeout al unui socket WINC1500 returnează acum o eroare neblocantă (EWOULDBLOCK) în loc de ETIMEDOUT, astfel încât socket-urile expirate nu mai sunt închise în mod neașteptat — codul care prindea ETIMEDOUT trebuie actualizat. Modulul display al shield-ului LCD SPI ridică acum ValueError („Vertical flip requires triple buffering!”) când se solicită un y_scale negativ fără triple buffering activat.
Lista de verificare pentru migrare¶
Pentru o portare curată la v4.4.0, munca tipică este:
Pe Nicla Vision, încetați să folosiți
lcd/tv; pe Nano RP2040 Connect, portați codul WiFi la driverul NINA-W10 din amonte (modificările de modul ale plăcii).Actualizați codul de socket WINC1500 pentru a aștepta
EWOULDBLOCKla timeout și activați triple buffering pentru ieșirea LCD inversată vertical (modificările de comportament).