Chiralità e ricostruzione con pose relative

Dalla decomposizione della matrice Essenziale, a meno di un fattore moltiplicativo, esistono pertanto 4 possibili configurazioni (le due matrici di rotazione e gli associati vettori di traslazione) che ricombinate permettono di ottenere nuovamente la matrice Essenziale di origine. Per determinare quale decomposizione è quella corretta l'unico modo è trovare la configurazione che ricostruisce la maggioranza dei punti tridimensionali in maniera opportuna ovvero, più semplicemente, la configurazione che porta la maggioranza dei punti ad avere la coordinata camera $z$ ad essere positiva.

Sia $\left( \mathbf{R}, \mathbf{t} \right)$ una decomposizione della matrice Essenziale, siano $\mathbf{m}_1$, $\mathbf{m}_2$ le coordinate camera di due punti omologhi, e si definiscano $\tilde { \mathbf{m}_1 } = \left( \tilde{u}_1, \tilde{v}_1, 1 \right)$ e $\tilde { \mathbf{m}_2 } = \left( \tilde{u}_2, \tilde{v}_2, 1 \right)$ tali che

\begin{displaymath}
\tilde { \mathbf{m}_1 } = 1/z_1 \mathbf{m}_1 \qquad \tilde { \mathbf{m}_2 } = 1/z_2 \mathbf{m}_2
\end{displaymath} (9.74)

coordinate camera normalizzate di una coppia di punti omologhi, ovvero
\begin{displaymath}
\tilde{u}_1 = x_1 / z_1 \qquad \tilde{v}_1 = y_1 / z_1 \qquad \tilde{u}_2 = x_2 / z_2 \qquad \tilde{v}_2 = y_2 / z_2
\end{displaymath} (9.75)

L'obiettivo è quello di ricavare le coordinate $z_1$ e $z_2$ attraverso le quali, valutandone la positività, si può supporre che i punti omologhi siano frontali rispetto all'osservatore e da questo dedurre la correttezza della decomposizione della matrice Essenziale. Sfruttando il formalismo (9.74), l'equazione (9.38) diventa

\begin{displaymath}
z_2 \tilde { \mathbf{m}_2 } = z_1 \mathbf{R} \tilde { \mathbf{m}_1 } + \mathbf{t}
\end{displaymath} (9.76)

Svolendo l'equazione con $z_1$ come incognita si ottiene infine
\begin{displaymath}
z_1 = \dfrac{t_x - \tilde{u}_2 t_z}{ \left( \tilde{u}_2 \ma...
...f{r}_3 - \mathbf{r}_2 \right) \cdot \tilde { \mathbf{m}_1 } }
\end{displaymath} (9.77)

avendo indicato con $\mathbf{r}_1, \mathbf{r}_2, \mathbf{r}_3$ le 3 righe della matrice $\mathbf{R}$. La prima equazione sfrutta la coordinata $\tilde{u}_2$ per ricavare $z_1$ mentre la seconda sfrutta la coordinata $\tilde{v}_2$. In questo modo si ottiene la coordinata $\mathbf{m}_1$ da cui ottenere attraverso l'equazione (9.38) immediatamente $\mathbf{m}_2$ e in particolare
\begin{displaymath}
z_2 = \mathbf{r}_3 \cdot \mathbf{m}_1 + t_z
\end{displaymath} (9.78)

per poter valutare la frontalità dell'altro elemento della coppia.

È da notare che la soluzione del problema si poteva ottenere risolvendo direttamente il sistema (9.76) come se fosse un sistema lineare sovradimensionato di 2 incognite in 3 equazioni (approccio simile a quello che si è visto in sezione 9.3.1).

In entrambi i casi viene ottimizzata una quantità algebrica e pertanto non sarà la stima alla massima verosimiglianza del punto tridimensionale: diversamente dagli algoritmi discussi in sezione 9.3.1, questo è un approccio in effetti poco adatto per ricavare le coordinate mondo precise ma sufficiente per verificare che la scelta della decomposizione sia quella corretta.

Va sempre ricordato che essendo il vettore $\mathbf{t}$ estratto dalla matrice Essenziale conosciuto a meno di un fattore moltiplicativo i punti così stimati sono conosciuti a meno di un fattore moltiplicativo.

É da notare che questo discorso è chiaramente generico e può essere applicato al caso di ricostruzione tridimensionale conoscendo la posa relativa tra sensori.

Paolo medici
2025-03-12