一、什么是光流?

一、什么是光流?

“光流”从字面意思上来理解是光点的流动。在用延时摄影拍摄的车水马龙的照片(图6-1)或是在夏夜拍摄的星轨照片(图6-2)中,能看见代表汽车和星星的光点的移动轨迹,这是一系列连续变化的图像在CCD/CMOS传感器上叠加在一起形成的,这些运动的光点不断地被视觉传感器检测到,就像一种光的“流”,故称为光流(Optical Flow)。

图6-1 行驶的汽车

图6-2 星轨

根据小孔成像原理,三维空间物体的运动会转化为相机成像平面像素点的移动(图6-3)。而光流表示被拍摄物体图像的变化,所以其含有物体的运动信息,即物体运动速度的大小和方向。

光流的概念最早由James J.Gibson于20世纪 40年代提出,是指三维空间运动物体投影在成像平面上的像素点的二维速度矢量。光流法是一种计算物体运动信息的方法,是基于图像序列中同一特征点在时间域上的变化以及相邻帧之间的相关性来找到上一帧与当前帧之间存在的对应关系。通常,将二维图像平面特定坐标点上的灰度瞬时变化率定义为光流矢量。

由光流的定义可以引申出光流场,即指图像中所有像素点构成的一种二维瞬时速度场。物体在三维真实世界中的运动可以构成运动场,其在二维平面的投影就形成光流场。光流场反映了图像上每一像素点灰度的变化趋势,其包含的信息即是各像素点的瞬时运动速度(图6-4)。

图6-3 小孔成像

图6-4 光流场