Analisi di sequenze di immagini Sequenze di immagini Il flusso ottico Corrispondenze discrete
Stima del Movimento La stima del movimento introduce il tempo L'evoluzione temporale comporta un enorme incremento dei dati necessari per elaborare gli eventi che hanno luogo y x t Visione Artificiale 08/09 Sequenze di immagini 2
Onere computazionale Filmato a colori Risoluzione VGA: immagini 640x480 25 fotogrammi al secondo pixel da elaborare (e/o memorizzare)al secondo: 640x480x3x25=23040000 23M La memorizzazione di 30 secondi richiede circa un CD-ROM Visione Artificiale 08/09 Sequenze di immagini 3
Stima del Movimento L'evoluzione temporale sulla scena non dipende semplicemente dal moto degli oggetti si hanno dei cambiamenti causati dal moto relativo dell'osservatore Visione Artificiale 08/09 Sequenze di immagini 4
Stima del Movimento Molto spesso i due effetti sono combinati Visione Artificiale 08/09 Sequenze di immagini 5
Motion tracking Velocità rilevate Velocità media Velocità effettiva Visione Artificiale 08/09 Sequenze di immagini 6
Stima del Movimento Il problema è risalire alla velocità effettiva v 0 dell oggetto in movimento a partire dalla velocità v i rilevata per ogni punto della immagine P i O O P 0 v i v 0 Visione Artificiale 08/09 Sequenze di immagini 7
Stima del movimento Proprio il moto relativo può essere sfruttato per ricostruire la natura tridimensionale della scena osservata Occorre notare che questo problema, schematizzabile come il tentativo di ottenere informazione 3D da proiezioni 2D, appartiene alla categoria dei problemi inversi o mal condizionati, per i quali cioè non è garantita l'esistenza e l'unicità della soluzione Visione Artificiale 08/09 Sequenze di immagini 8
Illusione ottica La rotazione viene interpretata come una traslazione Visione Artificiale 08/09 Sequenze di immagini 9
Visione Artificiale 08/09 Sequenze di immagini 10 Limiti + = = = = f Y X Y X f z z y x zy zy zx zx z f z y x z zf z y x z f Y X z y x z f f Y X λ 0 0 0 2 2 & & & & & & & & & & & & & & & Ogni movimento lungo il raggio di vista non può essere rilevato
Il flusso ottico Il flusso ottico è definito come il campo vettoriale della variazione di luminosità La variazione puntuale del livello di grigio è legata sia alla velocità del moto che al gradiente Visione Artificiale 08/09 Sequenze di immagini 11
Il flusso ottico Esempio ideale di flusso ottico: campo vettoriale prodotto da un oggetto che si avvicina con velocità uniforme all osservatore Focus of expansion Focus of contraction Visione Artificiale 08/09 Sequenze di immagini 12
Ipotesi fondamentali Per l applicazione del flusso ottico devono essere verificate due ipotesi fondamentali la luminosità della scena deve rimanere costante (variazioni di luminosità potrebbero essere interpretate come uno spostamento) ogni punto in esame resta in vista L immagine viene quindi trattata come una funzione della spazio e del tempo ƒ(x,y,t) Visione Artificiale 08/09 Sequenze di immagini 13
Calcolo del flusso ottico Se l intensità luminosa dipende solo dal moto deve valere la relazione: ƒ(x+δx, y+δy, t+δt) = ƒ(x,y,t) da cui sviluppando in serie si ottiene f(x,y,t) + f x δx + f y δy + f t δt + ε = f(x,y,t) Visione Artificiale 08/09 Sequenze di immagini 14
Calcolo del flusso ottico Indicate con u (δx/δt) e v (δy/δt) le componenti del flusso ottico nelle direzioni x e y si ottiene l equazione fondamentale f x u + f y v + f t = 0 ovvero in forma vettoriale v * f = - f t Visione Artificiale 08/09 Sequenze di immagini 15
Calcolo del flusso ottico v * f = - f t (v + v ) * f = v * f = - f t se il gradiente è perpendicolare al flusso la variazione non è percepibile e risulta nulla solo la componente parallela è valutabile attraverso la formula f t /(f x 2 + f y2 ) ½ Visione Artificiale 08/09 Sequenze di immagini 16
Limiti del flusso ottico Non rilevabile rilevabile Il limite di questo metodo é costituito dal fatto che risulta possibile calcolare il flusso solamente nella direzione del gradiente (se l intensità luminosa rimane costante nella direzione dello spostamento non si notano differenze) Visione Artificiale 08/09 Sequenze di immagini 17
Limiti Una sfera in rotazione non produce effetti visibili (f t =0) La sfera che trasla viene rilevata Visione Artificiale 08/09 Sequenze di immagini 18
Limiti Si noti che anche una sfera ferma con illuminazione in movimento produce una variazione Visione Artificiale 08/09 Sequenze di immagini 19
Calcolo del flusso ottico Per ricavare in modo completo il flusso ottico occorre integrare il modello con ipotesi aggiuntive (in generale si minimizza un funzionale) {(f xu+ f y v + f t ) 2 +λ [(u 2 x+u 2 y)+(v 2 x+ v 2 y)]} dx dy Visione Artificiale 08/09 Sequenze di immagini 20
Esempio sperimentale I(t+1)-I(t) I(t) I(t+1) Visione Artificiale 08/09 Sequenze di immagini 21
Stime basate su corrispondenze discrete P i e P i ' rappresentano le posizioni, in istanti successivi, delle proiezioni sul piano immagine (X,Y) del generico punto p i dell'oggetto p 1 p 1 P i P 1 O O P 1 P i p 1 p 1 Visione Artificiale 08/09 Sequenze di immagini 22
Corrispondenze discrete Il numero di punti analizzati è molto più piccolo che con il flusso ottico Il problema è trovare i punti corrispondenti Una serie di criteri pratici guidano la ricerca Visione Artificiale 08/09 Sequenze di immagini 23
Massima velocità Fissata la massima velocità l area in cui si può trovare il punto omologo è limitata Visione Artificiale 08/09 Sequenze di immagini 24
Massima accelerazione Se il moto è regolare si possono supporre limitate variazioni di velocità La traiettoria risulta quindi smussata Visione Artificiale 08/09 Sequenze di immagini 25
Moto comune In presenza di corpi rigidi, punti vicini si spostano alla medesima velocità Corpi vicini, benché distinti si muovono in maniera simile Visione Artificiale 08/09 Sequenze di immagini 26
Moto comune Visione Artificiale 08/09 Sequenze di immagini 27
Ping pong Visione Artificiale 08/09 Sequenze di immagini 28
Focus of Expansion Y y x X X = fx/z (x, y, z) coordinate reali Y = fy/z (X, Y) coordinate immagine equazione del moto del corpo in movimento (x 0,y 0,z 0 ) + t (u,v,w) Z il risultante F.O.E. è (fu/w, fv/w) (t ) dipende solo dalla direzione Quindi conoscendo il F.O.E. si può ricavare la direzione dello spostamento Visione Artificiale 08/09 Sequenze di immagini 29
Determinazione del FOE Il centro (x, y) di un fascio di rette è mappato nello spazio dei parametri in una sinusoide ρ = x cos θ + y sin θ θ y ρ x Visione Artificiale 08/09 Sequenze di immagini 30
Tempo di impatto Consideriamo un oggetto in avvicinamento con velocità costante (una sfera per esempio) L oggetto è quindi a una distanza vt 0 (t 0 è il tempo di impatto) r 0 =fr/(vt 0 ) (è la dimensione apparente sull immagine) dopo un tempo Δt si ha r 1 =fr/(v(t 0 -Δt)) da cui r 0 / r 1 =(t 0 - Δt)/t 0 t 0 = Δt/(1-r 0 / r 1 ) Si noti che dimensione e velocità rimangono comunque ignote Visione Artificiale 08/09 Sequenze di immagini 31