(转)光流法简单介绍

转载 2015年11月21日 19:17:27

本文转自:http://blog.csdn.net/carson2005/article/details/7581642

光流的概念是Gibson1950年首先提出来的。它是空间运动物体在观察成像平面上的像素运动的瞬时速度,是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的对应关系,从而计算出相邻帧之间物体的运动信息的一种方法。一般而言,光流是由于场景中前景目标本身的移动、相机的运动,或者两者的共同运动所产生的。其计算方法可以分为三类:

(1)基于区域或者基于特征的匹配方法;

(2)基于频域的方法;

(3)基于梯度的方法;

简单来说,光流是空间运动物体在观测成像平面上的像素运动的“瞬时速度”。光流的研究是利用图像序列中的像素强度数据的时域变化和相关性来确定各自像素位置的“运动”。研究光流场的目的就是为了从图片序列中近似得到不能直接得到的运动场。

光流法的前提假设:

(1)相邻帧之间的亮度恒定;

(2)相邻视频帧的取帧时间连续,或者,相邻帧之间物体的运动比较“微小”;

3)保持空间一致性;即,同一子图像的像素点具有相同的运动

这里有两个概念需要解释:

运动场,其实就是物体在三维真实世界中的运动;

光流场,是运动场在二维图像平面上的投影。




如上图所示,H中的像素点(x,y)I中的移动到了(x+u,y+v)的位置,偏移量为(u,v)

光流法用于目标检测的原理:给图像中的每个像素点赋予一个速度矢量,这样就形成了一个运动矢量场。在某一特定时刻,图像上的点与三维物体上的点一一对应,这种对应关系可以通过投影来计算得到。根据各个像素点的速度矢量特征,可以对图像进行动态分析。如果图像中没有运动目标,则光流矢量在整个图像区域是连续变化的。当图像中有运动物体时,目标和背景存在着相对运动。运动物体所形成的速度矢量必然和背景的速度矢量有所不同,如此便可以计算出运动物体的位置。需要提醒的是,利用光流法进行运动物体检测时,计算量较大,无法保证实时性和实用性。

光流法用于目标跟踪的原理:

(1)对一个连续的视频帧序列进行处理;

(2)针对每一个视频序列,利用一定的目标检测方法,检测可能出现的前景目标;

(3)如果某一帧出现了前景目标,找到其具有代表性的关键特征点(可以随机产生,也可以利用角点来做特征点);

(4)对之后的任意两个相邻视频帧而言,寻找上一帧中出现的关键特征点在当前帧中的最佳位置,从而得到前景目标在当前帧中的位置坐标;

(5)如此迭代进行,便可实现目标的跟踪;

光流Optical Flow介绍与OpenCV实现

原文地址:http://blog.csdn.net/zouxy09/article/details/8683859  光流(optic flow)是什么呢?名字很专业,感觉很陌生,但...
  • zy122121cs
  • zy122121cs
  • 2015年04月09日 09:34
  • 844

目标跟踪之Lukas-Kanade光流法

光流是图像亮度的运动信息描述。光流法计算最初是由Horn和Schunck于1981年提出的,创造性地将二维速度场与灰度相联系,引入光流约束方程,得到光流计算的基本算法.光流计算基于物体移动的光学特性提...
  • u014568921
  • u014568921
  • 2015年06月25日 16:58
  • 23985

跟踪算法(一)光流法跟踪

COPY FROM:http://blog.csdn.net/crzy_sparrow/article/details/7407604 BTW:原文作者是我学习的榜样! 本文目录: ...
  • tracyliang223
  • tracyliang223
  • 2014年12月05日 19:00
  • 2692

OpenCV之光流法跟踪运动目标

OpenCV之光流法运动目标跟踪目录 OpenCV之光流法运动目标跟踪 目录 光流计算方法 大致可分为三类基于匹配的方法频域的方法和梯度的方法 基于匹配的光流计算方法包括基于特征和基于区域两种2 基于...
  • u010684134
  • u010684134
  • 2015年10月16日 22:41
  • 6277

光流法学习笔记2015.12.04

背景 Gibson 1950年 主要概念 像素运动瞬时速度 像素强度数据的时域变化和相关性 前提假设 1.相邻帧亮度恒定 2.相邻帧运动微小 3.子图像的像素点具有相同运动 基...
  • Feuer_Frei
  • Feuer_Frei
  • 2015年12月02日 17:07
  • 483

目标检测光流法(四):matlab下光流法工具箱

该节主要介绍下matlab下的光流法以及一个研究物体检测方面的一个较好的工具箱 :Piotr’s Computer Vision Matlab Toolbox http://vision.ucsd....
  • on2way
  • on2way
  • 2015年10月08日 20:43
  • 13390

CPU与GPU版金字塔光流法在速度上的比较

一、前言 经过实际测试,GPU版本的金字塔LK光流法在速度上比CPU版本快了5倍多。。。测试视频大小为640*480 二、代码 #include #include #include us...
  • AP1005834
  • AP1005834
  • 2016年12月29日 15:04
  • 1396

Farneback光流法检测前景的一个例子

一、前言 本文使用opencv的calcOpticalFlowFarneback光流法计算图像的运动光流,并显示计算得的光流强度,视频大小为640*480,但速度很慢,计算速度为300ms左右一帧。不...
  • AP1005834
  • AP1005834
  • 2016年12月15日 16:50
  • 2045

图像金字塔L-K光流法模型的学习(转), 讲解的容易懂

[转]图像金字塔L-K光流法模型的学习 2013-9-18阅读2669 评论0 光流的概念是Gibson在1950年首先提出来的。它是空间运动物体在观察成像平面上的像素运动的瞬时速度,是利...
  • peixian2003
  • peixian2003
  • 2015年08月21日 16:39
  • 856

目标检测光流法(三):opencv下光流Farneback法

上节说到过的calcOpticalFlowPyrLK光流算法,可以看到它实际上是一种稀疏特征点的光流算法,也就是说我们先找到那些(特征)点需要进行处理,然后再处理,该节介绍下一个全局性的密集光流算法,...
  • ASKLW
  • ASKLW
  • 2016年12月20日 11:17
  • 1072
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:(转)光流法简单介绍
举报原因:
原因补充:

(最多只允许输入30个字)