本文主要是介绍光流(optical flow)和openCV中实现,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
转载请注明出处!!!http://blog.csdn.net/zhonghuan1992
光流(optical flow)和openCV中实现
光流的概念:
是Gibson在1950年首先提出来的。它是空间运动物体在观察成像平面上的像素运动的瞬时速度,是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的对应关系,从而计算出相邻帧之间物体的运动信息的一种方法。一般而言,光流是由于场景中前景目标本身的移动、相机的运动,或者两者的共同运动所产生的。
当人的眼睛观察运动物体时,物体的景象在人眼的视网膜上形成一系列连续变化的图像,这一系列连续变化的信息不断“流过”视网膜(即图像平面),好像一种光的“流”,故称之为光流(optical flow)。光流表达了图像的变化,由于它包含了目标运动的信息,因此可被观察者用来确定目标的运动情况。
看下面的图,它展示了一个小球在5个连续的帧中的运动,箭头上的数字代表不同的帧,那个红色小球的运动构成了光流。
操作:
给你一个图上的一系列点,在另外一张图上找到与前面一些列点相同的点。
或者给你图I1上的点[ux, uy]T,找到I2上的点[ux + δx, uy + δy]T,最小化ε:
上面加入Wx表示一块区域,一般跟踪一个区域的点。
在图形学应用中,在多张图上跟踪点(特征)是一
这篇关于光流(optical flow)和openCV中实现的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!