보정된 카메라 모델

카메라 보정은 이미지에서 왜곡을 제거하고, 이미지 좌표계를 물리적 좌표계로 변환하여 보다 정확한 기하학적 계산이 가능하도록 하는 과정이다. 보정된 카메라에서는 카메라의 내부 파라미터가 이미 반영되었으므로, 이미지 평면에서 관찰되는 점과 실제 3D 공간에서의 위치를 더 정확하게 연관시킬 수 있다.

보정된 카메라 모델을 수학적으로 나타내기 위해, 카메라 보정 행렬을 \mathbf{K}라고 정의한다. \mathbf{K}는 카메라의 내부 파라미터 행렬로, 초점 거리, 주점, 픽셀 비율 등의 정보를 포함한다. 카메라 보정이 완료된 후, 실제 카메라의 좌표계는 정규화된 좌표계로 변환되며, 이 때 이미지 평면에서의 점 \mathbf{x}는 다음과 같이 표현될 수 있다:

\mathbf{x} = \mathbf{K}^{-1} \tilde{\mathbf{x}}

여기서, \tilde{\mathbf{x}}는 이미지 좌표계에서의 동차(homogeneous) 좌표를 의미한다.

보정 후의 에피폴라 기하학

카메라가 보정되면, 에피폴라 기하학의 표현도 단순화된다. 두 개의 카메라 시스템에서, 한 카메라에서 관찰된 점이 다른 카메라의 이미지 평면 상에서 대응점을 형성하는데, 이 점들은 에피폴라인(epipolar line) 상에 존재한다. 보정된 카메라 시스템에서는 이 에피폴라 기하학 관계가 더욱 직관적으로 표현된다.

두 카메라 간의 상대적인 위치와 자세를 나타내는 외부 파라미터 행렬 \mathbf{R}, \mathbf{t}를 사용하여, 첫 번째 카메라에서의 점 \mathbf{x_1}과 두 번째 카메라에서의 에피폴라 선 l_2는 다음과 같은 관계로 묘사된다:

l_2 = \mathbf{E} \mathbf{x_1}

여기서, \mathbf{E}는 본질 행렬(essential matrix)로, 두 카메라 간의 상대적인 회전과 변위를 나타낸다. 본질 행렬은 다음과 같이 정의된다:

\mathbf{E} = [\mathbf{t}]_\times \mathbf{R}

\mathbf{t}는 두 카메라 간의 변위 벡터이며, [\mathbf{t}]_\times\mathbf{t}의 외적 연산을 나타내는 스큐 대칭 행렬이다.

보정된 이미지 좌표계에서의 점과 에피폴라 선의 관계

보정된 이미지 좌표계에서는 점과 에피폴라 선의 관계가 더욱 간결해진다. 주점(principal point)이 원점에 위치하며, 픽셀 비율은 균일해지기 때문에, 이미지 좌표계에서의 점 \mathbf{x}는 더 이상 왜곡되지 않은 상태에서 본질 행렬을 통해 변환된다.

첫 번째 카메라에서의 점 \mathbf{x_1}이 주어졌을 때, 두 번째 카메라에서의 에피폴라 선은 다음과 같은 식으로 계산된다:

l_2 = \mathbf{E} \mathbf{x_1}

이 때, \mathbf{x_1}은 보정된 이미지 좌표계에서의 점으로, 보정되지 않은 좌표계에서의 점 \tilde{\mathbf{x}}_1와는 다르게 본질 행렬을 통해 직접적으로 에피폴라 선을 구할 수 있다.

에피폴라 제약

에피폴라 제약 조건은 보정된 카메라 시스템에서도 그대로 적용된다. 즉, 첫 번째 카메라에서의 한 점 \mathbf{x_1}은 두 번째 카메라에서의 에피폴라인 상에 정확히 위치하게 된다. 이를 수학적으로 나타내면, 두 번째 카메라에서의 점 \mathbf{x_2}는 다음 조건을 만족해야 한다:

\mathbf{x_2}^T \mathbf{E} \mathbf{x_1} = 0

이 제약 조건은 보정된 카메라 시스템에서도 동일하게 유지되며, 스테레오 매칭(stereo matching) 과정에서 중요한 역할을 한다.

