vuoi
o PayPal
tutte le volte che vuoi
Questo è possibile grazie alla geometria epipolare.
Preso il punto P e i centri ottici Or e Ol delle due camere, definiamo:
R e R' le rette che uniscono i centri ottici al punto P
P e P' i punti che R e R' intersecano i rispettivi piani immagini. Tali punti sono la
proiezione di P
Baseline la retta che unisce i due centri ottici
Epipoli i punti in cui la baseline interseca i piani immagine
Rette epipolari le rette che uniscono P e P' agli epipoli sui rispettivi piani
immagine.
Dunque preso un punto P della scena e nota la sua proiezione sul piano
immagine di una delle due camere, il suo coniugato nel piano immagine
dell’altra camera si troverà sulla sua retta epipolare.
In generale, i parametri del sistema stereo sono 3:
Pr coordinate 3d del punto dal punto di vista camere dx
Pl coordinate 3d del punto dal punto di vista camera sx
R matrice di rotazione indicante l'orientazione tridimensionale delle camere
T vettore ternario inidicante la posizione delle camere
Tali parametri godono delle proprietà che:
(Pl - T)^T * ( T^Pl) = 0 perchè complanari.
Grazie ai parametri estrinseci, Pl può essere espresso in funzione di Pr per cui vale che
Pl = R^T(Pr+T) e sostituendo e semplificando vale che (R^T * Pr)^T *(T^Pl) = 0
Poichè il prodotto vettoriale può essere scritto in prodotto matriciale trasformando T in
un opportuna matrice S vale che:
(R^T * Pr)^T * S*Pl = 0
Mettendo in ordine si ha che Pr^T * R*S*Pl = 0
R*S è detta matrice essenziale e indica la relazione che sussiste tra i coniugati delle
due immagini che sono proiezione di uno stesso punto della scena.
R*S*Pl = 0 è l'equazione della retta epipolare nella camera destra.
Qualora si scegliesse Pr come incognita, R*S*Pl è l'equazione della retta epipolare
nella camera di sx.
Quindi conoscendo la matrice essenziale, riusciamo ad individuare la retta epipolare
sulla quale si trova la proiezione di P della scena conoscendo la sua proiezione del
punto nell'altra camera.
La matrice essenziale è espressa in coordinate mondo, se la si vuole in coordinate
pixel è necessario moltiplicarla per le MPP delle due camere:
R*S*Mpps*Mppd
La triangolazione consente di definire le profondità di un punto, ovvero consente la
ricostruzione delle coordinate di un punto nello spazio.
stereo visione
La principale tecnica usata è quella della la quale prevede l’analisi di
due immagini della stessa scena riprese nello stesso momento ma da punti di vista
differenti.
Questa tecnica è utilizzata anche dal nostro cervello per la percezione di profondità.
In pratica, conoscendo i parametri del sistema stereo e le coordinate 3d di un punto
della scena sia dal punto di vista della camera di sx che dal punto di vista della
camera dx, l’idea è quella di costruire in 3 dimensioni le rette che passano per i fuochi
delle lenti delle due camere e per le proiezioni di P su i due piani immagine.
L’intersezione tra queste rette corrisponde alla posizione di P nello spazio.
Nel caso ideale queste rette saranno incidenti ma a causa dell’approssimazione dei
dati di calibrazione e degli errori sistematici, queste rette risultano non complanari.
Quindi una stima di P’ è data dal punto nello spazio la cui distanza dalla rette risulta
essere minima.
Nel caso in cui si hanno piu camere o piu immagini per camera, la triangolazione viene
effettuata come stima iterativa di tutte le rette nello spazio di cui disponiamo.
La rettificazione epipolare consente di semplificare il calcolo di corrispondenze.
L’idea è quella di porre le rette epipolari ( le rette del piano immagine sul quale
giacciono le proiezioni dei punti della scena) tutte orizzontali e parallele in modo che i
punti che nelle due immagini sono proiezione di uno stesso punto della scena
giacciono sulla stessa riga.
In questo modo il calcolo delle corrispondenze si riduce ad una scansione di righe.
Infatti presa una delle due immagini come immagine di riferimento, per trovare il
coniugato di un punto su di essa nell’altra immagine è necessario scansionare la
stessa riga nell’altra immagine.
Affinchè tutto ciò sia possibile è necessario che i piani immagine delle due camere
devono essere complanari.
Questo comporta che gli epipoli giacciono all’infinito e quindi le rette epipolari siano
orizzontali e che la baseline sia parallela all’asse x di entrambe le fotocamere.
Per rendere i piani immagini complanari è necessario definire due nuove MPP per
entrambe le camere in modo che mantengano i centri ottici e che abbiano gli stessi
parametri estrinseci.
Dette P1 e P2 le due MPP e C1 e c2 i due centri ottici, per ottenere le nuove MPP P1’ e
P2’ è necessario ruotare le matrici originali intorno ai loro centri ottici finchè i piani
immagine non siano complanari.
Nel dettaglio, scritte le Mpp nella loro fattorizzazione vale che:
P1’ = K (R| – R*C1) e P2 = K(R| – R*C2)
Dove K è la matrice dei parametri intrinseci che deve essere uguale ad entrambe le
camere, R è la matrice di rotazione che indica l’orientazione tridimensionale delle
camere e deve essere anch’essa uguale ad entrambe le camere.
Scritta R per comodotià come R = [r1^T r2^T r3^T]^T i cui coefficienti indicano gli
assi x y z in coordinate mondo.
Per rendere R uguale ad entrambe le camere poniamo:
Il nuovo asse X parallelo alla baseline r1 = (C1-C2)/||C1-C2||
Il nuovo asse Y ortogonale ad X e ad un versore arbitrario k che fissa la
posizione dell’asse Y nel piano ortogonale ad X. K è uguale al vecchio vettore
unitario dell’asse Z della vecchia camera di riferimento. Dunque Y sarà
ortogonale sia Y che al vecchio asse Z r2 = k prodVett r1