1 of 43

자율주행을 위한 비주얼 슬램 스터디

리 대수 미분 및 Sophus

Presenter. 김대완

2 of 43

Review

3 of 43

BCH 수식 및 근사치

4 of 43

BCH 수식 및 근사치

then…

5 of 43

BCH 수식 및 근사치

then…

6 of 43

BCH 수식 및 근사치

then…

incorrect!

7 of 43

BCH(Baker-Campbell-Hausdorff) 수식 및 근사치

https://en.wikipedia.org/wiki/Baker%E2%80%93Campbell%E2%80%93Hausdorff_formula

correct!

8 of 43

BCH(Baker-Campbell-Hausdorff) 수식 및 근사치

Ignore!

9 of 43

BCH(Baker-Campbell-Hausdorff) 수식 및 근사치

  • Approximate BCH formulas

10 of 43

BCH(Baker-Campbell-Hausdorff) 수식 및 근사치

Lie algebra에서 덧셈 연산을 한다면?

proof

11 of 43

SO(3)에서 리 대수 유도

n개의 measurement 에서 error를 최소로 하는 T를 찾으려면??

12 of 43

SO(3)에서 리 대수 유도

Measurement

Error function

Cost function

n개의 measurement 에서 error를 최소로 하는 T를 찾으려면??

13 of 43

SO(3)에서 리 대수 유도

  • Cost function을 Optimization 하려면? -> derivative!
    • Gradient descent, Gauss Newton, LM etc…

14 of 43

SO(3)에서 리 대수 유도

  • Cost function을 Optimization 하려면? -> derivative!
    • Gradient descent, Gauss Newton, LM etc…

Lie group에서 별도의 constraint 필요!

15 of 43

SO(3)에서 리 대수 유도

  • Cost function을 Optimization 하려면? -> derivative!
    • Gradient descent, Gauss Newton, LM etc…

Lie group에서 별도의 constraint 필요

Lie algebra 관점에서 해결해보자!

16 of 43

리 대수 미분 모델

p라는 점을 R로 회전시킨 후 회전에 의한 점 좌표의 미분

덧셈 연산이 없으므로 불가능한 식!

17 of 43

리 대수 미분 모델

p라는 점을 R로 회전시킨 후 회전에 의한 점 좌표의 미분

Lie algebra로 표현

18 of 43

리 대수 미분 모델

BCH 근사치

19 of 43

리 대수 미분 모델

값이 작으므로 Taylor series의 고차항을 제거함

20 of 43

리 대수 미분 모델

21 of 43

리 대수 미분 모델

복잡한 형태의 J 존재,

섭동 모델을 이용하여 계산한다면?

22 of 43

섭동 모델

  • 해석적으로 풀 수 없는 문제의 해를 매우 작다고 여길 수 있는 매개변수들의 테일러 급수로 나타냄
  • R에서 섭동 ΔR을 수행

23 of 43

섭동 모델

  • 해석적으로 풀 수 없는 문제의 해를 매우 작다고 여길 수 있는 매개변수들의 테일러 급수로 나타냄
  • R에서 섭동 ΔR을 수행

값이 작으므로 Taylor series의 고차항을 제거함

24 of 43

섭동 모델

  • 해석적으로 풀 수 없는 문제의 해를 매우 작다고 여길 수 있는 매개변수들의 테일러 급수로 나타냄
  • R에서 섭동 ΔR을 수행

실용적이게 포즈 추정이 가능

25 of 43

SE(3)에서 섭동 모델

26 of 43

SE(3)에서 섭동 모델

왜 리 대수 섭동모델 처럼 안될까?

27 of 43

SE(3)에서 섭동 모델

왜 리 대수 섭동모델 처럼 안될까?

SE(3)은 skew-symmetric matrix가 아니기 때문!

28 of 43

SE(3)에서 섭동 모델

a X b = -b X a = a^b

29 of 43

Sophus 실습

  • c++ implementation of Lie groups commonly used for 2d and 3d geometric problems

30 of 43

Sophus 실습 - useSophus

31 of 43

Sophus 실습 - GaussNewton

32 of 43

Sophus 실습 - GaussNewton

Measurement

Error function

Cost function

33 of 43

Sophus 실습 - GaussNewton

34 of 43

Sophus 실습 - GaussNewton

35 of 43

Sophus 실습 - GaussNewton

36 of 43

Sophus 실습 - TrajectoryError

Modify

37 of 43

Sophus 실습 - TrajectoryError

38 of 43

Sophus 실습 - TrajectoryError

39 of 43

유사 변환 군과 그의 리 대수

  • mono의 경우 일반적으로 스케일 팩터를 명시적으로 처리한다. (카메라 좌표계에서 유사 변환이 전달)
  • 리 대수 sim(3)는 7차원 벡터로 마지막에 스케일을 의미하는 변수가 하나 더 있다. x,y,z, roll, pitch, yaw, scale

40 of 43

유사 변환 군과 그의 리 대수

Exponential mapping

41 of 43

유사 변환 군과 그의 리 대수 미분

  • 섭동을 부여하고 섭동에 대한 미분을 구한다.
  • 4 x 7 jacobian 행렬을 갖는 7차원 벡터이다.

SE(3)

Sim(3)

42 of 43

유사 변환 군과 그의 리 대수 미분

  • 섭동을 부여하고 섭동에 대한 미분을 구한다.
  • 4 x 7 jacobian 행렬을 갖는 7차원 벡터이다.

SE(3)

Sim(3)

scale

43 of 43

Summary

  • 리군 SO(3), SE(3) 및 이에 대응하는 리 대수에 대한 이해
  • Exponential mapping 및 Logarithm Mapping에 대한 이해
  • 리 대수를 사용하는 이유와 미분가능성
  • 섭동모델을 통한 간소화
  • Sophus 기본 사용법
  • Sim(3)에 대한 간단한 이해