在图像中提取特征点并计算特征描述,非常耗时
通过计算描述子距离在不同图像中寻找特征匹配,也非常耗时
利用通过匹配点信息计算相机位姿,没什么问题
我们可以采用以下方法进行改进:
- 光流:通过其他方式寻找匹配点
- 直接法:1.提取点可以是随机点;2不去进行匹配,直接进行位姿估计。
光流
光流法是一种描述像素随时间在图像之间运动的方法,本质上是估计像素在不同时刻图像中的运动(希望解出像素到了下一时刻的哪个位置)
根据像素个数分类:
- 稀疏光流:LK光流为代表
- 稠密光流:HS光流为代表
在视觉SLAM中,可以用光流去追一些特征点、角点(一张图像上的部分像素),所以一般用的都是稀疏光流
LK 光流
Ix,Iy为图像梯度,我们假设灰度不变,所以Ix,Iy是不变的,同时It也是不变的,uv 分别是xy方向的速度,为未知量。
我们有两个未知量,但是一个方程肯定解不出来。
因此我们不仅假设像素灰度值不变,而且要假设一个窗口内的像素具有相同的运动。
多层 光流
我们把光流写成了非线性优化问题,就必须假设优化的初始值靠近最优值,才能在一定程度上保障算法的收敛。如果相机运动较快,两张图像差异较明显。那么单层图像光流法容易达到一个局部极小值。这种情况可以通过引入图像金字塔来改善。
图像金字塔是指对同一个图像进行缩放,得到不同分辨率下图像。
直接法
光流仅估计了像素间的平移,但是没有用到相机本身的结构(投影模型)以及考虑相机的旋转和图像的缩放。
直接法考虑了这些问题
直接法的推导
已知: