35
Geometric Camera Model Camera Calibration Ing. Samuele Salti [email protected] Laboratorio di Visione Artificiale (CVLab) http://vision.deis.unibo.it Dipartimento di Elettronica, Informatica e Sistemistica (DEIS) Alma Mater Studiorum - Università degli Studi di Bologna

Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Geometric Camera ModelCamera Calibration

Ing. Samuele [email protected]

Laboratorio di Visione Artificiale (CVLab)http://vision.deis.unibo.it

Dipartimento di Elettronica, Informatica e Sistemistica (DEIS)Alma Mater Studiorum - Università degli Studi di Bologna

Page 2: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele SaltiElaborazione dell’immagine LS

• Un apparato di acquisizione di immagini (macchina fotografica, telecamera, webcam…) raccoglie la luce riflessa dagli oggetti presenti nella scena tridimensionale, creandone così una immagine bidimensionale.

• Se vogliamo usare l'immagine per ottenere informazioni sulla scena, ènecessario determinare un modello analitico di questo processo, per capire come sia possibile “invertirlo”.

• Una volta definito il modello, passeremo a studiare un metodo per stimarne i parametri (calibrazione) usando soltanto le immagini acquisite dal sistema.

• Infine vedremo, anche praticamente, un semplice esempio di ricostruzione tridimensionale della scena, la triangolazione in un set-up stereo.

Geometria di formazione dell’immagine

Page 3: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

Pin-hole camera

• Il modello più semplice (ma anche il più usato) della geometria di formazione dell’immagine è la cosiddetta telecamera pin-hole.

Elaborazione dell’immagine LS

Page 4: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele SaltiElaborazione dell’immagine LS

Pin-hole camera: parametri

• I parametri essenziali di un sistema pin-hole sono due:

– Il centro ottico C– Un piano immagine (o retina) I

• Fissati questi due parametri si derivano altri elementi notevoli:

– La distanza del centro ottico dal piano immagine, detta distanza focale, f

– L’asse ottico, ovvero la retta passante per C e ortogonale ad I

– Il punto principale c intersezione tra il piano immagine I e l’asse ottico

– Il piano focale F parallelo ad I e contenente il centro ottico.

Page 5: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele SaltiElaborazione dell’immagine LS

Pin-hole camera: modello analitico

• Per derivare un modello analitico di una pin-hole camera, è necessario introdurre 2 sistemi di riferimento (S.d.R.) cartesiani

– Uno 3D per i punti della scena– Uno 2D per i punti dell’immagine

• Consideriamo inizialmente un caso particolare

– S.d.R. destrorso (x, y, z) per la scena, centrato nel centro ottico C, con l’asse z coincidente con l’asse ottico. Questa scelta prende il nome di S.d.R. Standard.

– S.d.R destrorso (u, v) per il piano immagine, centrato nel punto principale e con assi u e v orientati come x e y, rispettivamente.

Page 6: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele SaltiElaborazione dell’immagine LS

Proiezione prospettica

• Consideriamo – un punto W di coordinate w = [x,y,z ]T

nel S.d.R. Standard e – la sua proiezione M su I attraverso C, di

coordinate m = [u,v ]T

• Semplici considerazioni di similitudine tra triangoli portano alla relazione

da cui la relazione non lineare

f u vz x y

− −= =

fu xzfv yz

⎧ = −⎪⎪⎨⎪ = −⎪⎩

Page 7: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele SaltiElaborazione dell’immagine LS

Geometria proiettiva

• Lo spazio fisico è uno spazio euclideo 3-D, in cui i punti, una volta fissato un sistema di riferimento, si possono rappresentare con vettori reali tridimensionali.

– In questo spazio si dice che piani paralleli non si intersecano, o si intersecano “all’infinito”– La rappresentazione di questi punti all’infinito non è possibile in questo spazio vettoriale.

• Immaginiamo di aggiungere una coordinata alle nostre terne, per es.diventa

e consideriamo entrambe le ennuple rappresentazioni valide dello stesso punto.• In aggiunta, non vincoliamo la quarta coordinata ad essere 1, ma definiamo

• In questa rappresentazione, un punto dello spazio è quindi identificato da una classe di equivalenza di quadruple, dove quadruple equivalenti differiscono solo per un fattore moltiplicativo.

• Questa è la cosiddetta rappresentazione in coordinate omogenee del punto (x, y, z).• È immediata l’estensione a spazi euclidei di qualunque dimensione.

( ) ( ) ( )1 2 2 2 2 0x y z x y z kx ky kz k k≡ ≡ ∀ ≠

( )x y z ( )1x y z

Page 8: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele SaltiElaborazione dell’immagine LS

Punti all’infinito

• Gli unici punti che non hanno un corrispondente nello spazio euclideo, sono i punti per cui la nuova coordinata vale 0, es (x, y, z, 0).

• L’ipotetico corrispondente (inesistente nello spazio euclideo) sarebbe rappresentato dalle coordinate (x/0, y/0, z/0), ovvero “coordinate infinite”.

• Usando le coordinate omogenee è quindi possibile rappresentare analiticamente i punti all’infinito come

tutti i punti la cui ultima coordinata vale 0.

• Il punto di coordinate (0, 0, 0, 0) non è definito. – Questo punto NON è l’origine del sistema di riferimento scelto per lo spazio

euclideo (0, 0, 0), il quale ha coordinate omogenee (0, 0, 0, k), k≠0.• Si può dimostrare che tutti i punti all’infinito giacciono su un piano, che

prende il nome di piano all’infinito.

Page 9: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele SaltiElaborazione dell’immagine LS

Un ulteriore esempio in R2

• Considerando il sistema che definisce l’intersezione di due rette

questo ha soluzioni (Teorema di Cramer)

• Se le rette sono parallele, il denominatore si annulla, e quindi non c’èsoluzione (o impropriamente, la soluzione è un punto “all’infinito”).

• Se le rette sono distinte, almeno uno dei tre valori presenti nella formula ècomunque non nullo.

c bc b

xa ba b

′ ′= −

′ ′

a ca c

ya ba b

′ ′= −

′ ′

00

ax by ca x b y c

+ + =⎧⎨ ′ ′ ′+ + =⎩

Page 10: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele SaltiElaborazione dell’immagine LS

Un ulteriore esempio in R2

• Mantenendo le tre coordinate separate, e usando la rappresentazione in coordinate omogenee, si passa nello spazio proiettivo P2.

• In questo spazio proiettivo il sistema precedente ha sempre una soluzione, quella indicata dalla formula in alto.

• In uno spazio proiettivo valgono quindi le seguenti proprietà:– Esiste un’unica retta passante per due punti distinti (= euclideo)– Ogni coppia di rette distinte ha sempre un punto in comune, unico. (≠ euclideo)

• La seconda proprietà ci dice anche che in uno spazio proiettivo non esiste il concetto di parallelismo, e quindi nemmeno quello di distanza.

, ,c b a c a b

kx ky kc b a c a b

⎛ ⎞= = =⎜ ⎟′ ′ ′ ′ ′ ′⎝ ⎠

,

c b a cc b a c

x ya b a ba b a b

⎛ ⎞⎜ ⎟′ ′ ′ ′⎜ ⎟= − = −⎜ ⎟⎜ ⎟′ ′ ′ ′⎝ ⎠

Page 11: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele SaltiElaborazione dell’immagine LS

Riassumendo

• Ogni spazio euclideo Rn può essere esteso in una nuova struttura geometrica, il cosiddetto spazio proiettivo Pn, rappresentandone i punti in coordinate omogenee.

• La rappresentazione in coordinate omogenee prevede l’aggiunta di una nuova coordinata k allo spazio vettoriale– k ≠ 0 rappresenta punti effettivi di Rn le cui coordinate sono xi/k, i = 1…n– k = 0 rappresenta punti ideali di Rn , i cosiddetti punti all’infinito.

