SLAM의 수학적 공식화

Seohyun·2024년 3월 20일
0

정리

목록 보기
8/9

이 글은 Introduction to Visual SLAM: From Theory to Practice의 내용을 토대로 작성하였습니다.

https://link.springer.com/book/10.1007/978-981-16-4939-4


모션 모델 xk=f(xk1,uk,wk)x_k = f(x_{k-1}, u_k, w_k)

  • xkx_k : 현재 위치
    • xk=[x1,x2,θ]kTx_k = [x_1, x_2, \theta]^T _k
  • xk1x_{k-1} : 이전 위치
  • uku_k : 위치와 회전 각도의 변화
    • uk=[x1,x2,θ]kTu_k = [\triangle x_1, \triangle x_2, \triangle \theta ]^T_k
  • wkw_k : 노이즈 (스토캐스틱)

[x1x2θ]k=[x1x2θ]k1+[x1x2θ]k+wk\begin{bmatrix}x_1 \\ x_2 \\ \theta \end{bmatrix}_k = \begin{bmatrix}x_1 \\ x_2 \\ \theta \end{bmatrix} _{k-1} + \begin{bmatrix}\triangle x_1 \\ \triangle x_2 \\ \triangle \theta \end{bmatrix} _k + w_k

관찰 모델 zk,j=h(yj,xk,vk,j)z_{k, j} = h(y_j, x_k, v_{k, j})

  • yjy_j : 랜드마크 위치
    • yj=[y1,y2]jTy_j = [y_1, y_2]^T _j
  • xkx_k : 위치
    • xk=[x1,x2]kTx_k = [x_1, x_2]^T_k
  • zk,jz_{k, j} : 센서 판독값, 관찰한 데이터
    • zk,j=[rk,j,ϕk,j]Tz_{k, j} = [r_{k, j}, \phi_{k, j}]^T

[rk,jϕk,j]=[(y1,jx1,k)2+(y2,jx2,k)2arctan(y2,jx2,ky1,jx1,k)]+v\begin{bmatrix}r_{k, j} \\ \phi_{k, j}\end{bmatrix} = \begin{bmatrix}\sqrt{(y_{1,j}-x_{1,k})^2 + (y_{2,j}-x_{2,k})^2} \\arctan(\frac{y_{2,j} - x_{2,k}}{y_{1,j}-x_{1,k}}) \end{bmatrix} + v


일반 추상 형식을 취했을 때 SLAM 프로세스를 기본 방정식으로 요약하면,

{xk=f(xk1,uk,wk),k=1,...,kzk,j=h(yj,xk,vk,j),(k,j)O\begin{cases}x_k = f(x_{k-1}, u_k, w_k), & k=1, ..., k\\z_{k,j} = h(y_j, x_k, v_{k,j}), & (k,j) \in O \end{cases}


상태 추정 문제로서의 SLAM

  • 모션 모델 방정식

  • 관찰 모델 방정식

  • 모델 방정식

    • 선형
    • 비선형
  • 노이즈

    • 가우시안
    • 비가우시안

선형 가우시안: 칼만 필터(KF)로 편향 없는 최적 추정값 얻음
비선형 비가우시안: 확장칼만필터(EKF)와 비선형 최적화 방법 사용

  • 21세기 초까지 EKF가 지배적
  • EKF의 단점(선형화 오류 및 노이즈 가우스 분포 가정) \rarr 입자필터와 같은 다른 필터, 비선형 최적화 방법 사용
  • 오늘날엔 graph optimization이 대표적 상태 추정 기술이며 필터보다 우수하다 판단됨
profile
Hail hamster

0개의 댓글