v2.5.0

v2.5.0 trasforma il Model Editor in un completo Dataset Editor per il machine learning, passa il flashing del firmware allo strumento multipiattaforma dfu-util e aggiunge il supporto per le camere OpenMV con marchio Arduino. Questa release rimane sulla base Qt Creator 4.0.2 e non contiene modifiche che rompono la compatibilità per i progetti esistenti.

In evidenza

  • Dataset Editor sostituisce il vecchio Model Editor, consentendo di creare dataset di immagini per il machine learning direttamente dalla camera con cartelle di classi denominate e un riquadro di anteprima in tempo reale.

  • Export Dataset esporta un dataset come .zip compatibile con Edge Impulse.

  • Flashing del firmware con dfu-util sostituisce il percorso DfuSeCommand.exe / pydfu.py riservato a Windows, eliminando la necessità di installare manualmente libusb/pyusb su macOS e Linux.

  • Supporto Arduino Portenta H7 riconosce le camere OpenMV con marchio Arduino per il rilevamento seriale, la connessione al bootloader e il download del firmware DFU.

  • Avanzamento del download per gli aggiornamenti di firmware/pacchetti è ora reale e annullabile, con fasi separate di Downloading e Installing.

Nuove funzionalità

  • Dataset Editor. Il Model Editor è stato trasformato in un completo Dataset Editor per la creazione di dataset di immagini per il machine learning. Il menu Dataset Editor aggiunge le azioni New Dataset, Open Dataset e Close Dataset; un nuovo dataset viene pre-popolato con un template dataset_capture_script.py, e viene generato e mantenuto sincronizzato un labels.txt man mano che vengono aggiunte le cartelle delle classi. Le immagini vengono catturate sulla camera in cartelle di classi denominate, mostrate in un albero basato su QFileSystemModel con apertura tramite doppio clic e un menu contestuale Delete/Rename, accanto a un riquadro di anteprima dell’immagine in tempo reale (aa0101189, 96cbcd97a, f1a39272b, 28cc1bfbd).

  • Export Dataset. Una nuova azione esporta il dataset come .zip, appiattendo le immagini in file con nome di classe <class>.<snapshot> compatibili con Edge Impulse, mostrato con una finestra di avanzamento annullabile. Le cartelle delle classi sono passate da numerate (NNNNN.name.class) a semplici name.class (f1e6b6a0d, 0297d4b9e, aa69ab62c).

  • Flashing del firmware con dfu-util. Il flashing del firmware è stato riscritto per usare lo strumento multipiattaforma dfu-util invece del vecchio percorso Windows DfuSeCommand.exe / pydfu.py. connectClicked() ora chiama downloadFirmware() e le vecchie finestre di istruzioni «PyDFU requires libusb» sono scomparse, eliminando il requisito di installare manualmente libusb/pyusb su macOS e Linux (2bf0b71c7, 5396b7072, d64cb05b1).

  • Icone di avvio per Desktop e Linux. Su Windows l’installer crea ora un collegamento sul Desktop oltre alla voce nel menu Start, e la build Linux installa ora un’icona dell’applicazione (openmv.png) tramite bin.pro. Il riferimento Icon del file .desktop è stato aggiunto ma successivamente rimosso, quindi il launcher Linux viene distribuito senza una voce Icon= (327fc2f69, ccca0859f, b1e2b0469).

  • Ispezione del singolo pixel. Il visualizzatore del frame buffer e il terminale seriale mostrano ora Point (x, y) nell’etichetta della risoluzione e disegnano la banda di selezione quando si fa clic su un singolo punto, invece di riportare solo le ROI multi-pixel (86839b4c0).

  • Nuovi script di esempio. Incluso un ampio lotto di nuovi esempi tra cui il trasferimento remoto di immagini su UART/USB (raw e JPEG, ruoli controller e remoto), demo di controllo remoto delle «popular features», lettura e tracking a 100 fps con LED IR, un server video RTSP, disegno avanzato di immagini con palette personalizzate, matematica in stile numpy con ulab e correzione di prospettiva/rotazione (c0a6ff6c8, 0cc0a7761, d77667c20).