• Questa nuova struttura permette quindi di rappresentare e trattare analiticamente in maniera omogenea (senza introdurre eccezioni o casi speciali) anche i punti all’infinito.

Page 12: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

Proiezione prospettica…reloaded

• Abbiamo visto che sussiste una relazione non lineare tra le coordinate della scena e quelle del punto immagine:

• Torniamo al nostro punto W e alla sua proiezione prospettica M, le cui coordinate euclidee nel S.d.R. Standard e in quello immagine avevamo definito rispettivamente come w = [x,y,z ]T e m = [u,v ]T .

• Espresse in coordinate omogenee (che indicheremo sempre con una tilde sovrastante il vettore) le loro rappresentazioni diventano:

Elaborazione dell’immagine LS

f fu x v yz z

= − = −

1

uv⎡ ⎤⎢ ⎥= ⎢ ⎥⎢ ⎥⎣ ⎦

m

1

xyz

⎡ ⎤⎢ ⎥⎢ ⎥=⎢ ⎥⎢ ⎥⎣ ⎦

w

Page 13: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

Proiezione prospettica e coord. omogenee

• Usando le coordinate omogenee (e quindi considerando la trasformazione come tra spazi proiettivi), la proiezione prospettica diviene una trasformazione lineare.

• Usando la notazione matriciale

o anche, dove indica “uguale a meno di un fattore di scala arbitrario”

Elaborazione dell’immagine LS

0 0 00 0 0

1 0 0 1 01

xu fx f

yk v fy f

zz

⎡ ⎤− −⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎢ ⎥

⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥= − = −⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦ ⎣ ⎦

⎣ ⎦

k =m Pw

m Pw

Page 14: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

La matrice di proiezione prospettica

• La matrice rappresenta il modello geometrico della telecamera, e viene detta matrice di proiezione prospettica (PPM).

• Nel caso ancor più idealizzato in cui il piano immagine si trova davanti al centro di proiezione (f negativa) e le distanze sono misurate in unità di distanze focali ( f = -1) la PPM diviene

• Questa forma estrema della PPM rappresenta l’essenza della proiezione prospettica. Notiamo che, come era lecito attendersi, la coordinata omogenea del punto 3D non ha influenza sul risultato della proiezione (al variare della 4°

coordinata, i punti 3D giacciono sullo stesso raggio ottico)

Elaborazione dell’immagine LS

P

[ ]1 0 0 00 1 0 0 |0 0 1 0

⎡ ⎤⎢ ⎥= =⎢ ⎥⎢ ⎥⎣ ⎦

P I 0

Page 15: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

Un modello più realistico

• Per rendere più prossimo il nostro modello ad un sistema di acquisizione reale è necessario complicarlo, introducendovi gli effetti de:

– la pixellizzazione (forma e dimensione della matrice CCD e sua posizione rispetto al centro ottico)

– la trasformazione rigida tra la telecamera e la scena

Elaborazione dell’immagine LS

Page 16: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

Pixellizzazione

• La pixellizzazione viene presa in considerazione mediante l’inserimento – della traslazione del punto principale (u0; v0), dovuta al cambio di sistema di

riferimento che si considera solidale con il sensore e localizzato in un suo angolo, come si definisce tipicamente per le immagini.

– e degli effetti di scalatura non uniforme lungo i due assi, dovuti alla forma non ideale degli elementi sensibili della superficie del sensore (ku; kv)

• ku è l’inverso della dimensione efficace del pixel lungo la direzione u (pixel˙m-1)

• Le nuove formule di proiezione sono dunque

Elaborazione dell’immagine LS

0 0u vf fu k x u v k y v

z z− −

= + = +

Page 17: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

La matrice degli intrinseci

• In forma omogenea l’equazione della PPM diventa

• La matrice A, che modella le caratteristiche del sensore, è detta matrice dei parametri intrinseci.

