HuskyLens facilita il Machine Learning con Arduino come non lo avete mai visto
DFRobot, leader nel settore DIY, ci fornisce l’occasione di parlarvi dell’HuskyLens, un device pensato per portare il Machine Learning al livello di chiunque voglia apprenderne il funzionamento. Grazie a questo dispositivo, possiamo programmare e realizzare progetti con estrema facilità, implementando funzionalità, fin ora troppo complesse da scrivere, sui nostri progetti con Arduino e non solo.
Specifiche
Basato su un processore Kendryte K210, l’HuskyLens adopera un sensore di immagine SEN0305 con camera da 2.0Megapixel. Possiamo alimentarlo sia tramite connettore USB a 5V o dal cavetto in dotazione pure con i 3,3V.
Il consumo è piuttosto ridotto, infatti parliamo di 230mA con i 5V e 320mA con i 3,3V. Il display di cui è dotato è da 2.0″, con risoluzione 320×240 pixel. Oltre al già citato connettore Micro-USB, troviamo un connettore per l’interfaccia UART/I2C, due LED, un LED RGB, due pulsanti e uno slot per TF Card.
Acquistalo su Amazon: https://amzn.to/3spodEi
Acquistalo su Aliexpress: https://s.click.aliexpress.com/e/_AWVFDL
Acquistalo sul sito DFRobot: https://www.dfrobot.com/product-1922.html
Tecnologia
HuskyLens è un device di visione artificiale AI facile da usare con 7 funzioni integrate: riconoscimento facciale, tracciamento oggetti, riconoscimento oggetti, tracciamento linea, riconoscimento colore, riconoscimento tag e classificazione oggetti. Ci sono due pulsanti su HuskyLens, il pulsante funzione e il pulsante di apprendimento. Le operazioni di base di questi due pulsanti sono:
- Spostare il “pulsante funzione” a sinistra o a destra per cambiare funzioni diverse.
- Premere brevemente il “pulsante di apprendimento” per apprendere l’oggetto specificato; premere a lungo il “pulsante di apprendimento” per apprendere continuamente l’oggetto specificato da diverse angolazioni e distanze; se HuskyLens ha già appreso l’oggetto, premere brevemente il “pulsante di apprendimento” per farlo dimenticare.
- Premere a lungo il “pulsante funzione” per accedere al menu di secondo livello (impostazione dei parametri) nella funzione corrente. Comporre a sinistra, a destra o premere brevemente il “pulsante funzione” per impostare i parametri correlati.
Collegamenti
Collegare HuskyLens ad Arduino UNO è molto semplice. Possiamo scegliere se adoperare l’interfaccia UART o I2C. Nel caso di interfaccia UART, colleghiamo il pin 10 di Arduino UNO al cavo verde del connettore (TX), il cavo blue (RX) al pin 11 di Arduino UNO, mentre il cavo rosso (+) ai 5V o 3,3V, ed il cavo nero (-) al GND.
Per l’interfaccia I2C, il cavo verde va connesso al pin SDA e quello blu al pin SCL.
Sarà però necessario entrare nelle Impostazioni generali dell’HuskyLens e settare il corretto protocollo. Sarà possibile adottare il protocollo di rilevamento automatico, che è facile da usare e conveniente.
Codice
Sfrutteremo nel primo caso l’interfaccia UART, ma prima andiamo a scaricare la libreria da questo LINK. Per installarla, create una cartella con il nome HUSKYLENS nella cartella libraries, ossia dove sono contenute le librerie di Arduino.
Scompattate il file zippato all’interno della cartella appena creata, copiando solamente la cartella example ed i file .h e .cpp
Fatto questo, carichiamo il codice di esempio HUSKYLENS_GET_STARTED.ino contenuto nella libreria, selezionando come scheda Arduino UNO e la relativa porta. Una volta caricato, scegliete dal dispositivo la modalità di riconoscimento facciale, inquadrate un volto e premete il “pulsante di apprendimento” dell’HuskyLens. Verrà memorizzato come ID1. Aprite il monitor seriale sulla IDE di Arduino e apparirvi una schermata come questa:
Conclusioni
Abbiamo letteralmente giocato con questo dispositivo, provandolo e mettendolo alla prova. Abbiamo verificato il riconoscimento facciale sia su soggetti dal vivo, sia su fotografie che su video, ottenendo ottimi risultati. Abbiamo anche ottenuto lo stesso risultato con il tracciamento oggetti, tracciamento linea e riconoscimento colore. Abbiamo però chiesto troppo al device nel riconoscimento oggetti. Avendo in casa un chihuahua, razza canina molto particolare, abbiamo voluto testarlo e il risultato non è stato proprio scontato: l’HuskyLens faticava a riconoscere il nostro fedele amico, confondendolo con una bottiglia o un gatto. Alla fine però ha riconosciuto la specie a cui appartiene.