ORB_SLAM2原理及代码解析:InsertKeyFrame() 函数
1 作用
2 参数及含义
2 位置及代码解析
2.1 LocalMapping::InsertKeyFrame()
(1)声明:LocalMapping.h
// Main functionvoid Run();void InsertKeyFrame(KeyFrame* pKF);
(2)定义:LocalMapping.cc
void LocalMapping::InsertKeyFrame(KeyFrame *pKF) {unique_lock<mutex> lock(mMutexNewKFs);mlNewKeyFrames.push_back(pKF);mbAbortBA=true; //新关键帧进入队列后终止局部优化 }
2.2 LoopClosing::InsertKeyFrame()
(1)声明
void InsertKeyFrame(KeyFrame *pKF);
(2)定义:
void LoopClosing::InsertKeyFrame(KeyFrame *pKF) {unique_lock<mutex> lock(mMutexLoopQueue);if(pKF->mnId!=0)mlpLoopKeyFrameQueue.push_back(pKF); }