• I parametri intrinseci possono essere ridotti al minimo necessario definendo au=-fku , av=-fkv : si tratta della lunghezza focale espressa in pixel orizzontali e verticali. I parametri intrinseci sono quindi 4.

– Il modello più generale prevede un quinto parametro, lo skew, ovvero l’angolo tra gli assi del sistema di riferimento del sensore. La sua cotangente occuperebbe la posizione indicata dall’asterisco, ed è in pratica sempre 0 ( = ctg(π/2) ).

• Notiamo che la matrice degli intrinseci è sempre triangolare superiore.

Elaborazione dell’immagine LS

[ ](*)

0

0

0 00 0 |0 0 1 0

u

v

fk ufk v

⎡ ⎤−⎢ ⎥= − =⎢ ⎥⎢ ⎥⎣ ⎦

P A I 0

Page 18: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

Un modello più realistico

• Per rendere più prossimo il nostro modello ad un sistema di acquisizione reale è necessario complicarlo, introducendovi gli effetti de:

– la pixellizzazione (forma e dimensione della matrice CCD e sua posizione rispetto al centro ottico)

– la trasformazione rigida tra la telecamera e la scena

Elaborazione dell’immagine LS

Page 19: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

Cambio di S.d.R.

• Quanto visto finora si basava sull’assunzione di un S.d.R. per la scena molto particolare, coincidente con quello standard della telecamera.

• Più in generale il S.d.R. della scena sarà legato a quello standard da– una rotazione intorno al centro ottico (modellabile da una matrice ortogonale R)– uno spostamento (modellabile da un vettore di traslazione t)

• La relazione tra le coordinate di uno stesso punto nei due S.d.R. è dunque

• Fino ad adesso abbiamo visto che

• La formula più generale di una proiezione prospettica è quindi

Elaborazione dell’immagine LS

oppure con .1std std

⎡ ⎤= + = = ⎢ ⎥

⎣ ⎦

R tw Rw t w Gw G

0

[ ]| stdk =m A I 0 w

[ ]| ovvero [ | ]k k= =m A I 0 Gw m A R t w

Page 20: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

Parametri estrinseci

• La forma generale di una PPM è quindi

• La matrice G, che modella la posizione della telecamera rispetto alla scena, èdetta matrice dei parametri estrinseci.

• Una generica matrice di rotazione (che ha 9 elementi) è definita da 3 parametri indipendenti, che corrispondono ai valori degli angoli di rotazione rispetto agli assi del S.d.R. I parametri estrinseci sono quindi 3+3 = 6.

• La PPM più generale tiene quindi conto degli effetti del sensore, tramite A, della posizione del S.d.R. mondo grazie a G e della proiezione prospettica incarnata da [ I|0 ].

• Esistono anche effetti dovuti alle distorsioni introdotta dalle lenti, che non considereremo, ma che possono essere modellati tramite un vettore di parametri, detti di distorsione radiale e tangenziale. Questo vettore comunque non modifica la forma della PPM, che si basa solo sul modello pin-hole puro.

Elaborazione dell’immagine LS

[ ] [ ]| ovvero |= =P A I 0 G P A R t

Page 21: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

PPM e fattore di scala

• Definendo

si ottiene la seguente forma espansa di una PPM

• Una generica PPM è composta da 12 elementi ma dipende da 5+6 = 11 parametri indipendenti. La PPM è infatti definita a meno di un fattore di scala. Questo fattore di scala viene di solito eliminato imponendo

Elaborazione dell’immagine LS

1= =3 3q r

1

2

3

ed ttt

⎡ ⎤⎡ ⎤⎢ ⎥⎢ ⎥= = ⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦ ⎣ ⎦

T1T2T3

rt R r

r

[ ] [ ]0 1 0 3 14

0 2 0 3 24

3 34

| |u u

v v

a u a t u t qa v a t v t q

t q

⎡ ⎤ ⎡ ⎤+ +⎢ ⎥ ⎢ ⎥= + + = = =⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦

T T T1 3 1T T T2 3 2

T T3 3

r r qP r r q P p AR At

r q

Page 22: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