Altre modifiche e miglioramenti

  • Avanzamento del download degli aggiornamenti. Il download degli aggiornamenti di firmware/pacchetti mostra ora l’avanzamento reale del download e può essere annullato, separando le fasi di Downloading e Installing invece di un’unica barra indeterminata di Installing (c36d151f3, f1a39272b).

  • Ricentratura del frame buffer. Il visualizzatore del frame buffer ricentra ora l’immagine all’interno della vista in caso di aggiornamenti e ridimensionamenti (327fc2f69).

  • Link HTTPS. I link esterni di aiuto e generatore di codice e gli URL di download degli aggiornamenti sono stati commutati da http a https (generatori Google, forum OpenMV, download openmv.io e il link della licenza GPL) (a0a104e63).

  • Aggiornamenti agli esempi inclusi. Il vecchio esempio CMSIS CNN 09-Feature-Detection/cnn.py è stato rimosso, l’esempio 02-Board-Control/dac_control.py è stato rinominato in dac_write.py ed è stato aggiunto un nuovo esempio 02-Board-Control/dac_write_timed.py; è stato aggiunto anche un file di etichette mobilenet_labels.txt incluso (330548305).

  • Firmware incluso aggiornato. Ricostruite e aggiornate le immagini del firmware incluso (openmv/uvc/bootloader) per le schede OPENMV2, OPENMV3, OPENMV4 e OPENMV4P nel corso di diversi commit di aggiornamento delle risorse. La versione del firmware incluso (firmware.txt) è progredita 3.5.2 -> 3.6.1 -> 3.6.2 -> 3.6.4 nel corso di questi aggiornamenti, distribuendo 3.6.4, ed è stato aggiunto il sensore HM01B0 (0xB0) all’elenco dei sensori riconosciuti (sensors.txt) (0cc0a7761, c0a6ff6c8, a6df35010, 330548305).

  • Binari dfu-util aggiornati. Aggiornati i binari dfu-util prefix/suffix/util inclusi per arm, linux32, linux64, osx e windows (dd8733632).

Correzioni di bug

  • Corretto un lampeggio transitorio della finestra del prompt dei comandi/console sullo schermo durante il download DFU del firmware e le operazioni degli strumenti video (ffmpeg/ffplay) su Windows (092fbad74).

  • Corretto il font predefinito dell’editor sugli host ARM Linux (ad es. Raspberry Pi) per usare DejaVu Sans Mono invece di una famiglia Monospace mancante/inadatta (53a864787).

Supporto a piattaforme e strumenti

  • Base Qt Creator: 4.0.2.

  • Arduino Portenta H7 / camere OpenMV con marchio Arduino sono ora supportate: il VID USB Arduino 0x2341 (PID 0x005B mascherato) è riconosciuto per il rilevamento seriale e la connessione al bootloader in tutti i punti di scansione delle porte seriali (7f3e2b389, 3687643c6).

  • Il download del firmware DFU ora prende di mira anche il dispositivo DFU Arduino (2341:035b) oltre al bootloader STM 0483:df11, consentendo di flashare il firmware delle schede Arduino tramite dfu-util (2d47c6dac).

  • Nuovo sensore: il sensore HM01B0 (0xB0) è stato aggiunto all’elenco dei sensori riconosciuti (sensors.txt) (a6df35010).

  • Strumenti inclusi: lo strumento di flashing dfu-util viene ora distribuito per arm, linux32, linux64, osx e windows.

  • Firmware incluso: le immagini openmv/uvc/bootloader di OPENMV2, OPENMV3, OPENMV4 e OPENMV4P sono state ricostruite e la versione del firmware incluso è stata aggiornata a 3.6.4 (progredendo 3.5.2 -> 3.6.1 -> 3.6.2 -> 3.6.4) (a6df35010, c0a6ff6c8, 0cc0a7761).

Modifiche che rompono la compatibilità

Nessuna. I progetti e gli script esistenti continuano a funzionare senza modifiche; la riscrittura del flashing del firmware è trasparente per gli utenti.