세 줄 요약:
SLAM에서 Pose Estimation 문제는 시스템이 선형적인지, 노이즈가 가우시안 분포를 따르는지 여부에 따라 다른 방법으로 풀이한다.
Linear System과 Gaussian Noise의 조합인 LG System은 Kalman Filter로 풀 수 있다.
Non-linear System과 Non-Gaussian Noise의 조합인 NLNG System은 Extended Kalman Filter나 Nonlinear Optimization (Graph Optimization)으로 풀 수 있다.
Introduction
지난 포스트에서 우리는 VSLAM을 비롯한 SLAM의 주요 과제가 Pose(state) Estimation 문제임을 알 수 있었습니다. 그리고 이를 위해 두 개의 방정식을 유도(?)했으며, 각각 Motion과 Observation에 대한 식이었습니다.
- Motion Equation
$$\mathbf{x_k}=f(\mathbf{x_{k-1},u_k,w_k})$$
- Observation Equation
$$\mathbf{z_{k,j}}=h(\mathbf{y_j,x_k,v_{k,j}})$$
결과적으로, 우리는 일련의 관측치를 기반으로 카메라의 pose를 추정해야 합니다. 우리가 가지고 있는 재료는 2개의 방정식(Motion/Observation)과 자연적으로 발생할 수밖에 없는 noise의 확률 분포입니다. 이들의 조합에 따라 푸는 방법이 상이한데요. 이번 포스트에서는 그 방법론에 대해 간단히 살펴보도록 하겠습니다.
Classification of State Estimation
State Estimation 문제는 2개의 방정식의 형태와 noise 확률 분포의 종류에 따라 다르게 정의됩니다. 세세하게 들어가면 끝이 없겠지만, 우선 많은 분야에서 그렇듯 시스템의 선형성 여부와 확률 분포의 가우시안 분포 여부에 따라 대분류를 하도록 하겠습니다.
- System(Motion/Observation): Linear / Non-linear
- Probability(Noise): Gaussian / Non-Gaussian
Linear | Non-Linear | |
Gaussian | The Linear Gaussian (LG System) |
- |
Non-Gaussian | - | The non-linear, non-Gaussian (NLNG System) |
The Linear Gaussian System (LG System)
Linear System과 Gaussian 확률 분포의 noise를 가진 경우는 가장 간단하고 쉬운 케이스입니다. 2개의 방정식해 선형 방정식으로 모델링해 선형 상태공간 모델로 나타낼 수 있습니다.
LG System의 상태 추정 문제는 Kalman Filter를 사용하여 해결할 수 있습니다. 칼만 필터를 간략하게 소개하면, 예측-보정의 2 stage 알고리즘입니다. 먼저 상태 예측 단계에서 현재 상태와 상태 전이 모델을 사용하여 다음 상태를 예측합니다. 그다음 보정 단계에서는 측정값과 예측값 사이의 오차를 분석하여 최종 추정치를 계산합니다.
Kalman Filter에 대한 보다 자세한 설명은 이후 다른 포스트를 통해 다루도록 하겠습니다. 오늘은 방법론만 소개하도록 하겠습니다.
The Non-linear, Non-Gaussian System (NLNG System)
NLNG System은 선형 방정식으로 모델링할 수 없으며, 관측치가 랜덤 노이즈(Non-Gaussian)에 영향을 받는 시스템을 의미합니다. 이러한 경우 당연히 LG System보다 추정이 더 어렵습니다.
상태 추정을 위해 두 가지 방법을 적용할 수 있습니다. 우선 Filter 기반의 알고리즘들을 통해 문제를 접근할 수 있습니다. 현재까지도 SLAM에서 자주 볼 수 있는 Extended Kalman Filter (EKF)는 앞서 말한 Kalman Filter를 확장한 Filter로, 비선형 시스템을 선형화한 후 예측-보정의 2 stage 알고리즘을 수행합니다. 이외에도 Unscented Kalman Filter (UKF), Particle Filter (PF) 등을 사용해 상태를 근사 및 가정에 기반해 추정할 수 있습니다.
반면에 Filter가 아닌 최적화 기법으로 접근할 수도 있습니다. 기존의 Filter 기법은 선형화로 인해 발생하는 오차와 Gaussian 분포를 가정한 noise 등의 한계점들이 존재했습니다. 이를 극복하기 위해 Nonlinear Optimization 기법이 등장했으며, 현재는 상태 추정의 표준으로서 자리매김하게 되었습니다.
Reference