ORB-SLAM3系列-多地图管理
作者:Liam
来源:公众号@计算机视觉工坊|系投稿
论文名称: ORBSLAM-Atlas: a robust and accurate multi-map system
文章插图
摘要利用鲁棒的地图融合方法解决不限数量的子地图融合问题 , Altas使SLAM系统变的更加的精准和鲁棒 。 在tracking线程跟踪失败的时候 , 系统会构建一个新的子地图 。 当该地图和先前的子地图有共同部分的时候就会进行地图融合 。 针对原来的方法中只舍弃特征点数量少的帧 , 我们也舍去位姿估计不准的帧来构建更加精准的子地图 。
本文的贡献
- 利用atlas来解决不限数量的子地图融合问题 。 altas有不限数量的子地图关键帧的词袋数据库 , 保证了地图场景重识别的效率 。
- 多地图的操作算法:新地图生成、在混合地图中重定位和地图融合
- 在有差的相机位姿的时候评价跟踪失败的方法 。 这可以避免在闭环的过程中由于高度不确定的位姿导致的位姿图优化误差过大 。
文章插图
Screenshot from 2020-09-26 08-31-13.png
altas由无数的子地图组成 , 每个子地图有自己的关键帧、地图点、共视图和最小生成树 。 每个地图的参考帧是第一帧上 。 新来帧只更新altas中的一个地图(active map) 。 altas中也保存了特别的地图的词袋数据库来识别关键帧 。 本系统有一个单独的场景重识别的模块 , 如果两个关键帧都来自active map就会执行闭环检测 , 如果在不同的地图中就会执行地图融合 。
新地图产生的标准当相机跟踪失败就开始进行重定位 , 如果重定位过了一段时间也不成功 , active map变成了unactive map存储在了altas中 。 然后一个新地图被初始化 , 具体的过程参考ORB-SLAM2和ORB-SLAM中的地图初始化过程 。 评判tracking是否失败的标准:
- 匹配的特征点的数量:当前帧和局部地图的匹配数量 。
- 相机位姿的observability:如果检测到的点几何条件不好 , 那么估计的相机位姿也不准(计算出来匹配点的距离大 , 特征属于不可用的特征) 。
文章插图
其中Exp(ε_i)把一个六维的向量直接转换为了李代数 , 其协方差矩阵C编码为相机位姿估计的准确性 , 而J矩阵为相机位姿对观测的地图点的雅各比矩阵 。 由于平移的幅度很小 , 所以在评判中仅用C的对角线上表示误差的值 。
文章插图
多地图中的重定位如果相机跟丢了 , 利用当前帧查询Atlas DBoW的数据库 。 这个查询能在所有地图中找相似的关键帧 。 一旦有了候选关键帧 , 地图和匹配的地图点 , 就可以按照ORB-SLAM中进行重新定位 。 主要包括利用PnP进行鲁棒的位姿估计和RANSAC阶段 , 然后进行匹配搜索、进行只优化位姿的非线性优化 。
相似地图融合执行ORBSLAM中的场景重识别来检测相似的地图进行融合 , 场景重识别的过程中需要检测和共视图中关键帧相连的三个关键帧来避免假阳性的检测 。 另外在地图融合的过程中 , active map和具有共同区域的其他地图合并 , 然后用合并完的地图作为active map 。
- 1)在两个地图中检测共同的部分 。 场景重识别模块提供了两个匹配的关键帧 , K_a和K_s和两个地图M_a和M_s中匹配的地图点 。
- 2)估计地图融合的变换矩阵 。 这里需要双目的SE(3)或者单目的Sim(3)变换(单目没有尺度信息 , 所以需要估计Sim3变换) , 这样就可以在世界参考帧中对齐两个地图 。 基于M_a和M_s两个地图的匹配关系 , 利用混合Horn method(Closed-form solution of absolute orientation using unit quaternions)的RANSAC来进行初始的估计 , 利用估计出来的位姿K_s来指导匹配 , 利用非线性优化两个地图的重投影误差得到两个地图间的匹配得到最终两个地图之间的位姿T_Wa, Ws 。
- 看不上|为什么还有用户看不上华为Mate40系列来看看内行人怎么说
- GB|备货充足要多少有多少,5000mAh+128GB,红米新机首销快速现货
- 采用|消息称一加9系列将推出三款新机,新增一加9E
- 占营收|华为值多少钱
- 查询|数据太多容易搞混?掌握这几个Excel小技巧,办公思路更清晰
- 商品|问道自有品牌,山姆多方博弈
- 垫底|5G用户突破2亿:联通垫底,电信月增700万,中国移动有多少?
- 色卡|双人场景/多机位色彩匹配,色卡很重要
- 砍单|iPhone12之后,拼多多又将iPhone12Pro拉下水
- 打响|拼多多打响双12首枪,iPhone12降到“mini价”,苹果11再见