《OpenCV金字塔LK光流法》
金字塔LK光流法的三个假设 亮度恒定,即图像场景中目标的像素在帧间运动时外观上保持不变; 时间连续或者运动是”小运动“,即图像的运动随时间的变化比较缓慢; 空间一致,即一个场景中同一表面上邻近的点具有相似的运动。 光流法的原理 它是空间运动物体在观察成像平面上的像素运动的瞬时速度,是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的对应关系,从而计算出相邻帧之间物体的运动信息的一种方法。 当人的眼睛观察运动物体时, 物体的景象在人眼的视网膜上形成一系列连续变化的图像, 这一系列连续变化的信息不断“流过”视网膜(即图像平面),好像一种光的“流”,故称之为光流(optical flow)。光流表达了图像的变化,由于它包含了目标运动的信息,因此可被观察者用来确定目标的运动情况。 从图片序列中近似得到不能直接得到的运动场 。运动场,其实就是物体在三维真实世界中的运动;光流场,是运动场在二维图像平面上(人的眼睛或者摄像头)的投影。 每张图像中每个像素的运动速度和运动方向 找出来就是光流场。第t帧的时候A点的位置是(x 1 , y 1 ),那么我们在第t+1帧的时候再找到A点,假如它的位置是(x 2 ,y 2 ),那么我们就可以确定A点的运动了:(u x , v y ) = (x 2 , y 2 ) - (x 1 ,y 1 )。 流程图