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