Ricostruzione della traiettoria 3d di veicoli in intersezioni rotatorie
Ricostruzione della traiettoria 3d di veicoli in intersezioni rotatorie
| |
Coordinator: | MatteoMatteucci (matteo.matteucci@polimi.it) |
Tutor: | DavideRizzi () |
Collaborator: | |
Students: | Andrea Romanoni (andrea.romanoni@polimi.it) |
Research Area: | Computer Vision and Image Analysis |
Research Topic: | |
Start: | 2010/12/17 |
End: | 2012/04/23 |
Status: | Active |
Level: | Ms |
Type: | Thesis |
La tesi ha lo scopo di estendere il lavoro esistente per il tracking e la ricostruzione delle traiettorie di veicoli che percorrono un intersezione rotatoria. Viene fornito in input un insieme di riprese di più telecamere della stessa scena, la rotonda in questione. Il software che verrà implementato dovrà:
- unire le informazioni delle riprese, quindi sincronizzare le immagini e fondere i tre filmati in modo che il filmato creato sia più semplice da analizzare;
- utilizzare il filmato creato per ricostruire in tre dimensioni la traiettoria delle auto che percorrono la rotonda.
Contents
Come ricostruire le traiettorie in 3D
Per capire come costruire le traiettorie in 3D comincio ad implementare un lavoro già esistente (SongNevatia2007)
Sistema di Song e Nevatia
MCMC per ogni frame
Il sistema implementato in un primo momento tratta i frame del video singolarmente, in maniera indipendente l'uno dall'altro. Partendo dall'immagine estratta con la background subtraction, viene ricercata la configurazione di veicoli che meglio approssima il foreground. Ciò che deve essere stimato per ogni frame è il numero di veicoli, la posizione e l'orientamento in 3D di essi. Il problema viene definito come un problema Bayesiano: viene definita la distribuzione a posteriori di probabilità di uno stato data l'immagine del frame corrente. Dato che non possibile conoscere in modo esaustivo questa distribuzione, viene campionata attraverso il metodo MCMC in particolare con il metodo Metropolis-Hastings. La proposta di un nuovo stato nell'ambito di questo algoritmo avviene modificando lo stato della configurazione del campione corrente scegliendo casualmente tra:
- aggiunta di un nuovo veicolo;
- rimozione di un veicolo a caso;
- rimpiazzamento di un veicolo: viene proposto un veicolo e viene eliminato quello più vicino;
- modifica delle posizioni dei veicoli;
- modifica degli orientamenti;
Viterbi per la scelta degli stati da considerare
Per scegliere le configurazioni migliori non viene scelto il campione a più alta probabilità, ma si preferisce utilizzare l'algoritmo di Viterbi per considerare quale storia delle configurazioni è più probabile.
Sistema Proposto
Nel sistema proposto la traiettoria viene costruita a partire dalle traiettorie 2D estratte dal tracker implementato nei lavori precedenti. Inoltre, ogni veicolo viene considerato a se stante indipendentemente dagli altri. Siccome i veicoli possono avere diffferenti dimensioni, vengono utilizzati 3 modelli principali, dai quali si estraggono dei campioni della lunghezza. Per ogni frame e per ogni veicolo è noto il centro del blob, e lo stato del filtro di Kalman in 2D. Proietto il centro e l'orientamento in 3D. Per ogni dimensione e per ogni campione della lunghezza del modello, vengono estratti campioni della pose con una distribuzione gaussiana trivariata.
Infine, dopo aver collezionato tutti i campioni per tutti i frame in cui è presente uno stesso veicolo, si devono scegliere quelli che rappresentano meglio l'immagine. Per fare questo si utilizza ancora Viterbi con una equazione dinamica dipendente dalla probabilità del campione e dalla associazione tra i campioni di istanti adiacenti. La funzione di associazione tra un campione e il campione precedente viene calcolata traslando la proiezione del modello della quantità con cui il blob si è mosso e calcolando il livello di sovrapposizione con la proiezione del campione corrente. Poi a questo termine viene moltiplicato un termine che polarizza i movimenti del modello verso avanti. Infatti viene calcolata la probabilità del campione con una Gaussiana che si allarga all'allontanarsi dal campione precedente, ed è centrata sul vettore orientamento. In questo modo si crea una sorta di cono di distribuzione di probabilità che penalizza campioni che esprimerebbero uno spostamento troppo brusco e non avanzante del veicolo.