Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Artificial Vision Robot

Tipologie, strumenti di sviluppo, hardware e progetti

Moderatore: Foto UtentePaolino

0
voti

[1] Artificial Vision Robot

Messaggioda Foto Utentepierinter » 25 gen 2013, 1:31

Buonasera a tutti!

Con l'università,stiamo cercando di tirar su un robot da 'competizione'.
La competizione,la gara cioè, consiste nel raccogliere il maggior numero di palle in un arena.

L'elettronica di controllo consiste in una scheda Arduino (l'ho sempre evitata a dir la verità per l'eccessiva semplicità, ma devo dire che in ambito universitario va molto).

Comunque, stavo pensando a come muovere il robot nell'arena, in particolare come capire dove andare per beccare le palline.

È un problema non semplicissimo, in quanto l'arena è popolata anche da altri robot avversari.

Quello che mi è venuto in mente è di utilizzare una webcam che gira ,ed, in qualche modo , analizzare il video per capire dove effettivamente le palline si trovano.

Il problema è che credo sia computazionalmente troppo per Arduino!
Quindi pensavo che si potrebbero analizzare, invece che un intero stream video in (semi)real-time, solo delle immagini scattate ogni tot secondi.
Ma anche qui forse è troppo per Arduino, non so.

Riusciamo a fare una stima delle capacità computazionali che dovrebbe avere la scheda per fare un processing di questo tipo?

Inoltre,potrei utilizare anche una raspberry volendo (se la trovo). Dite sia una buona idea ?

le 'palline' che così ho chiamato, hanno tutte una forma ad uovo...e il colore è diverso per ognuna,quindi non si può giocare sul colore.

Grazie a tutti :)
Avatar utente
Foto Utentepierinter
620 2 7 10
Expert EY
Expert EY
 
Messaggi: 1395
Iscritto il: 23 mar 2009, 0:05

0
voti

[2] Re: Artificial Vision Robot

Messaggioda Foto Utentec1b8 » 25 gen 2013, 17:07

le 'palline' che così ho chiamato, hanno tutte una forma ad uovo...e il colore è diverso per ognuna,quindi non si può giocare sul colore.

Ciao,
forse però l'arena è di un colore omogeo e le palline possono essere viste come "variazione significativa del colore di sfondo".
Semplificando potresti quindi scattare una foto dell'arena e verificare dove vi sia una transizione di colore, transizione che deve occupare un'area non troppo piccola (variazioni di luminosità) ne troppo grande (altri robot)?
Fabio
Avatar utente
Foto Utentec1b8
3.595 3 8 13
G.Master EY
G.Master EY
 
Messaggi: 1770
Iscritto il: 15 gen 2009, 15:23

0
voti

[3] Re: Artificial Vision Robot

Messaggioda Foto Utenteteo1998 » 25 gen 2013, 17:36

ma sono colori di tutta la gamma o solo tipo "rosso, verde, giallo, blu..." se è così, puoi usare un lego minstorm, veloce e facile da programmare
Avatar utente
Foto Utenteteo1998
25 3
New entry
New entry
 
Messaggi: 94
Iscritto il: 22 ago 2012, 16:09

0
voti

[4] Re: Artificial Vision Robot

Messaggioda Foto Utentepierinter » 25 gen 2013, 19:39

No, niente mindstorm e pezzi già fatti.
Cosa ci sarebbe da imparare ?

Foto Utentec1b8,esatto, è quello che pensavo io.
Il problema è che nell'arena ci sono diversi colori : il 'pavimento' sarà omogeneo ma ci saranno diverse linee colorate,inoltre gli altri robot saranno probabilmente colorati, senza contare che le foto possono comprendere anche i pantaloni e le scarpe delle persone ai lati dell'arena, con tutti i colori.

Quindi credo che si debba fare una specie di intersezione tra forma (uovo) e colore.
È una cosa possibile ?
Con che piattaforma ? Arduino,Raspeberry?
Avatar utente
Foto Utentepierinter
620 2 7 10
Expert EY
Expert EY
 
Messaggi: 1395
Iscritto il: 23 mar 2009, 0:05

0
voti

[5] Re: Artificial Vision Robot

Messaggioda Foto Utentec1b8 » 25 gen 2013, 21:57