본질 행렬의 성질

본질 행렬 \mathbf{E}는 두 카메라 간의 기하학적 관계를 표현하는 중요한 행렬로, 다음과 같은 중요한 성질을 가진다:

  1. 반대칭 성질: 본질 행렬은 변위 벡터 \mathbf{t}와 회전 행렬 \mathbf{R}을 포함하는 구조 때문에, 그 내부에 스큐 대칭 행렬 [\mathbf{t}]_\times가 존재한다. 따라서 \mathbf{E}는 일반적인 정사각 행렬과 다르게 반대칭적인 성질을 가진다.
\mathbf{E} = [\mathbf{t}]_\times \mathbf{R}
  1. 랭크 제약: 본질 행렬은 고유값 분해(SVD)를 통해 분석될 수 있으며, 두 개의 비영 고유값과 하나의 영 고유값을 가진다. 즉, \mathbf{E}는 랭크 2의 행렬이다. 이 성질은 에피폴라 기하학에서 카메라 간의 관계를 계산할 때 중요한 역할을 한다.

보정된 카메라에서의 삼각 측량

삼각 측량(triangulation)은 두 카메라에서 동일한 물체를 관측했을 때, 그 물체의 3차원 위치를 추정하는 기법이다. 보정된 카메라 시스템에서는, 왜곡이 제거된 상태이므로 삼각 측량 계산이 더욱 정확해진다. 삼각 측량에서, 두 카메라에서의 대응 점을 통해 3D 공간에서의 한 점을 찾을 수 있으며, 이는 보정된 에피폴라 관계를 통해 구체적으로 계산된다.

두 카메라에서의 대응 점 \mathbf{x_1}, \mathbf{x_2}가 주어졌을 때, 이 점들을 사용하여 3차원 공간의 한 점 \mathbf{X}를 계산하는 방법은 다음과 같다:

\mathbf{X} = \lambda_1 \mathbf{R}_1^{-1} \mathbf{K}_1^{-1} \mathbf{x_1} = \lambda_2 \mathbf{R}_2^{-1} \mathbf{K}_2^{-1} \mathbf{x_2}

여기서, \lambda_1\lambda_2는 두 카메라에서의 깊이 정보를 나타내는 스칼라 값이며, \mathbf{R}_1, \mathbf{R}_2는 각각 첫 번째와 두 번째 카메라의 회전 행렬, \mathbf{K}_1, \mathbf{K}_2는 각각 카메라의 내부 파라미터 행렬이다.

이 식을 사용하여 삼각 측량 과정을 통해 3차원 공간에서의 물체 위치를 복원할 수 있다.

보정된 카메라에서의 에피폴과 에피폴라인

에피폴라 기하학에서의 핵심 개념인 에피폴(epipole)과 에피폴라인(epipolar line)은 보정된 카메라 시스템에서도 동일하게 적용된다. 에피폴은 두 카메라의 광축이 만나는 점으로, 한 카메라에서의 광축이 다른 카메라의 이미지 평면에서 나타나는 위치를 의미한다. 보정된 카메라에서는 이 에피폴이 이미지 평면에서 왜곡 없이 계산되며, 다음과 같은 방식으로 구할 수 있다.

두 번째 카메라에서의 에피폴 \mathbf{e_2}는 첫 번째 카메라의 중심 \mathbf{C_1}과 두 번째 카메라의 외부 파라미터 행렬 \mathbf{R}, \mathbf{t}을 통해 다음과 같이 계산된다:

\mathbf{e_2} = \mathbf{K}_2 \mathbf{t}

이때, 에피폴라인은 해당 에피폴을 포함하는 직선으로 정의되며, 앞서 언급된 에피폴라 제약을 통해 구할 수 있다. \mathbf{E}가 주어졌을 때, 첫 번째 카메라에서의 점 \mathbf{x_1}과 대응하는 두 번째 카메라의 에피폴라인 \mathbf{l_2}는 다음과 같은 관계로 표현된다:

\mathbf{l_2} = \mathbf{E} \mathbf{x_1}

이 식은 보정된 카메라 시스템에서도 동일하게 적용되며, 두 이미지 평면에서 대응되는 점들이 항상 에피폴라인 상에 존재한다는 것을 의미한다.