NDEVR
API Documentation
LoopClosing

Detects and corrects loop closures and map merges. More...

Collaboration diagram for LoopClosing:
[legend]

Public Types

typedef std::pair< Set< KeyFrame * >, int > ConsistentGroup
 A group of keyframes with a consistency count.
typedef std::map< KeyFrame *, Sim3, std::less< KeyFrame * >, Eigen::aligned_allocator< std::pair< KeyFrame *const, Sim3 > > > KeyFrameAndPose
 Map from keyframe to Sim3 pose.

Public Member Functions

 LoopClosing (Atlas *pAtlas, KeyFrameDatabase *pDB, ORBVocabulary *pVoc, const bool bFixScale, const bool bActiveLC, LogPtr log)
 Constructs the loop closer.

Detailed Description

Detects and corrects loop closures and map merges.

Runs in its own thread, checking each new keyframe for loop closure or map merge candidates. When detected, it performs pose-graph optimization and optional global bundle adjustment.

Definition at line 28 of file LoopClosing.h.

Constructor & Destructor Documentation

◆ LoopClosing()

LoopClosing::LoopClosing ( Atlas * pAtlas,
KeyFrameDatabase * pDB,
ORBVocabulary * pVoc,
const bool bFixScale,
const bool bActiveLC,
LogPtr log )

Constructs the loop closer.

Parameters
[in]pAtlasPointer to the Atlas.
[in]pDBKeyframe database for place recognition.
[in]pVocORB vocabulary.
[in]bFixScaleTrue for stereo/RGB-D (fixed scale).
[in]bActiveLCTrue to enable active loop closing.
[in]logLogger for diagnostic output.

The documentation for this class was generated from the following file: