Punti omologhi in spazi immagine alternativi

Le tecniche di ricostruzione tridimensionale presentate finora sono state introdotte assumendo principalmente il modello di camera pin-hole. Tale ipotesi tuttavia non è strettamente necessaria. La triangolazione di un punto richiede infatti solamente che ad ogni punto immagine sia possibile associare in maniera univoca il corrispondente raggio ottico nello spazio tridimensionale.

Nel caso generale, una camera può essere descritta da una funzione di proiezione

\begin{displaymath}
\mathbf{p} = \Pi(\mathbf{m})
\end{displaymath} (10.96)

dove $\mathbf{m}$ è un punto espresso in coordinate camera e $\mathbf {p}$ la sua proiezione sul piano immagine. Se la funzione di back-propagation
\begin{displaymath}
\mathbf{v} = \Pi^{-1}(\mathbf{p})
\end{displaymath} (10.97)

permette di ricavare la direzione del raggio ottico associato al pixel osservato, allora tutte le relazioni geometriche introdotte nelle sezioni precedenti rimangono valide.

In particolare, dati due punti omologhi osservati da due camere, ai corrispondenti pixel vengono associati due raggi ottici

\begin{displaymath}
\begin{array}{l}
\mathbf{x} = \mathbf{t}_1 + \lambda_1 \mat...
... \mathbf{x} = \mathbf{t}_2 + \lambda_2 \mathbf{v}_2
\end{array}\end{displaymath} (10.98)

dove $\mathbf {t}_1$ e $\mathbf{t}_2$ rappresentano i centri ottici delle due camere e $\mathbf{v}_1$, $\mathbf{v}_2$ le direzioni associate ai rispettivi punti immagine. La triangolazione del punto tridimensionale si riconduce quindi al medesimo problema già discusso in sezione 10.3.1 indipendentemente dal modello di camera utilizzato.

Questa osservazione permette di estendere la ricostruzione tridimensionale a camere prospettiche, Fish-Eye, omnidirezionali e più in generale a qualsiasi sensore per il quale sia nota la relazione tra pixel osservato e raggio ottico corrispondente.

In molti casi pratici risulta conveniente trasformare l'immagine acquisita in uno spazio alternativo mediante una opportuna Warp-Table. Lo scopo di questa trasformazione non è solamente correggere la distorsione introdotta dall'ottica ma anche semplificare la ricerca di punti omologhi.

Per preservare il concetto di disparità, e quindi poter continuare ad applicare algoritmi stereo densi sviluppati per immagini rettificate, è necessario che la trasformazione mantenga allineate le corrispondenze sulle stesse righe dell'immagine. In termini pratici si richiede che la coordinata orizzontale dipenda solamente dall'angolo orizzontale di osservazione mentre la coordinata verticale dipenda solamente dall'angolo verticale.

Una parametrizzazione particolarmente diffusa è quella angolare (o polare), definita dalle relazioni

\begin{displaymath}
\begin{array}{l}
x' = \operatorname{atan} \frac{x}{\sqrt{y^2 + z^2}} \\
y' = \operatorname{atan} \frac{y}{z}
\end{array}\end{displaymath} (10.99)

che trasformano un vettore direzione espresso in coordinate camera $(x,y,z)$ nelle coordinate immagine alternative $(x',y')$.

La trasformazione inversa risulta

\begin{displaymath}
\begin{array}{l}
x = \sin(x') \\
y = \cos(x') \sin(y') \\
z = \cos(x') \cos(y')
\end{array}\end{displaymath} (10.100)

e permette di ricostruire immediatamente il raggio ottico associato ad ogni pixel della nuova rappresentazione.

A differenza del modello prospettico classico, tale parametrizzazione consente di rappresentare punti distribuiti su un campo visivo estremamente ampio, fino ad una semisfera completa. Per questa ragione è frequentemente utilizzata per la rimappatura di camere Fish-Eye e sistemi panoramici.

Una volta nota la funzione inversa che associa ad ogni pixel il corrispondente raggio ottico tridimensionale, tutte le tecniche discusse in questo capitolo, inclusi vincoli epipolari, stima della matrice Essenziale, triangolazione, ricostruzione sparsa e stereo denso, possono essere applicate senza modifiche sostanziali. Cambia solamente il modo in cui dal punto immagine viene ricavata la direzione del raggio ottico osservato.

Paolo medici
2026-10-06