Map类是ORB_SLAM2算法的地图管理模块。它负责存储和管理地图中的关键帧(KeyFrame)和地图点(MapPoint),并提供了添加、删除和查询地图中的关键帧和地图点的方法。
以下是Map类的主要方法及其C++用法:
- AddKeyFrame(KeyFrame* pKF):向地图中添加关键帧。
- AddMapPoint(MapPoint* pMP):向地图中添加地图点。
- EraseMapPoint(MapPoint* pMP):从地图中删除地图点。
- EraseKeyFrame(KeyFrame* pKF):从地图中删除关键帧。
- SetReferenceMapPoints(const std::vector<MapPoint*> &vpMPs):设置参考地图点,这些点用于可视化和其他目的。
- InformNewBigChange():通知地图发生了一个大的变化(例如,闭环检测或全局BA优化)。
- GetLastBigChangeIdx():获取最近一次大变化的索引。
- GetAllKeyFrames():获取地图中所有的关键帧。
- GetAllMapPoints():获取地图中所有的地图点。
- GetReferenceMapPoints():获取参考地图点。
- MapPointsInMap():获取地图中地图点的数量。
- KeyFramesInMap():获取地图中关键帧的数量。
- GetMaxKFid():获取地图中具有最大ID的关键帧。
- clear():清除地图中的所有数据。
Map类还包含一些成员变量,例如ÿ