光流计算方法及编程

    选自维基百科http://zh.wikipedia.org/wiki/%E5%85%89%E6%B5%81%E6%B3%95

    光流(Optical flow or optic flow)是关于视域中的物体运动检测中的概念。用来描述相对于观察者的运动所造成的观测目标、表面或边缘的运动。光流法在模式识别、计算机视觉以及其他图像处理中非常有用,可用于运动检测、物件切割、碰撞时间与物体膨胀的计算、运动补偿编码,或者通过物体表面与边缘进行立体的测量等等。

[编辑]光流的测算

一系列的图像可以检测出运动的瞬时速度或离散图像位移。每一个时刻均有一个二维或多维的向量集合,如(x,y,t),表示指定坐标在t点的瞬时速度。设I(x,y,t)为t时刻(x,y)点的强度,在很短的时间Δt内,xy分别增加Δx, Δy ,可得:、

同时,考虑到两帧相邻图像的位移足够短,因此:

因此

最终可得出结论:

这里的  是 和  的速率,或称为的光流。,  和  是图像 在t时刻特定方向的偏导数。 , 和  的关系可用下式表述:

stanford作者源码以及所用的视频文件可以在下面网址找到:
http://ai.stanford.edu/~dstavens/cs223b/

你可能感兴趣的:(编程,图像处理)