Il centro ottico

• Si può dimostrare che ogni PPM è definita da una matrice di rango massimo, pari a 3, e viceversa ogni matrice 3x4 di rango massimo definisce una proiezione prospettica.

– Intuitivamente : il rango massimo è necessario, altrimenti la proiezione di un punto non sarebbe un punto ma un sottospazio di dimensione maggiore (retta, piano, …)

• Ricordando che (0,0,0,0) non rappresenta alcun punto in coordinate omogenee, segue che un punto che appartiene al kernel (soluzioni del sistema omogeneo associato) della matrice è un punto per cui la proiezione non èdefinita.

• Dal rango massimo segue che il kernel di questa matrice ha dimensione uno, ovvero contiene un unico punto. Il centro ottico è infatti l’unico punto per cui la proiezione non è definita, ed ha quindi equazione:

Elaborazione dell’immagine LS

[ ] ovvero con |1

−⎡ ⎤= = − =⎢ ⎥

⎣ ⎦1

4 4

cP 0 c P p P P p

Page 23: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

Calibrazione

• Abbiamo definito un modello analitico del processo di formazionedell’immagine.

• Questo modello è rappresentato dalla PPM, che a sua volta può essere decomposta in tre elementi indipendenti, i parametri intrinseci (la matrice A), la rotazione R e la traslazione t.

• La calibrazione di un sistema di visione consiste nella stima il più possibile accurata dei parametri che definiscono questo modello per ogni telecamera che compone il sistema. A seconda della applicazione è sufficiente stimare solo la PPM oppure è necessario stimare le matrici A, R e t.

• Idea alla base di ogni algoritmo di calibrazione: conoscendo la corrispondenza tra proiezioni 2D e punti 3D di coordinate note, è possibile riscrivere l’equazione della proiezione prospettica come un sistema lineare con i parametri come incognite e quindi risolverlo.

• Per ottenere queste corrispondenze, si usano oggetti di forma nota (scacchiere, pattern ripetitivi, …)

Elaborazione dell’immagine LS

Page 24: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

Stima della PPM

• I metodi per stimare la PPM possono essere classificati in due categorie:

– Quelli che usano un immagine di molti (almeno 2) piani contenenti un pattern noto.

– Quelli che usano molte (almeno 3)immagini diverse di uno stesso pattern piano.

• Nella pratica è molto più difficile procurarsi oggetti 3D adatti, con piani perfettamente ortogonali piuttosto che un pattern planare che può invece essere costruito con buona precisione.

Elaborazione dell’immagine LS

Page 25: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

Metodo di Zhang

• Sono noti – il numero di corner interni della scacchiera piana, diversi lungo le due dimensioni.– la lunghezza del lato dei quadrati che la compongono

• Gli angoli interni della scacchiera possono essere facilmente rintracciati nell’immagine con algoritmi standard (es. Harris corner detector, eventuale raffinamento sub-pixel per maggior precisione).

• In ogni frame si fissa il sistema di riferimento 3D nell’angolo in alto a sinistra della scacchiera con il piano z=0 coincidente con il pattern e gli altri due assi orientati come la scacchiera, in modo che sia mantenuta sempre la stessa associazione tra assi e dimensioni della scacchiera (es x = righe, y = colonne).

– La terza coordinata sarà sempre 0.– La x e la y si ricavano grazie alla lunghezza del lato dei quadrati, che è noto.

• Notare che in ogni frame avremo una diversa stima dei parametri estrinseci.– Se non interessa un S.d.R. 3D particolare, si può prendere i valori di un frame a

caso, p. es. il primo.

Elaborazione dell’immagine LS

Page 26: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

P come omografia

• Con il S.d.R. scelto, in ogni frame si considerano solo punti 3D per cui z=0. L’equazione di proiezione prospettica diventa quindi:

• H è nota come omografia, e rappresenta la forma più generale di trasformazione lineare tra piani. Con w’ si è indicato il vettore (x; y; 1). Intuitivamente si può pensare H come una semplificazione di P nel caso di oggetti planari.

