ESTRAZIONE DI DATI 3D DA IMMAGINI DIGITALI (Visione 3D

ESTRAZIONE DI
DI DATI
DATI 3D
3D
ESTRAZIONE
DA IMMAGINI
IMMAGINI DIGITALI
DIGITALI
DA
(Visione 3D)
3D)
(Visione
Visione 3D
On AIR 2007
Structure From Motion
Visione 3D
On AIR 2007
Visione 3D
On AIR 2007
Date m immagini di n punti 3D (fissi)
Stimare le m matrici di proiezione Pi e gli n vettori Xj date le mn
corrispondenze xij
Visione 3D
On AIR 2007
SFM in termini generali è ambiguo
• Se si scalano contemporaneamente con fattori reciproci sia P
che X, il risultato non cambia
• Più in generale, si può usare una generica trasformazione Q
Visione 3D
On AIR 2007
Ambiguità proiettiva
Visione 3D
On AIR 2007
Ambiguità affine
Visione 3D
On AIR 2007
Similarità
Visione 3D
On AIR 2007
Una gerarchia di trasformazioni
Proiettiva (15 par)
- preserva le intersezioni
Affine (12 par)
- preserva il parallelismo
Similarità (7 par)
- preserva angoli
Euclidea (6 par)
- preserva lunghezze
Senza altre informazioni la ricostruzione è di tipo proiettivo. Con
vincoli extra si arriva fino al caso euclideo
Visione 3D
On AIR 2007
La camera affine
Si tratta di una astrazione utile per sviluppare la teoria, anche se
diversa dalla realtà dei sistemi di ripresa ottica
La matrice di proiezione più semplice è
Visione 3D
On AIR 2007
La camera affine più generale combina la proiezione ortogonale
con due trasformazioni affini prima e dopo la proiezione
Si può esprimre in coordinate non-omogenee come somma di una
generica trasformazione lineare 2x3 ed una traslazione
Visione 3D
On AIR 2007
SFM affine
Riformulato nel caso affine
SFM ha 2mn equazioni in 8m+3n incognite, con 12 gradi di libertà
non stimabili (ambiguità affine). Deve essere quindi
Per m=2 si ha n>=4
La parte di traslazione è inessenziale, basta sottrarre i centroidi sia
ai punti mondo che ai punti immagine
Visione 3D
On AIR 2007
Esplicitando la struttura matriciale dei dati si ottiene il sistema
La matrice D ha per costruzione rango 3
La soluzione si ottiene per SVD di D (fattorizzazione), imponendo il
rango 3 mediante azzeramento di tutti i successivi valori singolari
Visione 3D
On AIR 2007
Visione 3D
On AIR 2007
Visione 3D
On AIR 2007
La decomposizione non è unica. Si ottiene la stessa D inserendo
una matrice 3x3 C e generando MC e C-1S
Questo accade perché non si sono posti vincoli sulla proiezione, ad
esempio sulla ortogonalità degli assi
Si ottengono 3m equazioni per la matrice L = CCT
da cui si ricava C per decomposizione (Cholesky)
Visione 3D
On AIR 2007
SFM proiettivo
Se vogliamo rendere esplicito il fatto che l’equazione x = PX
vale a meno di una scala, dobbiamo introdurre le profondità
proiettive zij
La ricostruzione è ambigua a meno di una trasformazione
proiettiva (matrice 4x4 Q)
Si ha soluzione se
Con m=2 occorrono almeno 7 punti (matrice fondamentale)
Visione 3D
On AIR 2007
La matrice D ha rango 4
La fattorizzazione in P ed X sarebbe possibile se fossero note le
z. Viceversa se fossero note P ed X si potrebbero calcolare le z.
La soluzione è una procedura iterativa che parte da una scelta
iniziale delle z (es. costanti)
Visione 3D
On AIR 2007
La procedura numerica minimizza un errore algebrico. Il risultato
viene allora inteso come una stima iniziale per la minimizzazione
di un errore geometrico (bundle adjustment)
Visione 3D
On AIR 2007
Per rendere euclidea la ricostruzione occorrono altri vincoli sulle
matrici di calibrazione (es. skew = 0, pixel quadrato). Sotto queste
ipotesi, il metodo viene anche detto self-calibration
La soluzione con m>2 è spesso resa complessa dalla mancanza
di qualche dato (qualche punto non visibile su qualche immagine).
Esistono procedure di recovery basate sulla coerenza della
proiezione
Il passo di bundle adjustment è una procedura complessa e di
terminazione non prevedibile (utile solo per processi offline)
Il settore della ricostruzione da viste multiple è ancora in corso di
sviluppo, specie in connessione con lo stereo classico (SSFM)
Visione 3D
On AIR 2007