Sistemi di visione per la navigazione autonoma Relatore: ch.mo prof. Ruggero FREZZA Laureando: Andrea ROSSETTI Padova, 11 aprile 2005.

Slides:



Advertisements
Presentazioni simili
UNIVERSITA’ DI MILANO-BICOCCA LAUREA MAGISTRALE IN BIOINFORMATICA
Advertisements

A. Martini INTERFERENZA.
Fondamenti di Informatica1 Gestione della memoria I sistemi di memoria possono essere suddivisi in: –memoria interna al processore –memoria principale.
Università Politecnica delle Marche
a = angolo diedro o i1 d = deviazione i2 r1 r2 dd i1 = i2 D
Misure dimensionali senza contatto.
Esempi di percezione ottica e illusioni
Pierangelo Degano, Emanuel Castellarin, Laura Passaponti
INTERFERENZA A. Martini Supponiamo di avere due sorgenti di onde, puntiformi, in fase, di uguale lunghezza donda.
Chiara Mocenni - Sistemi di Supporto alle Decisioni I – aa Sistemi di Supporto alle Decisioni I Dynamic Programming Chiara Mocenni Corso di.
Chiara Mocenni - Sistemi di Supporto alle Decisioni I – aa Sistemi di Supporto alle Decisioni I Scelte di consumo Chiara Mocenni Corso di laurea.
Visione Stereo & Geometria Epipolare
Università degli Studi di Cagliari
Reti neurali per la percezione dell’ambiente in robotica autonoma
Sistemi basati su conoscenza (agenti intelligenti) Prof. M.T. PAZIENZA a.a
Prova di recupero corso di Fisica 4/05/2004 Parte A
L 16 Progetto delle alternative Andrea Castelletti Modellistica e Controllo dei Sistemi Ambientali.
Analisi e sintesi di circuiti combinatori
Analisi e Sintesi di circuiti sequenziali
Capitolo 10 Tecniche algoritmiche Algoritmi e Strutture Dati.
Visione Artificiale La visione del robot può essere definita come il processo di estrazione, caratterizzazione e interpretazione delle informazioni provenienti.
1 Rendering spaziale sonoro mediante ricostruzione stereo Università degli studi di Verona Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica.
Structure from motion Corso Visione e percezione a.a.2008/2009
Controllo delle operazioni su una macchina
Dinamica dei moti rotatori
Analisi e Sintesi di circuiti sequenziali. Definizione Una macchina sequenziale é un sistema nel quale, detto I(t) l'insieme degli ingressi in t, O(t)
Studente Claudia Puzzo
Fogli elettronici - Spreadsheet
Esercizi su alberi binari
7 Luglio, 2005Verona, 4° incontro LIMA 3D1 Laboratory of Image Analysis and Vision Università degli Studi di Milano Dipartimento di Scienze dellInformazione.
Determinazione Orbitale di Satelliti Artificiali Lezione 5
Principi di Interferometria – I
Elaborazione (digitale) delle immagini
Modellazione di terreni a risoluzione adattiva
Università degli studi di Modena e Reggio Emilia
Il Cerca – costellazioni
Motion capture distribuito
LEGGE DELLA VICINANZA Nella figura le rette non vengono percepite singolarmente ma in serie di due. Si vedono quindi tre colonne strette e non due larghe.
La Classificazione non supervisionata
Slides di Valerio Egidi
Lo studio delle coniche nel tempo
Laureando: Enrico Masini
PARTE PRIMA: Reti Cablate
Il metodo fotogrammetrico
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Efficient Region- Based Image Retrieval di Roger Weber e Michael Mlivoncic Swiss Federal Institute of Technology (ETH) Presentazione di Laura Galli, Mauro.
Percezione visiva illusione e realtà
Tecnologie delle Costruzioni Aeronautiche 1
Il COLORE.
Università degli Studi di Cagliari
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
Università degli Studi di Padova
Rete di Hopfield applicata al problema del TSP Federica Bazzano
Lente convergente e legge dei punti coniugati in laboratorio
Lez. 3 - Gli Indici di VARIABILITA’
Visione e Percezione progetto conclusivo “Human recognition : A BIOMETRICAL APPROACH ” Simone Balsanelli Adriano Cerocchi.
FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI
Capitolo 10 Tecniche algoritmiche Algoritmi e Strutture Dati.
Capitolo 10 Tecniche algoritmiche Algoritmi e Strutture Dati.
Trasformata di Hough.
Sistemi basati su conoscenza (agenti intelligenti) Prof. M.T. PAZIENZA a.a
Analisi della similarità tra immagini.
Esercizi numerici Prova di Fisica 4 (10 crediti) COGNOME………………….. 6/07/2009 NOME……………………….. 2) Due lenti convergenti, entrambe di lunghezza focale f 1.
Selezione del volume dei polmoni M. Antonelli, B. Lazzerini, F. Marcelloni Dipartimento Ingegneria dell’Informazione Pisa.
POR Calabria , ASSE I Linea Progetti di ricerca industriale e di sviluppo sperimentale nei settori strategici regionali AGENDA STRATEGICA.
Self-Organizing Map (SOM Kohonen, 1981) è una tecnica di visualizzazione dei dati multidimensionali SOM è una mappa mono- (bi-)dimensionale che rappresenta.
Gli Indici di VARIABILITA’
Analisi del movimento in sequenze di immagini Marcello Demi CNR, Institute of Clinical Physiology, Pisa, Italy.
Transcript della presentazione:

