SVO: Semi-Direct Visual Odometry for Monocular and Multi-Camera Systems 2016TRO
MOTION ESTIMATION
1 Sparse Image Alignment
从上一帧的特征投影到当前帧,最小化重投影误差计算帧间位姿(patch44)
2 Relaxation Through Feature Alignment
将地图点投影到当前帧中,通过优化在当前帧中的像素位置,对于每个点找观察角度最小的关键帧最小化仿射变换下的光度误差(patch88)。这一步违反了对极约束,但会在patches之间获得更好的相关性。
3 Pose and Structure Refinement
最小化重投影误差优化landmark和pose(这里和早期的论文不一样,最开始svo这里是三步,先优化pose,再优化landmark,最后同一优化pose和landmark)。实验表明和优化整个轨迹相比,只优化相机当前帧的位姿和点就足够了。
Mapping
可以参考
https://www.cnblogs.com/luyb/p/5773691.html
https://zhuanlan.zhihu.com/p/505521734
对于关键帧的特征点,在参考帧的对极线上搜索最相关的ptach(使用zero mean sum of squared differences计算相关性),使用三角化的深度更新深度滤波器。当深度滤波器的深度的不确定性小于一定阈值时,则使用深度滤波器的深度初始化3D点,用于motion estimation。
这里使用beta分布乘以高斯分布近似表示深度。(具体的公式推导可以看Video-based, Real-Time Multi View Stereo这篇文章)