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
Calibrazione intrinseca
Visione 3D
On AIR 2007
Spesso risulta utile calibrare la sola componente intrinseca di
un sistema di visione (matrice K), e non si dispone di
oggetti di forma e dimensioni note
Il metodo classico (6 punti 3D noti – 11 parametri da stimare)
non risulta quindi direttamente applicabile
Esistono diverse alternative basate sull’uso di strutture
geometriche (rette, piani) di norma presenti nelle scene
Si tratta di metodi che utilizzano proprietà della geometria
proiettiva la cui osservazione permette di dedurre la
matrice di calibrazione K
Visione 3D
On AIR 2007
Metodo dei punti di fuga
Il metodo si riconduce ad una osservazione già nota ai
pittori del rinascimento: rette parallele nel mondo si
intersecano sull’immagine in un punto
Visione 3D
On AIR 2007
Taylor pubblica Linear Perspective nel
1715. In esso mostra come ricavare
la posizione 3D di un osservatore
che si pone davanti ad un quadro
(inverse perspective). Introduce i
punti di fuga e ne studia le proprietà
Visione 3D
On AIR 2007
Visione 3D
On AIR 2007
Visione 3D
On AIR 2007
Con le coordinate omogenee, possiamo introdurre i punti
di fuga come immagini dei punti all’infinito
Prendiamo 3 punti all’infinito corrispondenti agli assi
Visione 3D
On AIR 2007
Introducendo la fattorizzazione di P in termini di K ed R
Per le proprietà di R segue
Visione 3D
On AIR 2007
Si ottengono quindi 6 equazioni indipendenti per le entrate
della matrice simmetrica KKT (6) e per i fattori di scala (3)
Per avere una soluzione, occorre che le incognite in K siano
al massimo 3 (scelta tipica: focale e coordinate centro)
Per un modello di K semplificato (no skew, pixel quadrato),
la conoscenza di 3 punti di fuga per direzioni ortogonali,
consente la calibrazione della telecamera
Questo fatto ha una notevole interpretazione geometrica (già
implicita nei lavori di Taylor)
Visione 3D
On AIR 2007
Assumendo no skew e pixel quadrato …
Da cui segue
Per l’ortogonalità delle colonne di R e posto
Visione 3D
On AIR 2007
Applicando lo stesso procedimento a tutte le coppie, si
hanno le tre equazioni seguenti
Sottraendo fra loro coppie di equazioni, si ottengono
relazioni del tipo
Ciò significa che il segmento x1x0 è ortogonale a x2x3, cioè
x0 è l’ortocentro del triangolo x1x2x3 (fatto già noto nel
1715!). Noto x0, la stima della focale è immediata.
Visione 3D
On AIR 2007
La stima di un punto di fuga note le equazioni di almeno 2 rette
è un banale problema di intersezione (o di fitting) 2D
Esistono svariati approcci utilizzabili, la cui precisione dipende
da quanto sono effettivamente incidenti le varie rette
utilizzate.
Visione 3D
On AIR 2007
Problema: il punto di fuga deve essere al finito, cioè le rette
che lo definiscono non devono essere parallele
sull’immagine. Instabilità numerica nei casi limite
Il metodo è molto semplice e facile da implementare in modo
automatico, tramite algoritmi di image processing che
trovano rette sulle immagini
Se il centro è fissato (sola focale incognita) bastano 2 punti di
fuga per direzioni ortogonali. Adatto per stimare zoom
variabili.
Visione 3D
On AIR 2007
Metodo omografico (Zhang)
Si suppone che siano disponibili nella scena, tramite oggetti
già presenti, oppure tramite strutture apposite, almeno 3
piani non paralleli fra loro (non necessariamente
ortogonali)
Ogni piano deve avere una struttura sufficientemente nota per
poter calcolare una omografia H tra piano ed immagine (es.
rettangolo di dimensioni note)
Visione 3D
On AIR 2007
Anche in questo caso, il vincolo forte è l’ortonormalità delle
colonne di R, che fornisce una coppia di equazioni del tipo
Una omografia fornisce quindi 2 equazioni per le entrate di K
Il numero minimo di omografie dipende da quanti gradi di
libertà sono presenti in K (valori possibili: 1, 3, 4, 5). In
generale con 3 omografie (o più), qualunque K è
determinata univocamente tramite stime m.q.
Visione 3D
On AIR 2007
La soluzione generale si ottiene in termini di una matrice
dalla quale si estrae un vettore di 6 incognite
Con qualche manipolazione algebrica, le 2 equazioni danno
Visione 3D
On AIR 2007
Acculando 2 equazioni per ogni omografia si ottiene in
generale un sistema omogeneo del tipo
La matrice V ha 2N righe e 6 colonne, e b si trova con il solito
metodo basato su SVD di V o sugli autovettori di VTV
Un problema di algebra interessante è, data B, come trovare
K (o meglio K-1). Si tratta di una “radice quadrata” di una
matrice data.
Esiste una decomposizione (Cholesky) che fattorizza B in
ATA, con A triangolare, che è proprio ciò che serve per
chiudere il calcolo
Visione 3D
On AIR 2007
Dal punto di vista teorico, tutte le omografie indipendenti
sono valide. Tuttavia dal punto di vista della stabilità
numerica è meglio che le omografie formino angoli
elevati sia fra loro che con il piano immagine
L’ultima condizione è di difficile realizzazione perché più
un piano risulta inclinato rispetto all’immagine più
appare “sfuggente” e quindi poco visibile
Si usano quindi di solito piani (dedotti da oggetti noti
mobili) fra loro sghembi ma con modeste inclinazioni
rispetto all’immagine
Visione 3D
On AIR 2007
Esempio di struttura planare utilizzata nel lavoro originale di Zhang
Visione 3D
On AIR 2007
Metodo completamente automatico (Cipolla)
Una classe di metodi riconduce il calcolo di K alla stima di F
tra 2 viste diverse della stessa scena (ed eventuale
zoom)
Si basano sul fatto che F ha 7 gradi di libertà, mentre E ne
ha solo 5: restano 2 gradi di libertà sfruttabili per stimare
due focali
Esistono formule chiuse per le 2 focali in base agli elementi
di F (con deduzione ad algebra molto complessa)
Numericamente instabili in presenza di stima di F non
precise, ma utili per la totale assenza di condizioni sulla
scena (solo punti accoppiati tra le 2 viste, senza info 3D)
Visione 3D
On AIR 2007