Sistemi di visione per la navigazione autonoma Relatore: ch.mo prof. Ruggero FREZZA Laureando: Andrea ROSSETTI Padova, 11 aprile 2005

2 Il problema della visione stereo Vogliamo realizzare un algoritmo di visione stereo real-time, per valutare le distanze di oggetti inquadrati da due telecamereVogliamo realizzare un algoritmo di visione stereo real-time, per valutare le distanze di oggetti inquadrati da due telecamere Feature: useremo le intensità dei pixel, danno output densi e hanno un campo di applicazione ampio (es.: interni-esterni)Feature: useremo le intensità dei pixel, danno output densi e hanno un campo di applicazione ampio (es.: interni-esterni) (Ohta-Kanade, 1986)

3 Relazione disparità-distanza Se le telecamere hanno piani focali complanari e allineati, posso trovare la distanza in base alla disparità con un’opportuna triangolazioneSe le telecamere hanno piani focali complanari e allineati, posso trovare la distanza in base alla disparità con un’opportuna triangolazione b = baseline d = disparità Z f = focale Distanza: inv. prop. alla disparitàDistanza: inv. prop. alla disparità Risoluzione: prop. al quadrato della distanzaRisoluzione: prop. al quadrato della distanza

4 Procedura di rettificazione Si riproiettano le immagini su piani focali complanari allineati, con una rotazione dei piani attorno ai centri focaliSi riproiettano le immagini su piani focali complanari allineati, con una rotazione dei piani attorno ai centri focali Problema: non sempre posso disporre di piani focali così allineatiProblema: non sempre posso disporre di piani focali così allineati C2C2 C1C1 M2M2 M1M1 W R1R1 R2R2 C1C1 M2M2 M1M1 W R1R1 C2C2 R2R2 Funzione disponibile nella libreria OpenCVFunzione disponibile nella libreria OpenCV

5 Mappe di disparità L’output del programma consiste in un immagine in toni di grigio: maggiore la disparità, maggiore l’intensità luminosaL’output del programma consiste in un immagine in toni di grigio: maggiore la disparità, maggiore l’intensità luminosa Quindi oggetti più vicini = toni di grigio più chiariQuindi oggetti più vicini = toni di grigio più chiari Dalla mappa di disparità è immediato risalire alle distanze con la relazione disparità-distanzaDalla mappa di disparità è immediato risalire alle distanze con la relazione disparità-distanza Cam.1Cam.2

6 Disparità con metodi locali Utilizzo la funzione SSD per confrontare due zone rettangolari nell’immagine sinistra e destraUtilizzo la funzione SSD per confrontare due zone rettangolari nell’immagine sinistra e destra Per ogni punto (x,y) scelgo il valore di disparità d min che minimizza SSD(x,y,d)Per ogni punto (x,y) scelgo il valore di disparità d min che minimizza SSD(x,y,d) SSD in programmazione dinamica: il tempo di calcolo diventa indipendente dall’area della finestraSSD in programmazione dinamica: il tempo di calcolo diventa indipendente dall’area della finestra Tempo totale di esecuzione:Tempo totale di esecuzione: O(righe colonne max.livelli)

