2D-2D 대응점

두 이미지 사이의 특징 매칭이 주어지고 아직 3D 정보가 없는 상황에서, 2D-2D 기하는 카메라의 상대적 움직임을 추정한다. 이때 쓰이는 세 가지 주력 모델은 본질 행렬(essential matrix), 기본 행렬(fundamental matrix), **호모그래피(homography)**이며, 각각 RANSAC으로 감싸인 최소 해법 또는 선형 해법으로 추정된다.

본질 행렬을 위한 5점 알고리즘

캘리브레이션된 카메라에서는 본질 행렬 EE를 5개의 점 대응점으로부터 추정할 수 있다 (Nister, 2004). 제약 조건은 다음과 같다:

결과는 최대 10개의 실수 해이며, 추가 점들로 모호성을 해소한다. RANSAC과 결합하면, 5점 알고리즘은 실제로 본질 행렬 추정에서 선호되는 방법이다: 최소 샘플 크기가 작을수록 동일한 인라이어 비율에서 훨씬 적은 RANSAC 반복 횟수로 충분하기 때문이다.

기본 행렬을 위한 8점 알고리즘

기본 행렬 FF는 7 자유도를 가진다. 8개 이상의 대응점이 있으면, 8점 알고리즘 (Longuet-Higgins, 1981; Hartley, 1997)은 f=vec(F)\mathbf{f} = \mathrm{vec}(F)로 표현되는 선형 동차 시스템 Af=0A\mathbf{f} = 0을 SVD로 풀어낸다. Hartley는 풀기 전에 점 좌표를 정규화(평균 0, 단위 분산)하면 수치 조건이 크게 개선됨을 보였다 — 실제로 모두가 사용하는 버전은 이 “정규화된 8점 알고리즘”이다. 풀이 후에는 추정된 FF의 가장 작은 특이값을 0으로 만들어 계수-2 제약을 강제한다.

호모그래피를 위한 직접 선형 변환

장면이 평면이거나 움직임이 순수 회전인 경우, 호모그래피 HH가 대응점을 설명한다. 각 대응점 xHx\mathbf{x}' \sim H\mathbf{x}HH의 8 자유도에 대해 2개의 선형 방정식을 준다. N4N \geq 4개의 대응점이 있으면 DLT는 2N×92N \times 9 행렬을 쌓아 Ah=0A\mathbf{h} = 0을 SVD로 푼다. 여기서도 정규화가 핵심이다.

최소 해법이 중요한 이유: RANSAC 반복 횟수

특징 매칭에는 이상치가 섞여 있으므로, 위의 모든 해법은 RANSAC 안에서 실행된다: 최소 집합을 샘플링하고, 모델을 적합시키고, 인라이어 수를 세고, 이를 반복한다. 인라이어 비율 ww와 샘플 크기 ss가 주어지면, NN번의 반복에서 모두 인라이어인 샘플이 적어도 한 번 나올 확률은 1(1ws)N1 - (1 - w^s)^N이며, 성공 확률을 1η1 - \eta로 요구하면 다음을 얻는다:

N=logηlog(1ws)N = \frac{\log \eta}{\log(1 - w^s)}

w=0.5w = 0.5일 때: 8점 알고리즘(s=8s = 8)은 N1177N \approx 1177번의 반복이 필요하지만, 5점 알고리즘(s=5s = 5)은 N145N \approx 145번만 필요하다. ss에 대한 이 지수적 의존성이 최소 해법을 선호하는 근거의 전부이며, 3D 정보가 존재하게 되면 P3P(s=3s = 3)가 선호되는 이유이기도 하다.

모델에서 움직임으로

RANSAC이 인라이어에서 최적 모델을 선택한 뒤:

모델 선택하기

퇴화 구성이 중요하다: 평면 장면이나 순수 회전은 FF/EE 추정을 불안정하게 만들며, 일반적인 3D 장면은 호모그래피 가정을 깨뜨린다. ORB-SLAM은 단안 초기화 동안 두 모델을 모두 적합시키고 모델별 점수로 승자를 선택하는 것으로 유명하다.

흔한 함정

SLAM에서의 의미

2D-2D 대응점은 단안 SLAM의 진입점이다: 맵이 존재하기 전에 최초의 상대 자세(스케일까지)를 부트스트랩하며, 이후 삼각측량이 랜드마크를 만들고 파이프라인은 2D-3D(PnP) 추적으로 전환된다. 동일한 해법들은 루프 클로저 후보를 기하학적으로 검증하는 데도 쓰이며, COLMAP과 같은 구조로부터의 모션(structure-from-motion) 파이프라인의 기반이 된다.

실습

관련 문서