Modelo de Câmara

As equações que levam um ponto no plano de retina (que pode ser pensado como o plano z = 1 em coordenadas locais à câmara) para coordenadas de imagem são dadas por [4]

u = fxx + cx    
v = fyy + cy    

onde se ignora a distorção introduzida pelo sistema de aquisição de imagem, supondo portanto que estas foram previamente corrigidas neste sentido. Caso o ponto não esteja no plano z = 1 há primeiro que o projectar sobre este plano, passando o anterior a ser escrito como

u = fx$\displaystyle {\frac{{x}}{{z}}}$ + cx    
v = fy$\displaystyle {\frac{{y}}{{z}}}$ + cy    

Este último sistema pode ser escrito como uma transformação projectiva, assumindo a forma

$\displaystyle \left[\vphantom{\begin{array}{ccccccc}u\\  v\\  1\end{array}}\right.$$\displaystyle \begin{array}{ccccccc}u\\  v\\  1\end{array}$$\displaystyle \left.\vphantom{\begin{array}{ccccccc}u\\  v\\  1\end{array}}\right]$ $\displaystyle \sim$ $\displaystyle \underbrace{{\begin{bmatrix}
f_x & 0 & c_x & 0\\
0 & f_y & c_y & 0\\
0 & 0 & 1 & 0
\end{bmatrix}}}_{{\mathcal{I}}}^{}\,$$\displaystyle \left[\vphantom{\begin{array}{ccccccc}x\\  y\\  z\\  w\end{array}}\right.$$\displaystyle \begin{array}{ccccccc}x\\  y\\  z\\  w\end{array}$$\displaystyle \left.\vphantom{\begin{array}{ccccccc}x\\  y\\  z\\  w\end{array}}\right]$

Podemos ainda pensar na transformação ``inversa'' que converte um valor descrito em coordenadas de imagem, no seu correspondente no plano de retina em z = 1:

x = $\displaystyle {\frac{{u-c_x}}{{f_x}}}$    
y = $\displaystyle {\frac{{v-c_y}}{{f_y}}}$    
z = 1    

ou seja,

$\displaystyle \left[\vphantom{\begin{array}{ccccccc}x\\  y\\  1\\  1\end{array}}\right.$$\displaystyle \begin{array}{ccccccc}x\\  y\\  1\\  1\end{array}$$\displaystyle \left.\vphantom{\begin{array}{ccccccc}x\\  y\\  1\\  1\end{array}}\right]$ $\displaystyle \sim$ $\displaystyle \underbrace{{\begin{bmatrix}
\frac{1}{f_x} & 0 & -\frac{c_x}{f_x...
...y}\\
0 & 0 & 1\\
0 & 0 & 1\\
\end{bmatrix}}}_{{\mathcal{I}^{-1}}}^{}\,$$\displaystyle \left[\vphantom{\begin{array}{ccccccc}u\\  v\\  1\end{array}}\right.$$\displaystyle \begin{array}{ccccccc}u\\  v\\  1\end{array}$$\displaystyle \left.\vphantom{\begin{array}{ccccccc}u\\  v\\  1\end{array}}\right]$

Repare-se que se abusa da notação ao escrever $ \mathcal {I}$-1 dado que $ \mathcal {I}$ não é invertível. Pode-se então também pensar na transformação que leva um ponto descrito em coordenadas do mundo em coordenadas de imagem $ \mathcal {P}$ = $ \mathcal {I}$$ \mathcal {E}$ onde $ \mathcal {E}$ $ \in$ SE(3)3.1 é a transformação de coordenadas do referencial do mundo para o referencial da câmara (que designaremos por parâmetros extrínsecos da câmara). À matriz $ \mathcal {P}$ designaremos de matriz de projecção da câmara. Usando o conceito descrito anteriormente é também possível descrever um pixel como um ponto no plano de retina em coordenadas do mundo usando a transformação $ \mathcal {P}$-1 = $ \mathcal {E}$-1$ \mathcal {I}$-1. Tal como na escrita de $ \mathcal {I}$-1, abusa-se uma vez mais da notação dado que $ \mathcal {P}$-1$ \mathcal {P}$ $ \neq$ I embora $ \mathcal {P}$$ \mathcal {P}$-1 = I (onde I é a identidade).

Os parâmetros extrínsecos das câmaras são representados (por uma questão de escrita compacta) através de dois triplos em $ \mathbb {R}$3, um dos quais representa um eixo de rotação passando pela origem do referencial e cuja amplitude descreve o ângulo de rotação, e um segundo triplo em $ \mathbb {R}$3 descrevendo uma translação a ser aplicada após a rotação. Estes 6 parâmetros são facilmente convertidos em matrizes de transformação de referenciais (e vice-versa) usando a fórmula de Rodrigues [5]. Observe-se a figura 3.3.1 para uma representação dos sistemas de coordenadas usados.

Figura 3.3.1: Representação dos sistemas de coordenadas usados. A azul representa-se a posição usual do plano de água em z = 0.
\begin{figure}\center
%
\input{sistemas_coordenadas.pstex_t}
\end{figure}


Ricardo 2004-11-06