7 Disparità con metodi globali Cerco la sequenza di matching tra feature che massimizza la probabilità di matching dell’intera scanline; tengo conto di eventuali occlusioni (feature visibili in 1 sola imm.)Cerco la sequenza di matching tra feature che massimizza la probabilità di matching dell’intera scanline; tengo conto di eventuali occlusioni (feature visibili in 1 sola imm.) Equivalente ad un problema di cammino a costo minimo (Dijkstra)Equivalente ad un problema di cammino a costo minimo (Dijkstra) OriginaleMet.localiMet.globali Superiorità rispetto ai metodi localiSuperiorità rispetto ai metodi locali Scanline sinistra Scanline destra

8 Metodi globali: vincoli Alcune combinazioni di matching corrispondono a soluzioni fisicamente impossibili: le scartiamo imponendo dei vincoliAlcune combinazioni di matching corrispondono a soluzioni fisicamente impossibili: le scartiamo imponendo dei vincoli Vincolo di unicità: uno stesso pixel non può appartenere a due matching diversiVincolo di unicità: uno stesso pixel non può appartenere a due matching diversi Vincolo di ordinamento: scelti due matching (l 1,r 1 ) e (l 2,r 2 ), se l 1 <l 2 allora anche r 1 <r 2 e viceversaVincolo di ordinamento: scelti due matching (l 1,r 1 ) e (l 2,r 2 ), se l 1 <l 2 allora anche r 1 <r 2 e viceversa O(righe colonne max.livelli) Metodi globali: tempo di esecuzione pari a quello ottenibile con metodi locali

9 Metodi globali: miglioramenti Vincolo di stabilizzazione: a un’occlusione destra non può seguire un’occlusione sinistra, e viceversa (almeno un pixel di matching nel mezzo)Vincolo di stabilizzazione: a un’occlusione destra non può seguire un’occlusione sinistra, e viceversa (almeno un pixel di matching nel mezzo) Uso della SSD anche nell’algoritmo globaleUso della SSD anche nell’algoritmo globale Termine a priori: aggiungiamo alla funzione di costo una probabilità gaussiana centrata sul valore di disparità al frame precedente; funzionamento in feedbackTermine a priori: aggiungiamo alla funzione di costo una probabilità gaussiana centrata sul valore di disparità al frame precedente; funzionamento in feedback

10 Filtraggio di Kalman Vogliamo attenuare la rumorosità delle misure di disparitàVogliamo attenuare la rumorosità delle misure di disparità Per ogni pixel dell’output uso un filtro di Kalman con modello dinamico molto semplice:Per ogni pixel dell’output uso un filtro di Kalman con modello dinamico molto semplice: Matrici di covarianza Q ed R: vanno regolate a un valore di compromesso tra buona attenuazione del rumore ed eccessiva presenza di “scie” in outputMatrici di covarianza Q ed R: vanno regolate a un valore di compromesso tra buona attenuazione del rumore ed eccessiva presenza di “scie” in output Ottimizzazione con OpenCV: le operazioni matematiche per il filtraggio vengono eseguite in blocco su tutti i pixel con funzioni altamente ottimizzateOttimizzazione con OpenCV: le operazioni matematiche per il filtraggio vengono eseguite in blocco su tutti i pixel con funzioni altamente ottimizzate

11 Risultati sperimentali Firewire 1280x toni di grigio PC P4 2GHz RAM 512MB

12 Risultati sperimentali DistanzaTelec.sinistraTelec.destra

13 Integrazione con i software per il controllo e il path planningIntegrazione con i software per il controllo e il path planning Modelli più avanzati per il Filtro di KalmanModelli più avanzati per il Filtro di Kalman Uso di immagini a coloriUso di immagini a colori Ottimizzazione con istruzioni SIMD e parallelizzazione per un miglior frame rateOttimizzazione con istruzioni SIMD e parallelizzazione per un miglior frame rate Sviluppi futuri Website: