# 단일 뷰와 다중 뷰의 차이점

#### 단일 뷰 기하학

단일 뷰 기하학은 하나의 카메라 이미지에서 장면의 3차원 구조에 관한 정보를 추정하는 방법론이다. 이 경우, 3차원 정보를 완전히 복원하는 것은 불가능하며, 주로 사영 기하학적 변환을 통해 2차원 이미지 평면과 3차원 세계 사이의 관계를 다룬다.

단일 뷰에서는 카메라의 **투영 변환**이 기본적으로 사용된다. 카메라의 투영 모델을 통해 3차원 점 $\mathbf{P} = (X, Y, Z)^\top$가 2차원 이미지 평면의 점 $\mathbf{p} = (u, v)^\top$로 매핑된다. 이를 나타내는 수식은 다음과 같다:

$$
\mathbf{p} = \mathbf{K} \cdot \left\[ \mathbf{R} | \mathbf{t} \right] \cdot \mathbf{P}
$$

여기서:

* $\mathbf{K}$는 카메라의 **내부 파라미터 행렬**,
* $\mathbf{R}$은 회전 행렬,
* $\mathbf{t}$는 이동 벡터다.

단일 뷰에서는 3차원 위치 정보가 하나의 뷰만으로는 손실되며, **깊이 정보**를 복원할 수 없기 때문에 카메라 좌표계에서의 절대적인 깊이 정보를 얻기 어렵다. 예를 들어, 이미지 상의 두 개의 점이 3차원 공간에서 서로 다른 깊이 값을 가질 수 있지만, 단일 뷰에서는 이러한 차이를 구별하기 힘들다.

#### 다중 뷰 기하학

반면, 다중 뷰 기하학에서는 **두 개 이상의 카메라 뷰**를 사용하여 장면의 3차원 구조를 추정할 수 있다. 다중 뷰 기하학의 기본 개념은 카메라들 간의 **상대적인 위치**와 **방향**을 이용하여 동일한 3차원 점이 여러 뷰에 투영되는 방식을 분석하는 것이다.

다중 뷰 기하학에서 가장 중요한 두 가지 행렬은 **기본 행렬**과 **본질 행렬**이다. 이 두 행렬은 서로 다른 카메라 뷰에서 같은 3차원 점이 투영된 위치 사이의 기하학적 제약을 나타낸다.

두 카메라 뷰 사이의 **본질 행렬** $\mathbf{E}$는 다음과 같이 정의된다:

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

여기서:

* $\mathbf{R}$은 두 번째 카메라 좌표계에 대한 첫 번째 카메라 좌표계의 회전 행렬,
* $\[\mathbf{t}]\_\times$는 두 카메라 사이의 변위 벡터 $\mathbf{t}$의 반대칭 행렬이다.

다중 뷰에서는 동일한 3차원 점이 서로 다른 뷰에서 투영되기 때문에, **삼각 측량**을 통해 3차원 위치를 복원할 수 있다. 삼각 측량은 각 카메라 뷰에서의 2차원 투영 정보를 사용하여 원래의 3차원 점의 위치를 추정하는 방법이다.

$$
\mathbf{P} = \arg \min\_{\mathbf{P}} \sum\_i \left| \mathbf{p}\_i - \mathbf{K}\_i \left( \mathbf{R}\_i \mathbf{P} + \mathbf{t}\_i \right) \right|^2
$$

여기서 $i$는 각 카메라 뷰를 나타내며, $\mathbf{p}\_i$는 $i$번째 카메라에서의 2차원 투영 점이다.

#### 단일 뷰에서의 제약

단일 뷰에서는 3차원 정보가 일부 손실되기 때문에, 장면에서의 물체의 **상대적 위치**나 **크기**를 추정하는 데 한계가 있다. 예를 들어, 원근 왜곡은 단일 뷰에서 피사체가 가까운지, 먼지에 따라 이미지 상의 크기를 왜곡시키므로 실제 크기를 추정하기가 어렵다. 단일 뷰에서는 이러한 원근 효과로 인해 두 물체가 같은 크기임에도 불구하고, 이미지 상에서는 서로 다른 크기로 나타날 수 있다.

다만, 단일 뷰 기하학은 특정한 **사전 지식**을 가정하거나 이미지 내에서의 **부가적인 단서**를 활용하여 제한된 범위에서 3차원 구조를 유추할 수 있다. 이러한 단서는:

* **평행선**: 평행한 선들이 이미지 상에서 만나는 점(소실점)을 통해 원근을 파악.
* **그림자**: 그림자를 통해 물체의 상대적인 높이나 위치를 유추.
* **선형 원근법**: 가까운 물체는 크게, 먼 물체는 작게 보이는 원근 효과를 고려.

하지만 이러한 단서는 명확한 수학적 계산보다는 직관적 해석에 가까우며, 완전한 3차원 복원은 어렵다.

#### 다중 뷰에서의 장점

반면, 다중 뷰 기하학에서는 두 개 이상의 뷰가 제공됨으로써 각 뷰에서 동일한 물체가 관측되는 방식에 대한 **상관 관계**를 이용하여 3차원 정보를 복원할 수 있다. 이때 각 뷰 사이의 **상대적 기하학적 관계**를 수학적으로 모델링하여, 정확한 깊이 및 3차원 위치를 추정할 수 있다.

이러한 다중 뷰의 기본 개념은 **에피폴라 기하학**으로 설명된다. 서로 다른 두 카메라에서 동일한 3차원 점이 투영될 때, 두 이미지 상에서의 투영점은 에피폴라 제약을 따른다. 이 제약을 통해 다중 뷰 기하학에서는 깊이 정보를 포함한 3차원 복원이 가능하다.

특히, 다중 뷰 기하학에서는 다음과 같은 장점을 갖는다:

1. **깊이 정보 복원**: 두 개 이상의 뷰에서 물체의 깊이 차이를 통해 정확한 3차원 위치를 계산할 수 있다.
2. **정확한 3차원 구조 추정**: 여러 각도에서 관찰된 동일 물체의 위치 정보를 결합하여 물체의 3차원 구조를 정확하게 복원.
3. **이동 추적**: 움직이는 물체의 위치 변화를 여러 뷰에서 추적하여 물체의 이동 경로를 3차원으로 계산할 수 있다.

#### 기하학적 관계

두 카메라 사이의 상대적인 위치와 방향은 **카메라 운동**으로 모델링되며, 이러한 운동은 회전과 이동으로 분리될 수 있다. 이를 수식으로 나타내면, 두 번째 카메라 좌표계에서 첫 번째 카메라 좌표계의 회전과 이동은 다음과 같이 표현된다:

$$
\mathbf{p}\_2 = \mathbf{R} \cdot \mathbf{p}\_1 + \mathbf{t}
$$

여기서:

* $\mathbf{p}\_1$은 첫 번째 카메라 좌표계에서의 점,
* $\mathbf{p}\_2$는 두 번째 카메라 좌표계에서의 점,
* $\mathbf{R}$은 회전 행렬,
* $\mathbf{t}$는 이동 벡터다.

이 기하학적 관계를 이용하여 두 카메라 뷰 사이에서 동일한 3차원 점이 투영된 위치를 비교함으로써, 해당 점의 3차원 좌표를 삼각 측량할 수 있다.

다중 뷰 기하학은 이러한 방식으로 **카메라 간의 관계**를 정의하며, 이를 통해 3차원 공간의 점들이 여러 이미지 뷰에서 투영되는 방식에 대한 수학적 모델을 제공한다.
