ORB-SLAM is mainly divided into three threads: Tracking, LocalMapping and LoopClosing
The three threads are stored in the corresponding three files, namely the Tracking.cpp, LocalMapping.cpp and LoopClosing.cpp files.
(1)tracking(Tracking)
The main work of this part is to extract ORB features from the image, perform pose estimation based on the previous frame, or initialize the pose through global relocation, then track the reconstructed local map, optimize the pose, and then determine new key points according to some rules. frame.
(2)Mapping(LocalMapping)
This part mainly completes the construction of local maps. It includes inserting keyframes, verifying and filtering recently generated map points, then generating new map points, using local bundle adjustment (Local BA), and finally filtering the inserted keyframes to remove redundant keyframes.
(3)Loop Closing Detection(LoopClosing)
This part is mainly divided into two processes, namely closed-loop detection and closed-loop correction. The closed-loop detection first uses WOB for detection, and then calculates the similarity transformation through the Sim3 algorithm. Closed-loop correction is mainly closed-loop fusion and graph optimization of Essential Graph.
The above is the detailed content of ORB-SLAM2 Beginner's Notes. For more information, please follow other related articles on the PHP Chinese website!