ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [6] Absolute Conic
    Multiple View Geometry 2021. 4. 4. 22:18

    본 포스트는 학습한 것을 정리할 목적으로 작성되었습니다.

     

    해당 포스트의 내용 및 그림, 수식 등은 'Multiple View Geometry in Computer Vision' 책을 참고하였습니다. 

     

     

     

    (1) Absolute dual conic

     

    Absolute conic은 plane at infinity에 존재하는 conic이다. 이 conic의 dual $C_{\infty}*$는 metric rectification의 모든 정보를 포함한다. 

    2D projective space의 어떤 두 점 $\textbf{P}와 \textbf{Q}$를 통해 dual conic을 다음과 같이 매개화할 수 있다.

     

    $$ C^* = \textbf{P}\textbf{Q}^T + \textbf{Q}\textbf{P}^T $$

     

    즉 $C^*$는 $\textbf{P}$나 $\textbf{Q}$를 지나는 직선을 매개화 하는 dual conic이다.

     

    비슷한 개념으로 absolute dual conic은 absolute points를 지나는 line을 매개화 하는 dual conic이다.

     

    $$ C_{\infty}^* = \begin{bmatrix} 1 \\ i \\ 0 \end{bmatrix} \begin{bmatrix} 1 & -i & 0 \end{bmatrix}+\begin{bmatrix} 1 \\ -i \\ 0 \end{bmatrix} \begin{bmatrix} 1 & i & 0 \end{bmatrix} = \begin{bmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 0 \end{bmatrix} $$

     

     

    (2) Similarity and absolute dual conic

     

    Simirarity transform에 대하여 absolute dual conic은 invariant이다. 그 역도 성립한다.

    $$ H(C_{\infty}^*) = C_{\infty}^* \  \ if \ and \ only \ if \ \ H=H_S$$

     

    이는 간단하게 증명이 가능하므로 여기에서는 증명을 생략하도록 한다.

     

    이 내용은 이후에 metric rectification을 위한 homograpy를 계산할 때 dof를 하나 줄이면서 up to similarity 해를 구하는데 활용된다.

     

    간단히 먼저 소개하자면, 어떤 homography $H$에 대하여 $H(C)=HCH^T$일 때 $H=H_P H_A H_S$라면 다음이 성립함을 알 수 있다.

     

    $$ {C_{\infty}^*}' = (H_P H_A H_S)C_{\infty}^*(H_P H_A H_S)^T = (H_P H_A)C_{\infty}^*(H_P H_A)^T $$ 

     

    (3) Angles on the projectivity plane

     

    Euclidean geometry에서는 어떤 두 직선사이의 각도에 대하여 다음과 같이 표현할 수 있다.

     

    $$ cos\theta = \frac{l_1 m_1 + l_2 m_2}{\sqrt{(l_1^2 + m_1^2)(m_1^2 + m_2^2)}} $$

     

    위 식을 기본좌표계에서 absolute dual conic을 이용하여 다음과 같이 표현할 수 있다.

     

    $$ l_1 m_1 + l_2 m_2 = \textbf{l}^T C_{\infty}^* \textbf{m} $$

     

    $$ l_1^2 + l_2^2 = \textbf{l}^T C_\infty^* \textbf{l} , \ m_1^2 + m_2^2 = \textbf{m}^T C_{\infty}^* \textbf{m} $$

     

    $$ cos\theta = \frac{\textbf{l}^T C_{\infty}^* \textbf{m}}{\sqrt{(\textbf{l^T}C_\infty^* \textbf{l}) (\textbf{m}^T  C_\infty \textbf{m}) }} $$

     

    위 수식은 기본 좌표계에서 유도되었으나 임의의 좌표계에서도 성립한다. 즉, 위 수식은 좌표계에 의존하지 않고 항상 성립한다.

     

    <Proof>

     

    $$ H(C) = C' \rightarrow (H \textbf{x}^T)C'(H \textbf{x}) = 0 $$

    $$ C' = H^{-T} C H^{-1} $$

    $$ \textbf{l}^T C^* \textbf{l} = 0$$

    $$ {C^*}' = HC^*H^T $$

     

    $$ H(\textbf{l}^T C_{\infty}^* \textbf{m}) = (\textbf{l}^TH^{-1})(H C_{\infty}^* H^T)(H^{-T}\textbf{m}) = \textbf{l}^T C_{\infty}^* \textbf{m} $$

     

    위 증명을 통해 $\textbf{l}^T C_{\infty}^* \textbf{m}$이 projective transformtation에 대하여 invariant라는것을 알 수 있다. 또한 이 값이 0일 경우 두 직선이 orthogonal이다.

     

     

     

     

     

     

     

    댓글

Designed by Tistory.