SLAM14讲阅读笔记(八)

2D光流

光流是一种描述像素随时间在图像之间运动的方法,计算部分像素运动称为稀疏光流,以Lucas-Kanade光流为代表,计算所有像素的称为稠密光流,以Horn-Schunck光流为代表。
使用光流法有一个前提:灰度不变假设,即同一个空间点的像素灰度值,在各个图像中是固定不变的。
SLAM14讲阅读笔记(八)
对左式进行泰勒展开
SLAM14讲阅读笔记(八)
根据灰度不变假设,则有
SLAM14讲阅读笔记(八)
除以dt,并写成矩阵形式
SLAM14讲阅读笔记(八)
上式中有两个变量,因此假设一个窗口内的像素具有相同的运动,可以得到多个方程,进行求解。

多层光流

当相机运动较快,两张图像的差异较为明显,那么单层图像光流法容易达到一个局部极小值。
引入图像金字塔对同一个图像进行缩放,得到不同分辨率下的图像。在计算光流时,先从顶层图像开始,然后把上一层的追踪结果作为下一层光流的初始值。

直接法

在光流法中追踪的是特征点的位置,在直接法中不要求追踪的点必须为特征点。
SLAM14讲阅读笔记(八)
直接法的思路是根据当前相机的位姿估计值寻找上一帧图像中p1在当前图像中对应的p2点的位置,如果相机的位姿不够准确,p2的外观和p1会有明显差别,因此,为减小这个差别来优化相机位姿,以至于找到与p1更相似的p2。
在直接法中的误差值为亮度误差
SLAM14讲阅读笔记(八)
误差e与位姿T的关系
q = TP
u = 1/Z2*KP
q为P在第二帧中的空间坐标,u为其像素坐标。q是T的函数,u是q的函数,那么u也是T的函数。