orb-slam2讲解 https://www.yuque.com/books/share/95bfc64d-38f6-49f9-bbce-b3e8e4a02ec2
二、匹配算法:
1.SLAM十四讲中的初始位姿求解算法总结
- 特征点法位姿求解
- 直接法位姿求解
2.ORB_SLAM3代码中的匹配算法
- 初始化2D-2D特征匹配算法及位姿估计直接法位姿求解
- a) 代码流程梳理
- b) RANSAC算法+重投影误差理论介绍
- c) 代码分析
- 跟踪过程3D-2D匹配算法及位姿估计
- 词袋模型加速匹配的原理和算法流程
- 局部建图线程的匹配算法及位姿估计
代码实现:tracking线程->单目初始化 函数。
IMU预积分 -> 单目初始化
匹配算法二
3D -> 2D
跟踪参考关键帧。
跟踪恒速模型?
tracking线程5个匹配。
localmapping线程对局部关键帧进行匹配。
关键点来自tracking线程。
tacking -> local mapping -> loopclosing 线程
回环检测
三角测量法,DLT直接现象变换。3D->2D第一小节。PNP、优化。
点P(x,y,z) 空间坐标系下的Pw
3D -> 2D 重投影。
相似三角形原理,构造比例关系进行匹配。
词袋模型? 用来加速。 回环检测方向 -> 词袋模型,ITF?
层间匹配,非帧间匹配
tracking
重定位
在跟踪丢失时进行重定位,对最近的候选关键帧进行特征匹配。
MLPNP也是orb-slam3创新点之一。
PNP算法:
SVD分解?
MLPNP需要先进行公式推导在学习代码。
重定位
跟踪参考关键帧或者跟踪恒速模型
之后用局部地图进行跟踪
跟踪局部地图点
采用重投影。