Prima che la piattaforma secondo me devi decidere quale tecnica/algoritmo applicare per risolvere il problema, quindi saprai di quali specifiche minime hai bisogno.
Potresti procedere con un algortimo di edge detection e quindi riconoscimento delle forme individuate.
Qui ad esempio trovi un semplice esempio di edge detection realizzato con arduino. Ma si trovano facilmete molti progetti in rete per entrambe le piattaforme che hai citato.
Fabio
Avatar utente
Foto Utentec1b8
3.595 3 8 13
G.Master EY
G.Master EY
 
Messaggi: 1770
Iscritto il: 15 gen 2009, 15:23

0
voti

[6] Re: Artificial Vision Robot

Messaggioda Foto Utentepierinter » 25 gen 2013, 22:17

L'avevo già visto quel link, e sebbene funzionante è comunque qualcosa di un po' troppo semplice : immagine monocromatica,forma semplice...

Le situazioni in cui mi troverei io sarebbero un po' più complesse.
Immagina una situazione del genere , con delle palline sparse :

Immagine
Avatar utente
Foto Utentepierinter
620 2 7 10
Expert EY
Expert EY
 
Messaggi: 1395
Iscritto il: 23 mar 2009, 0:05

0
voti

[7] Re: Artificial Vision Robot

Messaggioda Foto Utentec1b8 » 26 gen 2013, 13:29

Quella che proponi è sicuramente una situazione molto più complessa, ma una "semplificazione" dell'immagine la dovrai sicuramente fare perché una macchina sia in grado di interpretarla.
Se hai un po' di pazienza provo ad eleborare quell'immagine per vedere cosa ne uscirebbe, come si semplificherebbe.
Fabio
Avatar utente
Foto Utentec1b8
3.595 3 8 13
G.Master EY
G.Master EY
 
Messaggi: 1770
Iscritto il: 15 gen 2009, 15:23

0
voti

[8] Re: Artificial Vision Robot

Messaggioda Foto Utentepierinter » 26 gen 2013, 16:36

Si, di pazienza ne ho in abbondanza.
Ho instalLato Matlab quindi posso provare anch'io a fare delle 'simluazioni'.

Purtroppo non sono riuscito a trovare nessuna immagine che rispecchi davvero quello di cui ho bisogno, quindi con le gambe e i piedi della gente, l'arena, gli altri robot e le palline.
Cerco ancora.. se ne trovo qualcuna,tanto meglio :) Altrimenti rimaniamo su questa
Avatar utente
Foto Utentepierinter
620 2 7 10
Expert EY
Expert EY
 
Messaggi: 1395
Iscritto il: 23 mar 2009, 0:05

0
voti

[9] Re: Artificial Vision Robot

Messaggioda Foto Utentepierinter » 26 gen 2013, 16:42

ecco , forse questo rispecchiano meglio la situazione :

Immagine
Immagine
Avatar utente
Foto Utentepierinter
620 2 7 10
Expert EY
Expert EY
 
Messaggi: 1395
Iscritto il: 23 mar 2009, 0:05

2
voti

[10] Re: Artificial Vision Robot

Messaggioda Foto Utentecyclone » 26 gen 2013, 22:18

Ciao a tutti,
intanto per il sistema di riconoscimento delle palle colorate lascia perdere arduino, non hai abbastanza potenza computazionale. Arduino è un giocattolino, magari lo potrete utilizzare per muovere i motori ma non certo per analizzare immagini in tempo reale.
Hai necessità di avere una board molto più potente o almeno una scheda con linux embedded su cui far girare le OpenCV e una CAM USB. Per quanto riguarda l'algoritmo che ti serve per identificare la palla colorata presente nel campo visivo:

1) esegui un color detection sull'immagine "grabbata" usando la gradazione HSV.
2) poi applica uno Smooth sull''immagine colorata per sfumarla e arrotondarla.
3) cerca se ci sono oggetti arrotondati sul frame catturato.
4) calcola la posizione del centroide colorato X Y e l'area che ti potrà servire per calcolare la distanza tra il robot e la palla.

Lo so che spiegato così è poco chiaro ma ti assicuro che l'unica strada per realizzare quello che tu chiedi è proprio quella di implementare ed usare le OpenCV su una macchina con una certa potenza di calcolo.
Calcola che con questo sistema puoi analizzare fino a 30 frame/sec con una cam a media risoluzione.

ciao
Avatar utente
Foto Utentecyclone
86 2
New entry
New entry
 
Messaggi: 64
Iscritto il: 6 feb 2012, 11:38

Prossimo

Torna a Realizzazioni, interfacciamento e nozioni generali.

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite