Il nostro verdetto
Dotato di una fotocamera da 2 MP, un Pico e tutte le rifiniture, questo kit aggiunge il rilevamento di persone e oggetti praticabili al tuo Raspberry Pi Pico.
Per
+ Semplici istruzioni
+ Risultati rapidi
+ Compatibile con molte schede
Contro
– Necessita di conoscenze C/C++
– L’obiettivo non è protetto
Quando pensiamo all’apprendimento automatico e all’intelligenza artificiale, pensiamo immediatamente a grandi data center con un’enorme potenza di calcolo. Ma Raspberry Pi Pico è in grado di apprendere automaticamente tramite TinyML, sviluppato per i microcontrollori. Con il kit di apprendimento TinyML di Uctronics da $ 40, possiamo aggiungere facilmente la visione artificiale ai nostri progetti.
Compatibile con molti microcontrollori diversi, come quelli di Arduino, il TinyML Learning Kit di Uctronics include una fotocamera Arducam Mini 2MP Plus che è stata utilizzata per qualche tempo con altri microcontrollori, ma con la potenza del Raspberry Pi Pico vediamo prestazioni molto migliori per la macchina apprendimento, un aumento di quasi 10 volte rispetto a un Arduino.
Abbiamo messo in panchina il kit di apprendimento TinyML di Uctronics e abbiamo imparato di più su ciò che questo kit può offrire.
Progettazione e utilizzo del kit di apprendimento TinyML di Uctronics
Misurando solo 0,78 x 1,34 pollici (20 x 34,1 mm) il focus del kit è l’Arducam 2MP Plus, una fotocamera che si basa sull’OV2640, una fotocamera da 2 MP che può essere utilizzata con microcontrollori e computer tramite un SPI (flusso di dati e comandi) e I2C (configurazione sensori).
Questa fotocamera non si limita al solo utilizzo sul Raspberry Pi Pico incluso; può essere utilizzato anche con schede basate su Arduino ed ESP32. Una risoluzione di 2 MP potrebbe non sembrare molto, ma per la visione artificiale e l’apprendimento automatico è sufficiente se consideriamo che la nostra immagine sarà solo 320 x 320 pixel. L’obiettivo della fotocamera è contenuto in un attacco M12 e l’obiettivo è intercambiabile con altri obiettivi M12, disponibili separatamente.
Collegare la fotocamera al Raspberry Pi Pico o ad altri RP2040 è un gioco da ragazzi grazie ai cavi jumper inclusi. Le risorse online mostrano chiaramente i pin GPIO che dovremmo usare per collegare la fotocamera al Pico e mostrano i pin GPIO per l’adattatore da USB a TTL CP2102 incluso che viene utilizzato per inviare dati video dal Pico a un’applicazione, che nella nostra recensione era uno script di rilevamento delle persone che eseguiva Processing, un’interfaccia di programmazione simile all’IDE di Arduino ma orientata alle arti visive.
Dopo aver eseguito il flashing di un progetto UF2 pre-creato, scritto in C/C++ sul nostro Raspberry Pi Pico, abbiamo quindi installato l’IDE di elaborazione e il codice corrispondente per ricevere i dati dell’immagine e visualizzarli sul nostro desktop. Se sei un fan di MicroPython, al momento non ci sono librerie MicroPython per TensorFLow Lite per Raspberry Pi Pico, ma Arducam sta lavorando per supportarlo. La fotocamera Arducam Mini 2MP Plus può essere utilizzata anche per acquisire immagini semplici e dispone di una libreria MicroPython supportata dalla community per semplificare il processo.
Una fotocamera collegata a un Raspberry Pi Pico è interessante, ma l’apprendimento automatico è molto più interessante. Tiny Machine Learning (TinyML), è una versione di TensorFlow sviluppata per l’uso su microcontrollori che quasi sempre hanno una potenza di calcolo inferiore rispetto a un computer completo. I microcontrollori come quelli di Arduino, Espressif (ESP32) e ora Raspberry Pi possono essere addestrati per identificare oggetti, modelli o rispondere a input esterni da microfoni, sensori ecc.
Arducam afferma che usando la fotocamera OV2640 con il Raspberry Pi Pico possiamo elaborare a 1 FPS, il che potrebbe non sembrare molto, ma il progetto equivalente in esecuzione su un Arduino è 1 fotogramma ogni 18 secondi. Quindi Pico è chiaramente la scheda migliore per TinyML con un budget limitato. Arducam fornisce un repository Github contenente una serie di demo TinyML disponibili come codice C grezzo per la personalizzazione e la compilazione sulla tua macchina. Se desideri saltare direttamente all’uso delle demo, ci sono versioni precompilate salvate come file UF2 pronte per l’uso su Pico.
Per quali progetti possiamo utilizzare il kit di apprendimento TinyML di Uctronics?
Il kit di apprendimento TinyML di Uctronics è progettato per TinyML e quindi è orientato a progetti che richiedono una potenza di elaborazione sufficiente per aggiungere visione artificiale e intelligenza artificiale a un progetto. Usando la telecamera come input, possiamo dare “vista” a un robot e, utilizzando diversi modelli, possiamo addestrare il robot alla ricerca di oggetti o persone.
Vuoi controllare gli intrusi in una stanza e inviare avvisi ai tuoi dispositivi tramite Internet? Bene, la fotocamera Arducam e la nostra guida per portare online il tuo Raspberry Pi Pico consentiranno proprio questo.
Linea di fondo
Il kit di apprendimento TinyML di Uctronics è molto divertente, ma per ottenere il meglio da esso, devi davvero conoscere il tuo C/C++, fino a quando la libreria MicroPython non sarà pronta per il rilascio. Se hai già familiarità con l’apprendimento automatico, è probabile che questo non sia un ostacolo per te.
La fotocamera Arducam Mini 2MP Plus è incredibilmente facile da montare, con istruzioni chiare e un repository GitHub ben documentato e con un po’ di tempo anche un programmatore alle prime armi potrebbe ottenere ottimi risultati.