ORB-SLAM是一种基于ORB特征的三维定位与地图构建算法(SLAM)[1].该算法由Raul Mur-Artal,J. M. M. Montiel和Juan D. Tardos于2015年发表在IEEE Transactions on Robotics.ORB-SLAM基于PTAM架构,增加了地图初始化和闭环检测的功能,优化了关键帧选取和地图构建的方法,在处理速度.追踪效果和地图精度上都取得了不错的效果.要注意ORB-SLAM构建的地图是稀疏的. ORB-SLAM一开始基于monocular
主要参考这篇论文 Horn B K P. Closed-form solution of absolute orientation using unit quaternions[J]. JOSA A, 1987, 4(4): 629-642. 在单目闭环检测时,会将当前关键帧地图点和闭环关键帧地图点进行Bow匹配,匹配上的两组3D点集之间可以用RANSAS求解Sim3变换,从而获得当前关键帧相对于闭环关键帧的Sim3,然后传播到相连关键者,并调整地图点,从而完成闭环调整. 主要问题就是如何如何计
LocalMapping作用是将Tracking中送来的关键帧放在mlNewKeyFrame列表中:处理新关键帧,地图点检查剔除,生成新地图点,Local BA,关键帧剔除.主要工作在于维护局部地图,也就是SLAM中的Mapping. 1. 处理新关键帧:ProcessNewKeyFrame() 做了三件事: a. 计算当前关键帧Bow,便于后面三角化恢复新地图点: b. 将TrackLocalMap中跟踪局部地图匹配上的地图点绑定到当前关键帧(在Tracking线程中只是通过匹配进行局部地图跟