• Se abbiamo una scacchiera con C corner, possiamo impostare C sistemi di 3 equazioni lineari come quello appena illustrato, in cui le coordinate 3D e 2D dei punti sono note grazie alle corrispondenze individuate nell’immagine e le 9 incognite sono gli elementi di H. In realtà, H, così come P, è nota a meno di un fattore di scala, e quindi i parametro indipendenti sono soltanto 8.

Elaborazione dell’immagine LS

1,1 1,2 1,3 1,4 1,1 1,2 1,4

2,1 2,2 2,3 2,4 2,1 2,2 2,4

3,1 3,2 3,3 3,4 3,1 3,2 3,4

01

1

xp p p p p p p x

yk p p p p p p p y

p p p p p p p

⎡ ⎤⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎢ ⎥⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎢ ⎥ ′= = = =⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎢ ⎥⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎣ ⎦⎣ ⎦ ⎣ ⎦

⎣ ⎦

m Pw Hw

Page 27: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

Stima di H

• A partire dall’equazione dell’omografia, si ottiene

ovvero

• Di queste tre equazioni solo due sono linearmente indipendenti e tipicamente si mantengono le prime due.

• Sfruttando tutte le corrispondenze trovate, si costruisce un sistema di 2C x 9 equazioni simili a quelle date. Risolvendolo poi ai minimi quadrati, è possibile stimare in modo robusto H.

Elaborazione dell’immagine LS

3 2 1

1 3 2

2 1 3

,v

k uu v

′ ′⎡ ⎤− ⎡ ⎤⎢ ⎥ ⎢ ⎥′ ′ ′ ′= ⇒ × = ⇒ − = =⎢ ⎥ ⎢ ⎥⎢ ⎥′ ′− ⎢ ⎥⎣ ⎦⎣ ⎦

T T

T T

T T

h w h w hm Hw m Hw 0 h w h w 0 H h

h w h w h

1

2

3

vu

v u

′ ′⎡ ⎤ ⎡ ⎤−⎢ ⎥ ⎢ ⎥′ ′− = =⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥′ ′−⎣ ⎦ ⎣ ⎦

T T

T T

T T

0 w w hw 0 w h Ah 0w w 0 h

Page 28: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

Stima dei parametri intrinseci

• H è nota a meno di un fattore di scala. La sua relazione con i parametri della PPM è dunque

• R è un matrice ortogonale, i suoi vettori sono ortonormali. Questo vincola i parametri intrinseci ad obbedire alle seguenti relazioni:

in cui le incognite sono i parametri di B=A-TA-1 . Poiché A è triangolare superiore, B è simmetrica e le incognite sono solo 6.

• Impilando queste due equazioni calcolate per ogni immagine, si ottiene un sistema lineare 2n x 6, risolvibile se sono disponibile almeno 3 immagini.

Elaborazione dell’immagine LS

[ ] [ ] [ ]3 1 2λ= = =1 2 1 2 4H h h h p p p A r r t

11 2 1 2

1 11 1 2 2 1 1 2 2

0 0− −

− − − −

= ⇒ =

= ⇒ =

T T T

T T T T T T

r r h A A h

r r r r h A A h h A A h

Page 29: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

Stima dei parametri estrinseci

• Nota A, e avendo stimato H in ogni frame, è possibile derivare prima R e poi t per ogni frame.

• Poiché ri ha norma unitaria (è un versore), risulta

• r3 si può ricavare dal vincolo di ortonormalità con r1 ed r2 come

• Infine t

Elaborazione dell’immagine LS

[ ] [ ]3 1 2λ= =1 2H h h h A r r t

1 , 1,2i i i i iλ λ −= ⇒ = =h Ar r A h

3 = ×1 2r r r

13

−=t A h

iλ λ= r

Page 30: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

Ricostruzione 3D

• Anche con una telecamera calibrata, di cui quindi si conoscono i parametri intrinseci ed estrinseci, non è possibile ricostruire la geometria della scena.

