6.149 호모그래피 행렬과 평면 투영 변환
호모그래피(homography)는 하나의 평면에서 다른 평면으로의 사영 변환(projective transformation)을 기술하는 3 \times 3 가역 행렬이다. 로봇 비전에서 호모그래피는 평면 장면의 두 이미지 사이의 관계, 순수 회전 운동에서의 이미지 변환, 그리고 영상 정합(image registration) 등에 핵심적으로 사용된다. 본 절에서는 호모그래피 행렬의 정의, 유도, 추정 방법, 그리고 선형대수학적 성질을 다룬다.
1. 평면 투영 변환의 정의
두 이미지 사이에 평면 호모그래피가 존재할 때, 첫 번째 이미지의 동차 좌표 \tilde{\mathbf{p}}_1 = [u_1, v_1, 1]^\top과 두 번째 이미지의 동차 좌표 \tilde{\mathbf{p}}_2 = [u_2, v_2, 1]^\top 사이에는 다음의 관계가 성립한다.
\lambda \tilde{\mathbf{p}}_2 = H \tilde{\mathbf{p}}_1
여기서 H \in \mathbb{R}^{3 \times 3}는 호모그래피 행렬이고, \lambda \neq 0은 스케일 인수이다. 동차 좌표에서 스케일은 임의적이므로, 다음과 같이 동치 관계로 표현한다.
\tilde{\mathbf{p}}_2 \sim H \tilde{\mathbf{p}}_1
2. 평면에 의한 호모그래피 유도
3차원 공간에서 평면 \boldsymbol{\pi}가 카메라 1의 좌표계에서 \mathbf{n}^\top \mathbf{P} = d (d > 0)로 표현된다고 하자. 여기서 \mathbf{n}은 평면의 법선 벡터이고, d는 원점에서 평면까지의 거리이다. 이 평면 위의 점 \mathbf{P}에 대하여 다음이 성립한다.
\frac{\mathbf{n}^\top \mathbf{P}}{d} = 1
두 카메라 사이의 상대 자세를 (R, \mathbf{t})라 하면, 카메라 2에서의 좌표는 다음과 같다.
\mathbf{P}_2 = R \mathbf{P} + \mathbf{t} = R \mathbf{P} + \mathbf{t} \cdot \frac{\mathbf{n}^\top \mathbf{P}}{d} = \left(R + \frac{\mathbf{t} \mathbf{n}^\top}{d}\right) \mathbf{P}
따라서 정규화 이미지 좌표에서의 호모그래피는 다음과 같다.
H_n = R + \frac{\mathbf{t} \mathbf{n}^\top}{d}
픽셀 좌표에서의 호모그래피는 내부 파라미터 행렬을 포함하여 다음과 같다.
H = K_2 \left(R + \frac{\mathbf{t} \mathbf{n}^\top}{d}\right) K_1^{-1}
3. 호모그래피 행렬의 자유도와 성질
호모그래피 행렬 H는 3 \times 3 = 9개의 요소를 가지지만, 동차적(homogeneous)이므로 스케일 자유도를 제외하면 독립적인 자유도는 8이다.
가역성: H는 가역이며, 역변환도 호모그래피이다.
\tilde{\mathbf{p}}_1 \sim H^{-1} \tilde{\mathbf{p}}_2
합성: 두 호모그래피의 합성도 호모그래피이다. \tilde{\mathbf{p}}_2 \sim H_1 \tilde{\mathbf{p}}_1이고 \tilde{\mathbf{p}}_3 \sim H_2 \tilde{\mathbf{p}}_2이면 다음과 같다.
\tilde{\mathbf{p}}_3 \sim H_2 H_1 \tilde{\mathbf{p}}_1
직선 보존: 호모그래피는 직선을 직선으로 변환하지만, 일반적으로 길이 비, 각도, 평행성을 보존하지 않는다.
4. 호모그래피의 분류
호모그래피의 특수한 경우를 계층적으로 분류하면 다음과 같다.
| 변환 유형 | 행렬 구조 | 자유도 | 보존하는 성질 |
|---|---|---|---|
| 유클리드 변환 | \begin{bmatrix} R & \mathbf{t} \\ \mathbf{0}^\top & 1 \end{bmatrix} | 3 | 거리, 각도 |
| 닮음 변환 | \begin{bmatrix} sR & \mathbf{t} \\ \mathbf{0}^\top & 1 \end{bmatrix} | 4 | 각도, 길이 비 |
| 아핀 변환 | \begin{bmatrix} A & \mathbf{t} \\ \mathbf{0}^\top & 1 \end{bmatrix} | 6 | 평행성, 면적 비 |
| 사영 변환 | \begin{bmatrix} A & \mathbf{t} \\ \mathbf{v}^\top & v \end{bmatrix} | 8 | 직선, 교차 비 |
여기서 R \in SO(2), A \in \mathbb{R}^{2 \times 2}는 가역 행렬, \mathbf{v} \in \mathbb{R}^2는 사영 성분 벡터이다.
5. 호모그래피 추정: 직접 선형 변환
N \geq 4개의 점 대응 (\tilde{\mathbf{p}}_{1,i}, \tilde{\mathbf{p}}_{2,i})가 주어졌을 때, DLT(Direct Linear Transform) 방법으로 H를 추정한다. 각 점 대응으로부터 다음의 두 방정식이 도출된다.
\begin{bmatrix} \mathbf{0}^\top & -\tilde{\mathbf{p}}_{1,i}^\top & v_{2,i} \tilde{\mathbf{p}}_{1,i}^\top \\ \tilde{\mathbf{p}}_{1,i}^\top & \mathbf{0}^\top & -u_{2,i} \tilde{\mathbf{p}}_{1,i}^\top \end{bmatrix} \mathbf{h} = \mathbf{0}
여기서 \mathbf{h} = \text{vec}(H^\top) \in \mathbb{R}^9이다. N개의 대응을 적층하면 2N \times 9 행렬 A를 구성한다.
A \mathbf{h} = \mathbf{0}
\lVert \mathbf{h} \rVert = 1 조건 하에서 \lVert A \mathbf{h} \rVert를 최소화하는 해는 A의 SVD에서 최소 특이값에 대응하는 오른쪽 특이 벡터이다.
수치적 안정성을 위해 점 좌표의 정규화가 필수적이다. 정규화 변환 T_1, T_2를 적용한 후 호모그래피 \hat{H}를 추정하고, 원래 좌표계로 복원한다.
H = T_2^{-1} \hat{H} T_1
6. 최소 4점 대응과 기하학적 조건
호모그래피 추정에 필요한 최소 점 대응 수는 4이다(각 대응이 2개의 방정식을 제공하므로 2 \times 4 = 8 방정식으로 8개의 자유도를 결정). 단, 4개의 점 중 3개가 동일선상(collinear)에 있으면 해가 유일하지 않으므로, 4개의 점이 일반적 위치(general position)에 있어야 한다.
4개의 점 대응이 정확히 주어진 경우, 호모그래피는 다음과 같이 닫힌 형태로 구할 수 있다.
H = \begin{bmatrix} \tilde{\mathbf{p}}_{2,1} & \tilde{\mathbf{p}}_{2,2} & \tilde{\mathbf{p}}_{2,3} \end{bmatrix} \text{diag}(\alpha_1, \alpha_2, \alpha_3) \begin{bmatrix} \tilde{\mathbf{p}}_{1,1} & \tilde{\mathbf{p}}_{1,2} & \tilde{\mathbf{p}}_{1,3} \end{bmatrix}^{-1}
여기서 \alpha_i는 네 번째 점의 대응 조건으로부터 결정되는 스케일 인수이다.
7. 호모그래피의 분해
호모그래피 H = K_2(R + \mathbf{t}\mathbf{n}^\top / d)K_1^{-1}로부터 (R, \mathbf{t}, \mathbf{n}, d)를 복원하는 것이 호모그래피 분해(homography decomposition)이다. 내부 파라미터를 제거한 정규화 호모그래피를 다음과 같이 정의한다.
\bar{H} = K_2^{-1} H K_1 = R + \frac{\mathbf{t} \mathbf{n}^\top}{d}
\bar{H}의 SVD를 \bar{H} = U \text{diag}(\sigma_1, \sigma_2, \sigma_3) V^\top이라 하면, Faugeras와 Lustman의 방법 또는 Zhang과 Faugeras의 방법에 의해 (R, \mathbf{t}/d, \mathbf{n})을 복원할 수 있다. 일반적으로 4가지 해가 존재하며, 물리적 제약(점이 카메라 앞에 위치해야 함, 법선 벡터의 방향 등)으로 2가지로 줄일 수 있다. 추가 점 대응이나 다른 정보를 사용하여 유일한 해를 선택한다.
8. 순수 회전에서의 호모그래피
카메라가 순수 회전 운동(\mathbf{t} = \mathbf{0})만 수행하는 경우, 호모그래피는 장면의 구조와 무관하게 다음과 같이 단순화된다.
H = K_2 R K_1^{-1}
이 경우 호모그래피는 모든 이미지 점에 대하여 성립하며, 평면 장면이라는 가정이 필요 없다. 이 성질은 파노라마 이미지 합성(panoramic stitching)에서 널리 활용된다.
9. 무한원 호모그래피
무한원(infinity)에 위치한 점들, 즉 d \to \infty인 경우의 호모그래피를 무한원 호모그래피(infinite homography)라 한다.
H_\infty = K_2 R K_1^{-1}
이는 순수 회전 호모그래피와 동일한 형태이다. 무한원 호모그래피는 에피폴라 기하학에서 중요한 역할을 하며, 기본 행렬과 다음의 관계를 가진다.
F = [\mathbf{e}_2]_\times H_\infty
여기서 \mathbf{e}_2는 두 번째 이미지의 에피폴이다.
10. 호모그래피와 에피폴라 기하학의 관계
평면 장면에서는 호모그래피와 기본 행렬이 동시에 성립한다. 기본 행렬 F와 호모그래피 H의 관계는 다음과 같다.
F = [\mathbf{e}_2]_\times H
이를 전개하면, 에피폴라 제약 \tilde{\mathbf{p}}_2^\top F \tilde{\mathbf{p}}_1 = 0이 호모그래피 관계 \tilde{\mathbf{p}}_2 \sim H \tilde{\mathbf{p}}_1을 만족하는 점들에 대해 자동으로 성립함을 확인할 수 있다.
\tilde{\mathbf{p}}_2^\top [\mathbf{e}_2]_\times H \tilde{\mathbf{p}}_1 = (H \tilde{\mathbf{p}}_1)^\top [\mathbf{e}_2]_\times (H \tilde{\mathbf{p}}_1) = 0
마지막 등식은 반대칭 행렬의 성질 \mathbf{a}^\top [\mathbf{b}]_\times \mathbf{a} = 0에 의한 것이다.
11. 비선형 최적화를 통한 정밀화
DLT로 초기 추정된 호모그래피를 비선형 최적화를 통해 정밀화할 수 있다. 기하학적 거리(geometric distance) 최소화 기준은 다음과 같다.
\hat{H} = \arg\min_H \sum_{i=1}^{N} d(\tilde{\mathbf{p}}_{2,i}, H \tilde{\mathbf{p}}_{1,i})^2 + d(\tilde{\mathbf{p}}_{1,i}, H^{-1} \tilde{\mathbf{p}}_{2,i})^2
여기서 d(\mathbf{a}, \mathbf{b})는 동차 좌표에서의 유클리드 거리이다. 이를 대칭 전달 오차(symmetric transfer error)라 하며, 레벤버그-마쿼트 알고리즘으로 최소화한다.
참고 문헌
- Hartley, R., & Zisserman, A. (2004). Multiple View Geometry in Computer Vision (2nd ed.). Cambridge University Press.
- Malis, E., & Vargas, M. (2007). Deeper Understanding of the Homography Decomposition for Vision-Based Control. INRIA Research Report, RR-6303.
- Faugeras, O. D., & Lustman, F. (1988). Motion and Structure from Motion in a Piecewise Planar Environment. International Journal of Pattern Recognition and Artificial Intelligence, 2(3), 485-508.
- Ma, Y., Soatto, S., Kosecka, J., & Sastry, S. S. (2004). An Invitation to 3-D Vision. Springer.
v 0.1