Feature based SLAM

2023. 3. 1. 17:55Devcorse/Visual SLAM(02.20~3.31)

MonoSLAM - 2003

- Incremental SLAM method

- Use Extended Kalman Filter(EKF)

- 3D landmarks as 2D keypoints with unknown depth - ray에 gaussian distribution을 적용해 dept 추정

   -> 그후 EKF사용

   -> 처음 frame은 좌표를 알고있는 object를 가지고 있어야한다

- 방 한개 정도 너비

 

PTAM

- Parallel Tracking and Mapping

   - split tracking and mapping process into 2threads

   - Fast tracking + slow mapping

- Manual initialization via 5-point algorithm

   - 첫 2view를 직접 고르고 epipolar matrix를 구해 fundamental matrix를 구한다.

- user FAST corenr

- Map optimization with keyframe-based bundle adjustment

- keyframe: frame간 이미지가 바꼇다로 구분되는 frame - feature가 70이상이면 동일 frame 이런식

   - 너무 가까운 view는 오히려 악효과를 가져올때도 있어 어느정도 있다. keyframe 사용

   - 기존 keyframe이라면 tracking 하여 map을 그린다.

   - 새 keyframe이라면 mapping한다.

 

Visual-SALM, Why filter?

strasdat 2012

- proof of probabilistic graphical inference being more efficient than filtering methods

  - graph(BA)방식이 filter(EKF)보다 좋다.

 

ORB-SLAM - 2015

- monocular camera

- complete VSLAM pipelline

  - Tracking, local mapping, loop closure threads

  - no user inputs required

    - Automatic map initialization

    - Relocalization + global optimization

- Efficient ORB features

- Co-visibility graph / Essential graph

  - Enables efficient and accurate pose tracking + map updates

  - Easy keyframe insertion + Strict culling policy

- Relocalization via Bag-of-visual-words

 

- tracking, local mapping, loop closing 3개의 thread를 할당하며 map을 공통으로 사용한다.

- tracking: frame -> extract ORB(map init) -> initial pose estimation from last frame or relocalisation -> track local map new keyframe decision -> keyframe

- local mapping -> keyframe -> keyframe insertion -> recent mappoints culling -> new points creation -> local BA -> local keyframes culling

- loop closing: loop detection(candidates detection -> compute slim3) -> loop correction(loop fusion -> optimize essential)

graph

 

- local BA: 최신 N개의 keyframe만 사용하여 BA계산

 

ORB-SLAM2

- monocular, stereo, rgb-d camera도지원

 

ProSLAM

- single-thread VSLAM

- codular software architecture

- easy-to understand

'Devcorse > Visual SLAM(02.20~3.31)' 카테고리의 다른 글

PTAM paper  (0) 2023.03.02
모던 VSLAM 시스템의 구조  (0) 2023.03.01
Bundle Adjustment  (0) 2023.02.28
Least squares  (0) 2023.02.28
Perspective n points  (0) 2023.02.27