View Full Version : realizzazione progetto x veicoli a guida automatica
salve, vorrei realizzare un prototipo, tramite una macchina radiocomandata (quelle grandi circa un metro a motore a scoppio), su cui vi è installata una o due telecamere a seconda delle scelte che effettueremo, il quale tramite riconoscimento ottico computerizzato, deve poter seguire un percorso e mantenere le giuste distanze dagli ostacoli che incontrerà lungo tutto il tragitto.
ora le difficoltà sono molteplici, ve ne elenco alcune:
1) riconoscere il bordo della strada, quindi niente righe, niente di niente, insomma deve poter riconoscere dove finisce l'asfalto e deve mantenersi alla giusta distanza dal bordo destro.
2) lungo il percorso ovviamente ci saranno degli ostacoli, quali altre macchine dello stesso tipo che andranno x i fatti loro, muri, macchine ferme, ecc, deve quindi riuscire ad interpretare l'ostacolo valutarne approsimativamente le dimensioni e se possibile (ostacolo che non occupa tutta la carreggiata) poterlo superare senza toccarlo.
3) data una certa velocità di crociera es. velocità costante 50 km/h, davanti ci saranno altre macchine che andranno a velocità minore, deve quindi poter mantenere la distanza di sicurezza in modo da arrestarsi in tempo senza tamponare la macchina davanti.
diciamo che queste sono solo alcune delle difficoltà maggiori, ma già riuscire a fare il primo punto vorrebbe dire molto, è un progetto che sto realizzando assieme a degli amici appassionati di informatica e elettronica, non c'è limite di tempo è una nostra idea che vorremmo realizzare cercando di superare tutte le difficoltà del caso, ovviamente nessuno dice che ci riusciremo, anzi probabilmente accadrà il contrario ma sarà una buona iniziativa x imparare cose nuove e cmq x restare in compagnia.
vi sarete messi a ridere leggendo quello che vorremmo fare, magari pensando anche che se non ci sono ancora riusciti a fare un sistema del genere su delle auto vere figuriamoci se ci riuscirete voi.
è vero xò tentare non nuoce.
ovviamente solo ed esclusivamente tramite riconoscimento ottico, quindi nessun altro tipo di sensori di prossimità o distanza o nient'altro. ;)
avete idee in merito? se si sono tutt' orecchi.
dimenticavo, ovviamente se si arriverà anche solo alla fase di prova, abbiamo un circuito dove si fanno gare di macchine radicomandate, quindi non pensate che vado a provade in autostrada :D
FastFreddy
05-08-2006, 16:42
Non è propriamente quello che stavi cercando, però forse questo: http://www.endurance-rc.com/pctx.html potrebbe interessarti.
Ciao! :)
Penso che questi link ti possano essere utili: ;)
http://www.grandchallenge.org/
http://www.bernardotti.it/portal/forumdisplay.php?f=51
Un articolo interessante per la gara di fuoristrada (primo link) è su "Le scienze" di Aprile 2006.
P.S. Ma di dove siete?
Penso che questi link ti possano essere utili: ;)
http://www.grandchallenge.org/
http://www.bernardotti.it/portal/forumdisplay.php?f=51
Un articolo interessante per la gara di fuoristrada (primo link) è su "Le scienze" di Aprile 2006.
P.S. Ma di dove siete?
ciao grazie mille x tutte le informazioni fornite, siamo della prov di bologna, è una cosa che io ho sempre voluto fare, e insieme ad alcuni amici ci proviamo, nessuno ha la pretesa di creare un auto che guida da sola, ma cmq di provarci.
ho visto che la cosa è infinitamente più complessa di quanto la credevo, il prob non sta neanche tanto nell'identificare la strada dal resto, sta nel fatto di processare a 30 fps al sec eseguendo tutti i vari calcoli su ogni singolo frame!!! x quanto i pc siano potenti non riusciamo ad andare oltre i 7 fps al sec eseguendo tutti i vari calcoli su ogni singolo frame.
sicuramente la cpu non è adatta x fare questo genere di calcoli, bisognerebbe programmare la gpu allora si che non ci sarebbe nessun tipo di prob, sapete mica se c'è un modo x prog una gpu????
pietro84
08-08-2006, 09:33
salve, vorrei realizzare un prototipo, tramite una macchina radiocomandata (quelle grandi circa un metro a motore a scoppio), su cui vi è installata una o due telecamere a seconda delle scelte che effettueremo, il quale tramite riconoscimento ottico computerizzato, deve poter seguire un percorso e mantenere le giuste distanze dagli ostacoli che incontrerà lungo tutto il tragitto.
ora le difficoltà sono molteplici, ve ne elenco alcune:
1) riconoscere il bordo della strada, quindi niente righe, niente di niente, insomma deve poter riconoscere dove finisce l'asfalto e deve mantenersi alla giusta distanza dal bordo destro.
2) lungo il percorso ovviamente ci saranno degli ostacoli, quali altre macchine dello stesso tipo che andranno x i fatti loro, muri, macchine ferme, ecc, deve quindi riuscire ad interpretare l'ostacolo valutarne approsimativamente le dimensioni e se possibile (ostacolo che non occupa tutta la carreggiata) poterlo superare senza toccarlo.
3) data una certa velocità di crociera es. velocità costante 50 km/h, davanti ci saranno altre macchine che andranno a velocità minore, deve quindi poter mantenere la distanza di sicurezza in modo da arrestarsi in tempo senza tamponare la macchina davanti.
diciamo che queste sono solo alcune delle difficoltà maggiori, ma già riuscire a fare il primo punto vorrebbe dire molto, è un progetto che sto realizzando assieme a degli amici appassionati di informatica e elettronica, non c'è limite di tempo è una nostra idea che vorremmo realizzare cercando di superare tutte le difficoltà del caso, ovviamente nessuno dice che ci riusciremo, anzi probabilmente accadrà il contrario ma sarà una buona iniziativa x imparare cose nuove e cmq x restare in compagnia.
vi sarete messi a ridere leggendo quello che vorremmo fare, magari pensando anche che se non ci sono ancora riusciti a fare un sistema del genere su delle auto vere figuriamoci se ci riuscirete voi.
è vero xò tentare non nuoce.
ovviamente solo ed esclusivamente tramite riconoscimento ottico, quindi nessun altro tipo di sensori di prossimità o distanza o nient'altro. ;)
avete idee in merito? se si sono tutt' orecchi.
dimenticavo, ovviamente se si arriverà anche solo alla fase di prova, abbiamo un circuito dove si fanno gare di macchine radicomandate, quindi non pensate che vado a provade in autostrada :D
ci sono riusciti su un'auto normale (una lancia) dei ricercatori dell'uni di Parma e molte altre uni statunitensi.
vedo se posso darti una mano
1) per il punto 1 credo che basti installare dei sensori di distanza ai lati dell'automobile, poi realizzare via software (su un microcontrollore) un contollore PID che controlli la distanza dell'auto da una delle pareti(o da entrambe).
2) qui potresti usare un sistema di visione. se metti due telecamere puoi valutare, mediante gli algoritmi della visione stereoscopica, sia la distanza,sia la dimensione dell'ostacolo. però il problema è che ci vuole molta potenza di calcolo. a occhio credo che dovresti montare un pentium per fare questo :D
ricorda che il controllo deve essere fatto in tempo reale.
3) anche qui ci vuole un controllore di velocità con uno o più sensori di distanza
personalmente consiglio di evitare il sistema di visione, almeno all'inizio. perchè ci vogliono algoritmi abbastanza complicati e una grossa potenza di calcolo.
risolvi prima i problemi 1 e 3, poi se tutto funzione passate in seguito al sistema di visione.
pietro84
08-08-2006, 09:48
dai un'occhiata qui:
http://millemiglia.ce.unipr.it/ARGO/italian/index.html
http://www.universinet.it/article939.html
io mi vedrei :
-tipi di sensori di distanza disponibili
-controllori PID
-visione stereoscopica
cmq è un progetto interessante complimenti ;)
quando torno (a settembre) passo a vedere a che punto sei, facci sapere mi raccomando :D
ci sono riusciti su un'auto normale (una lancia) dei ricercatori dell'uni di Parma e molte altre uni statunitensi.
vedo se posso darti una mano
1) per il punto 1 credo che basti installare dei sensori di distanza ai lati dell'automobile, poi realizzare via software (su un microcontrollore) un contollore PID che controlli la distanza dell'auto da una delle pareti(o da entrambe).
il prob è che non sempre ci sono queste pareti, come faccio quando la parete non c'è??? x quello che avevo pensato di tagliare la testa al toro e fare tutto tramite visione artificiale, anche se molto ma molto difficile.
qualunque idea è ben accetta, stiamo valutando ogni soluzione possibile...
brainstorm.. :D
Guarda cerca di limitare al massimo il riconoscimento di immagini tramite telecamera, io ci ho smanettato con algoritmi per il riconoscimento e ti posso dire che i calcoli sono veramente tanti... tanti... tanti... specialmente se devi elaborare un algoritmo che deve saper riconoscere varie features come ostacoli muri ombre ecc... Comunque 7 fotogrammi al secondo sono piu che sufficienti!
La cosa migliore e' cercar di integrare le varie tecnologie come sensori di prossimità e riconoscimento visivo.
Una cosa interessante sarebbe costruitre uno scanner omnidirezionale per le distanze per varie altezze. Mi spiego meglio hai presente i metri laser che ti dicono la distanza puntando il raggio? Bene punta n sensori di quel tipo posizionati tipo i raggi di una bicicletta, se sono abbastanza elaborando le distanze puoi costruire un immagine perimetrale non molto dettagliata ma sufficiente a farti capire in che direzione puoi andare senza sbattere, se poi vuoi avere piu definizione li sviluppi in altezza tipo strati di torta cosi puoi scovare piu ostacoli. Con 16 raggi la tua macchina seguirebbe gia senza problemi un percorso tra muri e il probramma da scrivere sarebbe banale e poco esoso in temini computazionali. Per percorsi all' aperto ci sentiamo piu avanti
Guarda cerca di limitare al massimo il riconoscimento di immagini tramite telecamera, io ci ho smanettato con algoritmi per il riconoscimento e ti posso dire che i calcoli sono veramente tanti... tanti... tanti... specialmente se devi elaborare un algoritmo che deve saper riconoscere varie features come ostacoli muri ombre ecc... Comunque 7 fotogrammi al secondo sono piu che sufficienti!
La cosa migliore e' cercar di integrare le varie tecnologie come sensori di prossimità e riconoscimento visivo.
Una cosa interessante sarebbe costruitre uno scanner omnidirezionale per le distanze per varie altezze. Mi spiego meglio hai presente i metri laser che ti dicono la distanza puntando il raggio? Bene punta n sensori di quel tipo posizionati tipo i raggi di una bicicletta, se sono abbastanza elaborando le distanze puoi costruire un immagine perimetrale non molto dettagliata ma sufficiente a farti capire in che direzione puoi andare senza sbattere, se poi vuoi avere piu definizione li sviluppi in altezza tipo strati di torta cosi puoi scovare piu ostacoli. Con 16 raggi la tua macchina seguirebbe gia senza problemi un percorso tra muri e il probramma da scrivere sarebbe banale e poco esoso in temini computazionali. Per percorsi all' aperto ci sentiamo piu avanti
come idea è ottima, chissà xò cosa costeranno tutti quei laser. :cry:
cmq non ci avevo pensato alla tua idea, ho fatto bene a postare qui sul forum ero sicuro che qualche idea ottima sarebbe uscita fuori. ;)
x adesso siamo alla fase 1, diciamo quindi riconoscimento percorso, x gli ostacoli ci penseremo superata questa fase.
la nostra idea sarebbe questa: un percorso diciamo agibile, è caratterizzato da un fondo "liscio", ad es. l'asfalto ha una certa uniformita a differenza dei bordi in cui magari c'è dell'erba oppure un cordolo ecc.
pensavo quindi di applicare qualche filtro alle immagini riprese e identificare cosi la strada eliminando tutto il resto, poi tramite moltissimi conti come giustamente avete fatto presente determinare i bordi e in via approssimativa trovare la larghezza della strada e far si che la macchina si mantenga x es. a 10 cm dal bordo destro.
che ne dite? è una cosa cosi fantascientifica???
cmq qualche tentativo lo stiamo facendo, l'idea di 2 telecamere invece che una sola rende le cose più semplici, almeno x quanto riguarda calcolare le distanze e dimensioni.
domenticavo, x ora stiamo facendo tutto in C, ma da riga di comando le cose sono molto laboriose, non conoscete qualche prog x semplificare la prog x quanto riguarda questo campo?
ps. conoscete le opencv? sono fantastiche, peccato che sto ancora cercando di usarle, non è facilissimo. se qualcuno le sa usare, ogni aiuto è ben accetto, anzi se qualcuno volesse far parte del progetto, è ben accetto, purtroppo non c'è nessuna ricompensa ma x chi è patito di queste cose e ha tempo e voglia da dedicare e imparare è il benvenuto. ;)
Prendine solo uno di laser, lo monti su un motore passo passo che gira, controlli la frequensa di refresh dei rilevamenti e fai girare il motore ad una velocità tale da avere ogni rilevamento in un determinato angolo. Per evitare che vari fili si arrotolino puoi far andare il motorino una volta a destra e una a sinistra, ne trovi facilmente nelle stampanti vecchie ad aghi. Riguardo ai filtri per trovare i bordi della strada e' una buona idea! sepre pero' applicata a sensori di prossimità tipo il laser onde evitar di avere strada e muro di colori molto simili e il bordo non viene riconosciuto
pietro84
15-09-2006, 18:57
il prob è che non sempre ci sono queste pareti, come faccio quando la parete non c'è??? x quello che avevo pensato di tagliare la testa al toro e fare tutto tramite visione artificiale, anche se molto ma molto difficile.
qualunque idea è ben accetta, stiamo valutando ogni soluzione possibile...
brainstorm.. :D
tutto mediante visione dici??? mi sa che non ti conviene almeno all'inizio.
realizza un primo modello più semplice,che prevede per il corretto funzionamento l'esistenza di pareti laterali.
successivmente, se il tutto funziona, passi a un modello con maggiore complessità. per gestire tutto mediante visione ci vuole un computer mooolto potente e algortimi complicati, devi studiare un sacco di matematica.
ti consiglio di procedere per gradi, altrimenti non riuscirai a cavare un ragno dal buco(imo almeno)
se ti può essere utile c'è un corso di visione computazionale a Padova che tratta proprio queste cose, però è riservato a studenti iscritti al secondo anno della specialistica in ingegneria dell'automazione :stordita: c'è anche un gruppo di ricerca guidato dal docente del corso, e mi pare che siano arrivati a realizzare un discreto prototipo di macchina guidatrice automatica :D (ho visto solo alcune foto, quello che in realtà è in grado di fare non te lo so dire :oink: )
libero81
16-09-2006, 12:39
oggi vado alla festa di laurea di un ragazzo che credo abbia partecipato a quel progetto.. credo facendo il software.. era un land rover o una macchina del genere?
pietro84
16-09-2006, 18:18
se ti può essere utile c'è un corso di visione computazionale a Padova che tratta proprio queste cose, però è riservato a studenti iscritti al secondo anno della specialistica in ingegneria dell'automazione :stordita: c'è anche un gruppo di ricerca guidato dal docente del corso, e mi pare che siano arrivati a realizzare un discreto prototipo di macchina guidatrice automatica :D (ho visto solo alcune foto, quello che in realtà è in grado di fare non te lo so dire :oink: )
hai un link? ma non era l'uni di parma che aveva fatto una cosa simile?
pò essere che sia stata anche l'uni di parma, senz'altro :D è diventato un campo di ricerca di tendenza, ultimamente :D
come link ho trovato solo questo:
http://www.dei.unipd.it/~frezza/Laboratorio/laboratorio.html
sul sito del dipartimento non ho trovato niente...
pietro84
17-09-2006, 00:06
pò essere che sia stata anche l'uni di parma, senz'altro :D è diventato un campo di ricerca di tendenza, ultimamente :D
come link ho trovato solo questo:
http://www.dei.unipd.it/~frezza/Laboratorio/laboratorio.html
sul sito del dipartimento non ho trovato niente...
sì il link è questo che ho riportato sopra, dovrebbe essere l'uni di parma
http://millemiglia.ce.unipr.it/ARGO/italian/index.html
vBulletin® v3.6.4, Copyright ©2000-2026, Jelsoft Enterprises Ltd.