• Questa impossibilità è dovuto alla perdita di informazione insita nella proiezione prospettica, che mappa informazioni 3D in un segnale 2D.

Elaborazione dell’immagine LS

Page 31: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

Set-up stereo

• Disponendo invece di n ≥ 2 telecamere, la ricostruzione della struttura 3D della scena diventa possibile, grazie alla triangolazione tra i raggi ottici di punti corrispondenti nelle immagini.

• Il caso più semplice e più usato in pratica è ovviamente quello stereo, con due telecamere. Se si dispone di due telecamere calibrate diventa possibile anche misurare gli oggetti nella scena.

• Il problema da risolvere diventa quello della ricerca automatica delle corrispondenze.

Elaborazione dell’immagine LS

Page 32: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

Triangolazione semplice

• Supponiamo che le MMP delle due telecamere P’, P” siano note, così come una coppia di punti corrispondenti m’, m” nelle due immagini.

• Vogliamo trovare le coordinate tridimensionali del punto W della scena che ha generato m1 ed m2, ovvero del vettore di coordinate w che soddisfa contemporaneamente

• Nel seguito vedremo il più semplice algoritmo di soluzione, che segue immediatamente dalla definizione del problema.

• Esistono metodi più avanzati, che minimizzano errori geometrici e sono meno sensibili al rumore presente nella determinazione delle corrispondenze.

Elaborazione dell’immagine LS

k k′ ′ ′ ′′ ′′ ′′= =m P w m P w

Page 33: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

Triangolazione semplice

• Ragionando come per la stima dell’omografia, è possibile derivare da ognuna delle due equazioni di proiezione un sistema lineare privo dei fattore di scala ki in cui, come al solito, solo due equazioni sono linearmente indipendenti.

• Mantenendo solo le prime due equazioni per ognuno dei due punti immagine si ottiene un sistema lineare , al cui soluzione è il punto 3D cercato, in cui

Elaborazione dell’immagine LS

3 1

3 2

2 1

uk v

u v

⎡ ⎤−⎢ ⎥= ⇒ × = ⇒ − =⎢ ⎥⎢ ⎥−⎣ ⎦

T T

T T

T T

p w p wm Pw m Pw 0 p w p w 0

p w p w

=Aw 0

3 1

3 2

3 1

3 2

uvuv

′ ′ ′⎡ ⎤−⎢ ⎥′ ′ ′−⎢ ⎥=⎢ ⎥′′ ′′ ′′−⎢ ⎥′′ ′′ ′′−⎣ ⎦

T T

T T

T T

T T

p pp p

Ap pp p

Page 34: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele SaltiElaborazione dell’immagine LS

References

1. Andrea Fusiello, Visione Computazionale: appunti delle lezioni. Dipartimento di Informatica, Università di Verona, 2007.

2. Richard Hartley, Andrew Zisserman, Multiple View Geometry in Computer Vision 2ndedition, Cambridge University Press, 2003.

3. Zhang Z. (1998). Determining the epipolar geometry and its uncertainty: A review. International Journal of Computer Vision, 27(2), 161-195.

Page 35: Geometric Camera Model Camera Calibrationunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Luigi Di Stefano...Proiezione prospettica…reloaded • Abbiamo visto che

Samuele Salti

Scomposizione della PPM

• Alcuni metodi di calibrazione stimano direttamente la PPM.• È comunque sempre possibile ricavare gli elementi che la compongono.

Questo è possibile perché ogni matrice NxN non singolare si può decomporre nel prodotto tra una matrice ortogonale e una triangolare superiore tramite la fattorizzazione QR.

• Sia dunque la fattorizzazione QR dell’inversa di P, con Uortogonale e B triangolare superiore.

• Poiché

• Infine, per ricavare t

Elaborazione dell’immagine LS

[ ] [ ] 1 1 1| | − − −= = ⇒ = ⇒P P p AR At P R A

1− =P UB

1−= =t A p Bp

1 1, −= =-R U A B