Arduino con webcam segue corpi in movimento

Salve a tutti. Sono nuovo di questo forum, e sono appena entrato nel mondo di arduino.. Anche se comunque abbastanza documentato attraverso studi precedenti.
Sono al quinto ed ultimo anno di informatica ad un istituto tecnico industriale e vorrei fare un progetto per l'esame di maturità.
La mia idea era di collegare una webcam all'arduino, e montare delle ruote (comunque qualcosa che lo possa far camminare) in modo da caricare un software che permetta all'arduino di rilevare quando un corpo si sta muovendo... in modo da seguirlo.
Essendo non molto esperto ancora su questo dispositivo, volevo sapere se la mia idea si può sviluppare, e/o è una buona idea.
Penso di avere conoscenze sufficienti a programmarlo, conoscendo molto dettagliatamente il sistema Linux, e avendo studiato e scritto sorgenti in C, e Java.
Per quanto riguarda il campo elettronico, e quindi la parte di montaggio delle ruote che seguono il corpo in movimento, mi documenterò e avrò il sostegno dei professori.
Spero e attendo vostri consigli. Grazie e a presto

arduino non ha minimamente la potenza e risorse necessarie per far girare un sistema operativo, figuriamoci gestire del video, o addirittura un sistema di elaborazione immagine come openCV. Utilizza un piccolo PC per quello che vuoi fare.

un tipo è riuscito a usare le telecamere ottiche del mouse (parliamo di qualcosa come 16x16pixel in bianco e nero) per riconoscere dei movimenti (cambio di Colore delle celle), ma basta accendere / spegnere la luce per fregarlo, o anche un movimento della tenda.

Io so che è programmabile in C. Quindi potrei creare un software e dei driver per farlo comunicare con la webcam. No?

Non hai abbastanza potenza di calcolo.
Io con opencv e un computer, tramite arduino, riuscivo a seguire con una coppia di motori servo e una webcam volti che si muovevano. Da notare che il primo computer che avevo provato, un "centrino 1.4" non riusciva a seguire bene il tutto, andavo bene con un core2 ....
Non ho lavorato sulle ottimizzazioni, ci abbiamo messo un'oretta per fare il tutto per una dismostrazione all'hackmeeting di roma

albatros93:
Io so che è programmabile in C. Quindi potrei creare un software e dei driver per farlo comunicare con la webcam. No?

beh se sei capace di scrivere un driver, specialmente per un generico per una camera.. sinceramente non credo saresti quì a porre domande :slight_smile:

comunque se proprio ci tieni, ci sono delle camere che comunicano via seriale, se per te è ok metterci circa 50/60 secondi per UNA foto.

è decisamente un'altra cosa, ma mi sembra decisamente più fattibile anche se meno interessante...

Deca86it:
è decisamente un'altra cosa, ma mi sembra decisamente più fattibile anche se meno interessante...

http://www.gioblu.com/tutorials/robotica/220-un-robot-diffidente

lo voglio!!!!!!!! :smiley:
una domanda, di potrebbe aumentare la sensibilità dei sensori?? tipo fino a 5 o 6 metri??

milvusmilvus:

Deca86it:
è decisamente un'altra cosa, ma mi sembra decisamente più fattibile anche se meno interessante...

http://www.gioblu.com/tutorials/robotica/220-un-robot-diffidente

lo voglio!!!!!!!! :smiley:
una domanda, di potrebbe aumentare la sensibilità dei sensori?? tipo fino a 5 o 6 metri??

Anche io, anche io!!!! Anche a me interesserebbe sapere qualcosa sulla distanza, magari si può usando sensori ultrasuoni invece di quelli a infrarossi (è solo un'idea!)

Ma qualcuno ha mai comprato nel sito in questione??? (quello del link)

http://dagurobot.com/goods.php?id=9

albatros93:
Io so che è programmabile in C. Quindi potrei creare un software e dei driver per farlo comunicare con la webcam. No?

Arduino ha neanche 2kBYte di Ram dispionibile. come fai a memorizzareimmagini 600x800 pixel in RGB?

Ciao Uwe

Ma perchè proprio una webcam, no potresti usare sensori termici, ultrasuoni, ....oppure usare sensori fissi che eseguono la triangolazione che poi inviano le coord al robot.
Sempre nell'ambito antintrusione esistono sistemi abbastanza complessi capaci tramite triangolazione di determinare in che punto del giardino c'e' stato un movimento calcolando le distanze di ciascun sensore spazio=velocità*tempo si puo' trovare il punto esatto.
In teoria su una mappa ho un punto preciso o piu' punti dove vedo movimento.

Altrimenti prendi un pc e ci metti su 3 ruote a mo di cariola :slight_smile: .... non prenderai 60 per la genialità, ma per la fantasia sicuramente si

Volevo aggiungere una cosa, immagino che tu con webcam intendessi utilizzare il sistema motion-detecting......
Questo esiste negli impianti di videosorveglianza con camere digitali, molto semplice, la telecamera è fissa, l'immagine è fissa, appena un pixel o l'area di pixel selezionata nelle impostazioni subisce una variazione anche minima viene generato un allarme. Nel tuo caso una telecamera in movimento non potrà mai utilizzare il motion-detecting system sull' analisi dell'immagine (nemmeno con un pc sulle ruote :slight_smile: ).
Usa sensori abbinando la doppia tecnologia infrarossi e ultrasuoni in modalità AND altimenti il tuo robot si schianterà contro un calorifero caldo o una pianta mossa dal vento.
Prima di comprare arduino ho letto molto sulle sue possibilità tra le quali robotica, puo' fare molte cose carine, ti consiglio di cercare nella parte robot, robotics, troverai sicuramente molte info utili.

bye pab

pablos71:
Usa sensori abbinando la doppia tecnologia infrarossi e ultrasuoni in modalità AND altimenti il tuo robot si schianterà contro un calorifero caldo o una pianta mossa dal vento.

Vorrei fare alcune correzioni: La parte quotata mi sembra un pochino eccessiva, sensori infrarossi come quelli usati nel video (E che sono comunemente usati per questo genere di applicazioni) Non percepiranno MAI i raggi infrarossi emessi da un corpo caldo, per questo servirebbero sensori del costo di un'utilitaria! E poi entrambe le tecnologie sono in grado di determinare la distanza, basta dirgli di mantenere la distanza e lui lo farà...
Vorrei anche aggiungere che il motion detecting si può fare anche con una camera in movimento, è solo questione di algoritmi che si complicano notevolmente nel caso di una videocamera in movimento, ma è una cosa che si fa abitualmente nella produzione professionale di films, basti vedere software come "boujou". In realtà non fanno proprio il motion detecting, ma l'esatto opposto, il che mi fa pensare che sottraendo una immagine di partenza a quella risultante da un camera traking si otterrebbe proprio il motion detection..
Sono solo supposizioni, ma credo sia fattibile con una grossa società alle spalle che fornisca supporto tecnico ed economico, nella fattispecie mi sembra decisamente più conveniente un robottino tipo quello nel video che ho postato prima...

per questo servirebbero sensori del costo di un'utilitaria

no, si trovano tranquillamente a basso costo, anche 5 o 6 € al sensore. Comunque confermo: normalmente le frequenze degli IR del fuoco sono lontane dalle frequenze dei led IR e similia, ci si avvicina molto di più la luce del sole

il sensore compound eye si trova tranquillamente anche su robosavvy.com che spedisce dall'inghilterra. chiaramente costa di più (poco di più: 6.9 sterline)