Ieri mi è arrivata Pixy, nota anche come CMUCAM 5, che ho intenzione di utilizzare abbinata ad Arduino Yun per un robot che sto realizzando.
Dopo un primo test con la sua GUI per pc ho fatto subito la prova di inseguimento oggetti comandando il posizionamento dei servo pan e tilt tramite Arduino partendo dai dati forniti da Pixy.
L'interfacciamento tra Arduino e Pixy può avvenire in vari modi, quello migliore è tramite SPI, è comunque possibile anche con I2C e UART, il cavo di connessione tra Pixy e Arduino su SPI è fornito in dotazione, va collegato al connettore ISP da cui preleva anche l'alimentazione.
I due servo che gestiscono i movimenti pan e tilt sono collegati direttamente a Pixy, sono presenti due connettori dedicati a questa funzionalità, il loro movimento può essere controllato direttamente dal software di Pixy oppure da un dispositivo esterno tramite appositi comandi.
Per il test con Arduino ho utilizzato il demo "servo move" fornito con la libreria, la prima operazione da fare è impostare Pixy, tramite la GUI su PC, l'oggetto/i da riconoscere/tracciare dopo di che è pronta per essere collegata ad Arduino.
La velocità di risposta di Pixy è decisamente alta, le specifiche dicono che lavora a 50 fps e le prove pratiche dicono che è vero.
Ad Arduino vengono inviate sia le coordinate video dove viene "visto" l'oggetto sia le sue dimensioni apparenti, se sono note le dimensioni reali è possibile stimare la distanza, inoltre Pixy è in grado di tracciare fino a sette diversi oggetti simultaneamente e/o oggetti multipli dello stesso tipo.
Secondo te in, mantenendo fissa l'inquadratura leggermente dall'alto è possibile calcolare con una buona approssimazione le coordinate di un oggetto in una stanza dalla dimensioni note?
Ha possibilità di vedere l'infrarosso?
Fighissimo..
Bello e interessante.
è questo?
molto bello, può riconoscere oggetti diversi?
Però vedo che l'oggetto che viene seguito in tutti i video è tinta unita, se uno volesse seguire per esempio un cane in una stanza? una persona? un viso? magari fotografato in diversi punti di vista?
PaoloP:
Secondo te in, mantenendo fissa l'inquadratura leggermente dall'alto è possibile calcolare con una buona approssimazione le coordinate di un oggetto in una stanza dalla dimensioni note?
Ha possibilità di vedere l'infrarosso?
Si è possibile.
Il sensore "vede" anche gli IR, però il gruppo ottico ha il filtro IR, altrimenti vedi tutto con forte componente rosa, quindi al massimo rilevi sorgenti IR molto prossime al visibile e molto luminose, p.e. il led ir di un telecomando.
pablos:
Bello e interessante.
è questo?
Si, però l'offerta su Amazon è solo il supporto pan tilt con servo che è un accessorio optional.
Sia la Pixy che il supporto pan/tilt sono acquistabili da Futura Elettronica, incredibile ma vero hanno il prezzo più basso in assoluto ![]()
stefa24:
molto bello, può riconoscere oggetti diversi?
Come avevo già specificato la Pixy è in grado di riconoscere fino a sette oggetti diversi, incluse multiple istanze dello stesso, il pattern da riconoscere viene memorizzato sulla Pixy nella flash così da non andare perso dopo lo spegnimento.
pablos:
Però vedo che l'oggetto che viene seguito in tutti i video è tinta unita, se uno volesse seguire per esempio un cane in una stanza? una persona? un viso? magari fotografato in diversi punti di vista?
La Pixy può solo riconoscere dei pattern composti da forme abbastanza regolari e di colore omogeneo, molto importante lo sfondo che deve essere ad elevato contrasto rispetto al colore dell'oggetto.
Dalle prime prove che ho fatto mi sono reso conto che funziona meglio con i colori forti ma opachi piuttosto che con quelli lucidi.
Non ho ancora letto completamente la documentazione, però mi pare sia possibile riconoscere oggetti composti da più aree con colori diversi, p.e. un rettangolo colorato metà rosso e metà verde, il che fa molto comodo per marcare degli oggetti complessi in modo che siano riconoscibili.
Più tardi faccio altre prove e vi faccio sapere.
Molto bello !!!
Quindi riuscirebbe a seguire questo:

posto sulle spalle di un politico ? Mi viene una idea per una applicazione pratica ![]()
nid69ita:
Molto bello !!!Quindi riuscirebbe a seguire questo:
posto sulle spalle di un politico ? Mi viene una idea per una applicazione pratica
Non so se funziona con dei settori circolari, l'area di riconoscimento per il learning lavora con dei rettangoli.
Ahh ecco l'immagine di amzon inganna sembrava un po' poco ![]()
65.00 la cam
36.00 il kit servo
82.00 + iva
Aspetto di conoscere altre capacità, mi piacerebbe giocarci un po', magari prenderne 2 e farci un bel faccione con 2 occhi che si muovono insieme ![]()
astrobeed:
Si è possibile.
Il sensore "vede" anche gli IR, però il gruppo ottico ha il filtro IR, altrimenti vedi tutto con forte componente rosa, quindi al massimo rilevi sorgenti IR molto prossime al visibile e molto luminose, p.e. il led ir di un telecomando.
Dovrebbe seguire uno o più led IR accesi e attaccati sulla spalla di una persona in un ambiente con luminosità molto variabile. (palco di teatro)
E' fattibile secondo te?
pablos:
Ahh ecco l'immagine di amzon inganna sembrava un po' poco65.00 la cam
36.00 il kit servo82.00 + iva
Quei prezzi sono già ivati, quindi il totale è solo 82 Euro.
Il costo relativamente alto del supporto pan/tilt è dovuto in gran parte ai due micro servo forniti che sono di qualità decente, circa 9 Euro l'uno come valore.
PaoloP:
Dovrebbe seguire uno o più led IR accesi e attaccati sulla spalla di una persona in un ambiente con luminosità molto variabile. (palco di teatro)
E' fattibile secondo te?
Si, al tuo posto cambierei l'ottica di serie, usa un attacco a vite standard M12, con una con la fov ottimizzata per la distanza di ripresa e senza il filtro IR, poi metti davanti un filtro per il visibile in modo da ricevere solo gli IR in modo da ottenere la massima sensibilità.
si infatti costa 101.00 ho scorporato l'iva
totale circa 82.00 + iva
l'iva non mi interessa
pablos:
si infatti costa 101.00 ho scorporato l'iva
totale 82 + ival'iva non mi interessa
No, costa 82 Euro ivato, ovvero 68 E + iva, i prezzi di Futura Elettronica sono tutti già comprensivi di iva.
Ho provato la funzione che consente di localizzare oggetti composti da più colori (max 7), funziona molto bene e riduce gli errori dovuti a superfici con colore simile all'oggetto, inoltre fornisce anche l'angolo di rotazione rispetto al campione preso in fase di apprendimento dell'oggetto.
Ci tengo a sottolineare che la Pixy non può fare miracoli, funziona molto bene con oggetti di forma regolare e colori omogenei, se sono più colori devono essere in zone distinte, però non aspettatevi che sia in grado di distinguere un libro da una scatola di scarpe.
Tenuto conto del processore usato, un ARM dual core @202 MHz, dei soli 264k ram disponibili (1 Mega di flash), è veramente tanto quello che riesce a fare, io per ottenere un risultato simile ho utilizzato le open cv e tutta la potenza di calcolo di un dekstop abbastanza performante, video dei risultati ottenuti (era il 2012).
Una nota relativa alla risoluzione del sensore, quella massima è 1280*800 @30 fps, però viene usato a 640x400 in modo da poter lavorare a 50 fps e perché non c'è abbastanza ram per gestire immagini 720p, in realtà non basta nemmeno per il 400p però l'acquisizione dei pixel viene fatta solo per quelli significativi per il riconoscimento, ovvero quelli che rientrano nel range cromatico atteso, il che riduce notevolmente l'uso della ram.
Lo streaming video tramite USB, visualizzabile con la GUI, subisce un ulteriore downgrade a 320x200 sia per questioni di banda sia per non togliere eccessiva potenza di calcolo al micro, l'analisi dei frame rimane a 640x400 pixel anche con lo streaming video attivo.