Fork me on GitHub

orbslam2

ORBSLAM2 (Stereo Camera)

  • Points can be reliably triangled if their depth is less than ~40 times the stereo baseline.
  • modern stereo SLAM: keyframe-based & Local BA
  • stereo LSD SLAM
    direct method: performance could be severely degraded by unmodeled effects like rolling shutter or non-lambertian reflectance.

Structure

  1. INPUT
    Frame >
  2. TRACKING
    pre-process > pose prediction(motion model) OR relocalization > track local map > new keyframe decision >
  3. LOCAL MAPPING
    keyframe insertion > recent mappoints culling > new points creation > local BA > local keyframe culling >
  4. LOOP CLOSING
    querying DB > compute SE3 > loop fusion > opt essential graph >
  5. FULL BA
    full BA > update map

Tracking.preprocess: ORBExtractor (left & right rectified images) > stereo matching > stereo & mono keypoints

ORB-SLAM2

  1. tracking: localize the camera with every frame by finding feature matches to the local map and minimizing the reprojection error applying motion-only BA
  2. local mapping: local BA
  3. loop closing: detect large loops & correct drifts

Notice: place recognition module based on DBoW2 for relocalization, reinitialization and loop detection.

use the same ORB features for tracking, mapping and place recognition tasks.

system handles mono & stereo keypoints (close OR far)

A. stereo point

  • close: associated depth < 40 times the stereo/RGBD baseline

  • far: > 40 times (accurate rotation, but weak scale & translation), triangulate when supported by multiple views

    monocular point

    • on the left image and stereo match could not be found OR invalid depth value

B. bootstrapping:

  • keyframe with the first frame, its pose to the origin, and create initial map with all stereo keypoints

C. BA with mono & stereo constraints

  • motion-only BA R,t, minimizing reprojection error
  • Local BA covisible frame and others (remain fixed in optimization)
  • full BA all key frames & points in the map

D. loop closing and full BA

  • detected and validated
  • corrected

stereo/depth info makes scale observable and geometric validation and the pose-graph opt based on rigid body transformation instead of similarity

IF a new loop is detected while opt, opt aborted and close the loop, which will launch a full BA again.
FROM updated to non-updated: spanning tree

E. keyframe insertion

  • inserted if num of the tracked close points drops below T1 and up T2

F. localization mode

  • lightweight in well mapped areas

loop closing deactivated, camera is continuously localized by tracking. VO matches ORB & 3D points

-------------The end Thanks-------------
You donation will be huge motivation for me.