运动目标检测光流法详解

合集下载

运动目标检测光流法

运动目标检测光流法

运动目标检测光流法一、引言在计算机视觉领域中,运动目标检测是一个重要研究方向,其目的在于从视频序列中分离出运动的目标。

光流法作为其中的一种方法,通过估计像素点的运动矢量来检测运动目标。

本文将详细介绍光流法在运动目标检测中的应用。

二、光流法的基本原理光流法是一种基于像素点运动估计的方法,其基本原理是通过计算图像序列中每个像素点的运动矢量,从而得到运动目标的信息。

光流场是光流法在图像上的表现形式,它反映了图像中每个像素点的运动状态。

光流场的计算可以通过多种方法实现,如基于梯度的方法、基于匹配的方法等。

三、光流法在运动目标检测中的应用在运动目标检测中,光流法的主要应用包括以下几个方面:运动目标的分割:通过计算光流场,可以将运动目标与背景进行分割。

由于运动目标与背景的光流矢量存在差异,因此可以通过设定阈值将运动目标从背景中分离出来。

运动目标的跟踪:利用光流场可以实现对运动目标的跟踪。

通过计算连续帧之间光流矢量的变化,可以估计出运动目标的运动轨迹,从而实现目标的跟踪。

运动目标的识别:通过对光流场的分析,可以提取出运动目标的特征信息,如形状、大小、速度等。

这些特征信息可以用于运动目标的识别,如行人、车辆等。

四、光流法的优缺点分析光流法在运动目标检测中具有以下优点:可以处理复杂背景下的运动目标检测问题;可以实现对运动目标的精确分割和跟踪;可以提取出丰富的运动目标特征信息。

然而,光流法也存在一些缺点:对光照变化敏感:当光照条件发生变化时,光流场的计算结果可能会受到影响,从而导致检测精度的下降;计算复杂度高:光流场的计算涉及到大量的数学运算,因此其计算复杂度较高,难以实现实时处理;对噪声敏感:当图像中存在噪声时,光流场的计算结果可能会受到影响,从而导致检测精度的下降。

为了克服这些缺点,研究者们提出了许多改进方法,如基于深度学习的方法、基于滤波的方法等。

五、结论与展望光流法作为一种基于像素点运动估计的方法,在运动目标检测中具有广泛的应用前景。

视频检测和运动目标跟踪方法总结

视频检测和运动目标跟踪方法总结

视频检测和运动目标跟踪方法总结目前常用的视频检测方法可分为如下几类:光流法,时域差分法,背景消减法,边缘检测法,运动矢量检测法[2]。

一、光流法光流法[1]是一种以灰度梯度基本不变或亮度恒定的约束假设为基础对运动目标进行检测的有效方法。

光流是指图像中灰度模式运动的速度,它是景物中可见的三维速度矢量在成像平面上的投影,表示了景物表面点在图像中位置的瞬时变化,一般情况下,可以认为光流和运动场没有太大区别,因此就可以根据图像运动来估计相对运动。

优点:光流不仅携带了运动目标的运动信息,而且还携带了有关景物三维结构的丰富信息,它能够检测独立运动的对象,不需要预先知道场景的任何信息,并且能够适用于静止背景和运动背景两种环境。

缺点:当目标与背景图像的对比度太小,或图像存在噪音时,单纯地从图像灰度强度出发来探测目标的光流场方法将会导致很高的虚警率。

且计算复杂耗时,需要特殊的硬件支持。

二、时域差分法时域差分法分为帧差法和改进的三帧双差分法。

1.帧差法帧差法[8]是在图像序列中的相邻帧采用基于像素点的时间差分, 然后阈值化来提取出运动区域。

视频流的场景具有连续性,在环境亮度变化不大的情况下,图像中若没有物体运动,帧差值会很小;反之若有物体运动则会引起显著的差值。

优点:时域相邻帧差法算法简单,易于实现,对背景或者光线的缓慢变化不太敏感,具有较强的适应性,能够快速有效地从背景中检测出运动目标。

缺点:它不能完全提取运动目标所有相关像素点,在运动实体内部不容易产生空洞现象。

而且在运动方向上被拉伸,包含了当前帧中由于运动引起的背景显露部分,这样提取的目标信息并不准确。

2.三帧双差分法三帧双差分法与相邻帧差法基本思想类似,但检测运动目标的判决条件上有所不同。

三帧双差分较两帧差分提取的运动目标位置更为准确。

三、背景消减法背景消减法[4]是将当前帧与背景帧相减,用阈值T判断得到当前时刻图像中偏离背景模型值较大的点,若差值大于T则认为是前景点(目标);反之,认为是背景点,从而完整的分割出目标物体。

《2024年基于光流法的运动目标检测与跟踪技术》范文

《2024年基于光流法的运动目标检测与跟踪技术》范文

《基于光流法的运动目标检测与跟踪技术》篇一一、引言随着计算机视觉技术的不断发展,运动目标检测与跟踪技术在智能监控、自动驾驶、人机交互等领域得到了广泛应用。

其中,光流法作为一种重要的运动目标检测与跟踪技术,因其能够实时准确地估计运动目标的运动状态而备受关注。

本文将详细介绍基于光流法的运动目标检测与跟踪技术,包括其基本原理、实现方法、应用场景及优势等。

二、光流法基本原理光流是指图像中亮度模式在时间上的变化,反映了物体在三维空间中的运动信息。

光流法通过分析图像序列中像素点的运动信息,实现对运动目标的检测与跟踪。

其基本原理是假设在相邻的两帧图像中,同一空间位置的像素点具有相似的运动特性。

通过计算相邻两帧图像的光流场,可以估计出运动目标的运动状态。

三、光流法的实现方法1. 稀疏光流法:稀疏光流法只关注图像中的部分特征点,如角点、边缘等,通过计算这些特征点的光流来估计运动目标的运动状态。

该方法计算量较小,适用于实时性要求较高的场景。

2. 密集光流法:密集光流法计算图像中所有像素点的光流,能够更准确地估计出运动目标的运动状态。

但该方法计算量较大,对硬件性能要求较高。

3. 基于特征的光流法:该方法结合了稀疏光流法和密集光流法的优点,通过提取图像中的特征点并计算其光流,实现对运动目标的检测与跟踪。

该方法在保证准确性的同时,降低了计算复杂度。

四、应用场景基于光流法的运动目标检测与跟踪技术广泛应用于智能监控、自动驾驶、人机交互等领域。

在智能监控领域,该技术可以实现对异常行为的检测、人脸识别等功能;在自动驾驶领域,该技术可以实现对车辆和行人的检测与跟踪,提高行车安全性;在人机交互领域,该技术可以实现自然的人机交互方式,提高用户体验。

五、优势与挑战优势:基于光流法的运动目标检测与跟踪技术具有实时性好、准确性高等优点。

该方法能够准确估计出运动目标的运动状态,为后续的目标识别、行为分析等提供了有力支持。

此外,该方法对光照变化、遮挡等干扰因素具有较强的鲁棒性。

光流法和显著性相结合的动态背景下运动目标检测方法

光流法和显著性相结合的动态背景下运动目标检测方法

光流法和显著性相结合的动态背景下运动目标检测方法随着计算机视觉和深度学习技术的不断发展,运动目标检测成为了计算机视觉领域中的一个重要研究方向。

在实际生活中,通过视频监控系统进行运动目标检测是非常常见的需求,因此如何准确地检测出视频中的运动目标成为了一个具有挑战性的问题。

在动态背景下进行运动目标检测更加具有挑战性,因为背景的变化会对检测结果产生影响。

在这样的背景下,结合光流法和显著性检测技术可以提高运动目标检测的准确率和鲁棒性。

光流法是一种常用的用于检测视频中运动目标的方法,它通过分析连续帧之间的像素位移来推断出目标的运动轨迹。

光流法可以较准确地检测静止或缓慢移动的目标,但在动态背景下,由于背景的干扰,光流法容易产生误检测。

结合显著性检测技术可以有效提高运动目标检测的准确率。

显著性检测技术是一种用于分析图像或视频中显著目标的方法,通过计算像素的显著性值来确定图像中的显著目标。

在动态背景下,显著性检测可以帮助过滤掉背景中的干扰,从而使得光流法可以更好地检测出运动目标。

对视频帧进行显著性检测,得到每一帧图像中的显著性目标。

然后,对显著性目标进行目标跟踪,通过光流法计算目标的运动轨迹。

接着,利用背景差分的方法将运动目标和背景进行分离,得到运动目标的区域。

对运动目标的区域进行形态学处理和目标检测算法,得到最终的运动目标检测结果。

光流法和显著性相结合的动态背景下运动目标检测方法具有重要的实际意义和研究价值。

通过进一步的研究和实验,可以进一步提高该方法的准确率和鲁棒性,推动运动目标检测技术的发展。

相信在未来的研究中,这一方法将会得到更加广泛的应用和推广。

运动目标检测方法概述

运动目标检测方法概述

运动目标检测方法概述摘要:随着社会的发展,人们获取的信息途径越来越多,单纯的依靠人类的五官已不能及时的将我们获取的海量信息进行甄别和判断,因此计算机技术基础上发展的图像处理技术为我们生活、工作中的信息处理提供了很大的帮助,其在社会中的作用也越来越凸显。

其中,运动目标检测技术是整个图像处理技术的基础性环节,直接关系到后续信息处理的成败。

本文主要介绍了目标检测的常用算法的原理以及它们的优缺点,并对其中的帧间差分法和背景减除法进行了仿真实验,以验证其优缺点。

关键词:运动目标检测算法;帧间差分法;背景减除法中图分类号:tp391 文献标识码:a 文章编号:1007-9599 (2012)23-0000-031 引言运动目标检测技术是图像处理技术中的关键基础技术[1],利用运动目标检测技术可以对视频图像中感兴趣的目标进行实时地检测、识别、提示报警,是进一步视频图像处理的重要依据。

运动目标检测技术已经广泛应用于智能视频监控、犯罪预防、智能分辨、自动制导等安防、军事领域[2]。

运动目标检测是将运动目标从视频序列图像背景中分离出来。

各类实际应用需求的不断增多,大大地推动了运动目标检测技术的发展,产生了许多成熟的目标检测算法。

一般我们会把运动目标检测区分为动态环境下和静态环境下,由于动态环境处理较为复杂,所以本文主要介绍静态环境下的目标检测算法。

2 运动目标检测常见方法静态环境下的运动目标检测是指将视频序列中的图像分割为背景图像和前景图像[1],提取其中存在变化的区域为前景图像,即运动目标或称感兴趣区域,而没有发生变化的区域为背景图像。

能否准确地检测出监控场景中的运动目标直接影响了后续目标跟踪和行为分析等效果的好坏,因为目标检测提取出来的像素是后续处理分析的主要对象,是分析与处理的基础。

虽然,在视频监控场景中,监控环境情况十分复杂,但每个运动图像都具有独特的可供计算机识别的特点,计算机利用这些特点就可以将前景图像检测出来。

《2024年基于光流法的运动目标检测与跟踪技术》范文

《2024年基于光流法的运动目标检测与跟踪技术》范文

《基于光流法的运动目标检测与跟踪技术》篇一一、引言在计算机视觉和智能监控领域,运动目标检测与跟踪技术是一项至关重要的技术。

该技术通过实时获取并分析视频序列中的图像信息,对运动目标进行准确检测与跟踪,进而实现目标识别、行为分析、异常检测等功能。

光流法作为一种经典的运动目标检测与跟踪方法,具有广泛的应用前景。

本文将重点介绍基于光流法的运动目标检测与跟踪技术,分析其原理、方法及优缺点,并探讨其在实际应用中的发展前景。

二、光流法原理光流是指图像中像素点在单位时间内运动的速度和方向。

光流法基于图像序列中像素强度的变化来计算光流,从而实现对运动目标的检测与跟踪。

其基本原理是:在连续的视频帧之间,如果某个区域发生运动,那么该区域的像素强度变化将与周围区域产生差异。

通过分析这些差异,可以确定运动目标的轨迹和位置。

三、光流法在运动目标检测中的应用基于光流法的运动目标检测方法主要包括以下步骤:首先,通过计算图像序列中像素的光流,得到每个像素的运动矢量场;然后,根据预设的阈值或其他条件,从运动矢量场中提取出运动目标的轮廓信息;最后,通过形态学处理等手段对提取出的轮廓信息进行优化和整合,得到完整的运动目标区域。

该方法可以有效地从背景中分离出运动目标,为后续的跟踪和分析提供基础。

四、光流法在运动目标跟踪中的应用基于光流法的运动目标跟踪方法主要利用光流信息对运动目标进行连续的定位和跟踪。

具体而言,首先在初始帧中检测并确定运动目标的初始位置;然后根据后续帧中的光流信息,计算目标在连续帧之间的位置变化;最后通过一定的算法对目标的轨迹进行预测和更新,实现目标的跟踪。

该方法可以有效地解决因背景干扰、光照变化等因素导致的跟踪问题。

五、光流法的优缺点及改进方向优点:1. 适用于各种类型的运动目标,包括刚性物体和非刚性物体;2. 可以处理背景动态变化的情况;3. 在没有先验知识的情况下,能够自主地检测和跟踪运动目标。

缺点:1. 计算量大,实时性较差;2. 对光照变化和噪声较为敏感;3. 在复杂场景下,容易出现误检和漏检的情况。

光流法(OpticalFlowMethod)

光流法(OpticalFlowMethod)

光流法(OpticalFlowMethod)在计算机视觉中,光流法即可用于运动目标检测,也可以用于目标跟踪。

本文主要介绍光流法在运动目标检测和目标跟踪中的区别与联系。

1、光流与光流场光流的概念最初是由 Gibson 于 1950 年首先提出来的。

当人的眼睛观察运动物体时,物体的景象在人眼的视网膜上形成一系列连续变化的图像,这一系列连续变化的信息不断“流过”视网膜(即图像平面),好像是一种光的“流”,故称之为光流。

光流表达图像的变化,包含目标运动的信息,可用来确定目标的运动。

光流三个要素:一是运动速度场,这是形成光流的必要条件;二是带光学特征的部分例如有灰度的象素点,它可以携带运动信息;三是成像投影从场景到图像平面,因而能被观察到。

定义光流以点为基础,具体来说,设(u, v) 为图像点 (x, y) 的光流,则把 (x, y, u, v) 称为光流点。

所有光流点的集合称为光流场。

当带光学特性的物体在三维空间运动时,在图像平面上就形成了相应的图像运动场,或称为图像速度场。

在理想情况下,光流场对应于运动场。

总而言之,光流是由图像的亮度变化形成的,因此,光流场近似于运动场。

2、光流场的计算2.1、光流约束方程光流场的计算最初是由 Horn 和 Schunck[1]于 1981 年提出的,而后由 Lueas 和 Kanad[2]提出了改进光流算法。

光流法的核心就是求解出运动目标的光流,即速度。

根据视觉感知原理,客观物体在空间上一般是相对连续运动的,在运动过程中,投射到传感器平面上的图像实际上也是连续变化的。

为此可以假设瞬时灰度值不变,即灰度不变性原理。

由此可以得到光流基本方程,灰度对时间的变化率等于灰度的空间梯度与光流速度的点积。

如下:约束方程只有一个,而方程的变量有两个,在这种情况下无法求得 u 和 v 的确切值。

这种不确定性称为孔径问题(aperture problem)。

此时需要引入另外的约束条件,从不同的角度引入约束条件,导致了不同的光流场计算方法。

【Matlab】运动目标检测之“光流法”

【Matlab】运动目标检测之“光流法”

【Matlab】运动⽬标检测之“光流法”光流(optical flow)1950年,Gibson⾸先提出了光流的概念,所谓光流就是指图像表现运动的速度。

物体在运动的时候之所以能被⼈眼发现,就是因为当物体运动时,会在⼈的视⽹膜上形成⼀系列的连续变化的图像,这些变化信息在不同时间,不断的流过眼睛视⽹膜,就好像⼀种光流过⼀样,故称之为光流。

光流法检测运动物体的原理:⾸先给图像中每个像素点赋予⼀个速度⽮量(光流),这样就形成了光流场。

如果图像中没有运动物体,光流场连续均匀,如果有运动物体,运动物体的光流和图像的光流不同,光流场不再连续均匀。

从⽽可以检测出运动物体及位置。

应⽤背景:根据图像前景和背景的运动,检测视频的变化,空间运动物体在观察成像平⾯上的像素运动的瞬时速度,是利⽤图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上⼀帧跟当前帧之间存在的对应关系,从⽽计算出相邻帧之间物体的运动信息的⼀种⽅法。

可以⽤来检测运动抖动物体关键技术:当⼈的眼睛观察运动物体时,物体的景象在⼈眼的视⽹膜上形成⼀系列连续变化的图像,这⼀系列连续变化的信息不断“流过”视⽹膜(即图像平⾯),好像⼀种光的“流”,故称之为光流(optical flow)。

编程处理中:matlab中有现成的!!函数function [fx, fy, ft] = computeDerivatives(im1, im2)if size(im2,1)==0im2=zeros(size(im1));end% Horn-Schunck original methodfx = conv2(im1,0.25* [-11; -11],'same') + conv2(im2, 0.25*[-11; -11],'same');fy = conv2(im1, 0.25*[-1 -1; 11], 'same') + conv2(im2, 0.25*[-1 -1; 11], 'same');ft = conv2(im1, 0.25*ones(2),'same') + conv2(im2, -0.25*ones(2),'same');% derivatives as in Barron% fx= conv2(im1,(1/12)*[-180 -81],'same');% fy= conv2(im1,(1/12)*[-180 -81]','same');% ft = conv2(im1, 0.25*ones(2),'same') + conv2(im2, -0.25*ones(2),'same');% fx=-fx;fy=-fy;% An alternative way to compute the spatiotemporal derivatives is to use simple finite difference masks.% fx = conv2(im1,[1 -1]);% fy = conv2(im1,[1; -1]);% ft= im2-im1;也有现成的实例:Affine optic flow - File Exchange - MATLAB CentralEstimate optical flow using Horn-Schunck method - MATLAB调⽤系统对象vision.OpticalFlow后产⽣的混合矩阵数据如何处理 – MATLAB中⽂论坛Estimate optical flow using Lucas-Kanade method - MATLABLucas-Kanade Tutorial Example 1 - File Exchange - MATLAB Central1.⾸先是假设条件:(1)亮度恒定,就是同⼀点随着时间的变化,其亮度不会发⽣改变。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

摘要运动目标检测方法是研究如何完成对视频图像序列中感兴趣的运动目标区域的“准确定位”问题。

光流场指图像灰度模式的表面运动,它可以反映视频相邻帧之间的运动信息,因而可以用于运动目标的检测。

MATLAB这种语言可移植性好、可扩展性强,再加上其中有丰富的图像处理函数,所以利用MATLAB 软件来用光流法对运动目标的检测中具有很大的优势。

本设计主要可以借助matlab软件编写程序,运用Horn-Schunck算法对图像前后两帧进行处理,画出图像的光流场。

而图像的光流场每个像素都有一个运动矢量,因此可以反映相邻帧之间的运动,分析图像的光流场就可以得出图像中的运动目标的运动情况。

关键字:光流法;Horn-Schunck算法;matlab目录1光流法的设计目的 (1)2光流法的原理 (1)2.1光流法的介绍 (1)2.1.1光流与光流场的概念 (1)2.1光流法检测运动目标的原理 (2)2.1.1光流场计算的基本原理 (2)2.2.2基于梯度的光流场算法 (2)2.2.3Horn-Schunck算法 (3)2.2.4光流法检测运动目标物体的基本原理概述 (5)3光流法的程序具体实现 (6)3.1源代码 (6)3.1.1求解光流场函数 (6)3.1.2求导函数 (9)3.1.3高斯滤波函数 (9)3.1.4平滑性约束条件函数 (10)3.1.5画图函数 (10)4仿真图及分析 (12)结论 (13)参考文献 (14)1 光流法的设计目的数字图像处理,就是用数字计算机及其他有关数字技术,对图像进行处理,以达到预期的目的。

随着计算机的发展,图像处理技术在许多领域得到了广泛应用,数字图像处理已成为电子信息、通信、计算机、自动化、信号处理等专业的重要课程。

数字图像处理课程设计是在学习完数字图像处理的相关理论后,进行的综合性训练课程,其目的是:使学生进一步巩固数字图像处理的基本概念、理论、分析方法和实现方法;增强学生应用Matlab编写数字图像处理的应用程序及分析、解决实际问题的能力;尝试所学的内容解决实际工程问题,培养学生的工程实践能力。

运动目标检测是数字图像处理技术的一个主要部分,近些年来,随着多媒体技术的迅猛发展和计算机性能的不断提高,动态图像处理技术日益受到人们的青睞,并且取得了丰硕的成果,广泛应用于交通管理、军事目标跟踪、生物医学等领域。

因此,基于光流法,实现运动目标的检测是本文的研究对象。

结合图书馆书籍、网上资料以及现有期刊杂志,初步建立起运动目标检测的整体思路和方法。

2 光流法的原理2.1 光流法的介绍2.1.1 光流与光流场的概念光流是指空间运动物体在观测成像面上的像素运动的瞬时速度,它利用图像序列像素强度数据的时域变化和相关性来确定各自像素位置的“运动”,即反映图像灰度在时间上的变化与景物中物体结构及其运动的关系。

将二维图像平面特定坐标点上的灰度瞬时变化率定义为光流矢量。

视觉心理学认为人与被观察物体发生相对运动时,被观察物体表面带光学特征的部位的移动给人们提供了运动和结构的信息。

当相机与场景目标间有相对运动时所观察到的亮度模式运动称之为光流(optical flow),或者说物体带光学特征部位的移动投影到视网膜平面(也即图像平面)上就形成了光流。

光流场是指图像灰度模式的表观运动,它是一个二维矢量场,所包含的信息就是各个像素点的瞬时运动速度矢量信息。

光流场每个像素都有一个运动矢量,因此可以反映相邻帧之间的运动[1]。

2.1 光流法检测运动目标的原理2.1.1 光流场计算的基本原理一般情况下,光流由相机运动,场景中目标运动或两者的共同运动产生。

光流场的计算大致可分为三类:基于梯度的方法(Horn-Schunck);基于匹配的方法;基于能量的方法。

基于梯度的方法利用图像灰度的梯度来计算光流,是研究最多的方法。

基于梯度的方法根据运动前后图像灰度保持不变这个基本假设,导出光流约束方程。

由于光流约束方程并不能唯一的确定光流,因此需要导入其他的约束。

根据引入的约束不同,基于梯度的方法又可以分为全局约束方法和局部约束方法。

全局约束的方法假定光流在整个图像范围内满足一定的约束条件;而局部约束的方法假定在给定点周围的一个小区域内,光流满足一定的约束条件。

基于匹配的方法,这类方法是将速度v m定义为视差d=(dx,dy)t,使得两个时刻的图像区域的匹配最佳。

为了找到最佳匹配,我们可以对定义在d上的相似度量,如规一化的互相关系数,进行最大化,也可以对某一距离度量,如光强度差的平方和,进行最小化[2]。

2.2.2 基于梯度的光流场算法梯度光流法又分为全局约束方法和局部约束方法。

全局约束方法假定光流在整个图像范围内满足一定的约束条件,而局部约束的方法假定在给定点周围的一个小区域内,光流满足于一定的约束条件。

下面先导出光流约束方程。

然后给出两种比较典型的基于梯度的方法。

假定图像上点t y x ),(m =在时刻t 的灰度值为)(t y x ,,I =,经过时间间隔dt后,对应点的灰度为dt)t dy,y dx,x I +++([3],当时,可以认为两点的灰度不变,也就是:)()(t y x dt t dy y dx ,,I ,,x I =+++ (2.1)如果图像灰度随x,y,t 缓慢变化,可以将(1)式左边泰勒级数展开:ε++=+++),,(,,I t y x I dt t dy y dx x )( (2.2)其中ε代表二阶无穷小项。

由于dt →0,忽略ε,可以得到:0I =∂∂+∂∂+∂∂dt tI dy x I dx x (2.3) 令u=,v=代表x,y 方向上的光流,I X =,I Y =,I T =分别代表图像灰度相对于x,y,t 的偏导[4],式(2.3)可以写成:0I v I u I t y x =++ (2.4)此式即光流场的基本方程。

写成向量形式,即:0=+t m I V (2.5)其中=(I X , I y )是图像在点m 处的梯度,V m (U,V)是点m 的光流。

上式称为光流约束方程,是所有基于梯度的光流计算方法的基础。

2.2.3 Horn-Schunck 算法Horn-Schunck 算法提出了光流的平滑性约束。

即:图像上任一点的光流并不是独立的,光流在整个图像范围内平滑变化。

因此Horn-Schunck 算法是一种全局约束的方法[5]。

设平滑性约束项为极小化:⎰⎰+++=dxdy v v u u y x y x s )(E 2222 (2.6)由基本等式,显然要求极小化:dxdy I y I u I t y x c 2)(E ⎰⎰++= (2.7)于是,由(2.6)和(2.7)式可知,最后求得光流应满足(2.8)式:dxdy I v I u I v v u u t y x y x y x ])()([min 22222++++++⎰⎰λ (2.8)这里λ的取值要考虑图中的噪声情况,如果噪声较强,说明图像数据本身的置信度较低,需要更多的依赖光流约束,所以λ可以取较大的值;反之,取较小的值。

为了满足(2.8),可将该式对u 和v 分别求导,并取导数为0。

这样就得到[5]:t x y x x I I u v I I u I -∇-=+22λ (2.9)t y y x y I I v u I I v I -∇-=+22λ (2.10) 以上两式也称为Euler 方程。

如果令u 和v 分别表示u 邻域和v 邻域中的均值(可用图像平滑算子求得)[6],并令u u u ∇=-和v v v ∇=-,则式(2.9)和(2.10)改写成: )()(k j i k j i k j i k j i k j i k j i k j i k j i I I I I I I ,1,1,1,,,1,,1,1,11,1,1,,11,,t I 41I 41I +++++++++++++++-+++=(2.11)t x y x I I u v I I u -=++222x I λλ)( (2.12)t y y x I I v u I I v -=++222y I λλ)( (2.13)从上式解得:222)(y x t y x x I I I v I u I I u u ++++-=λ (2.14)222y )(y x t y x I I I v I u I I v v ++++-=λ (2.15)式(2.14)和(2.15)提供了用迭代法求解u 和v 的基础[7]。

实际中,常用松弛迭方程进行求解:222)()()()1(y x t k y k x x k k II I v I u I I u u ++++-=+λ (2.16)222)()(y )()1(v y x t k y k x k k I I I v I u I I v ++++-=+λ (2.17)其中k 是循环数,(0)u 和(0)v 是初始值,可以取为0。

u 和v 是局部平均,λ为权重系数,根据导数求取的精确度确定。

在实际求解过程中,需要估计亮度的时间和空间微分。

这可在图像点的一个2×2×2立方邻域中估计[8],如果下标,,i j k 分别对应,,x y t ,那么3个一阶偏导分别是:)()(1,1,1,,,1,,,1,1,11,,1,1,1,,1x I 41I 41I +++++++++++++++-+++=k j i k j i k j i k j i k j i k j i k j i k j i I I I I I I (2.18))()(1,,11,,,,1,,1,1,11,1,,1,1,1,y I 41I 41I +++++++++++++++-+++=k j i k j i k j i k j i k j i k j i k j i k j i I I I I I I (2.19))()(k j i k j i k j i k j i k j i k j i k j i k j i I I I I I I ,1,1,1,,,1,,1,1,11,1,1,,11,,t I 41I 41I +++++++++++++++-+++=(2.20)也就是用一阶差分来替代灰度I 关于x,y,t 轴的偏导。

上述算法的实现相对简单,计算复杂性较低。

但是这种技术存在着严重缺陷。

首先,图像灰度保持假设对于许多自然图像序列来讲都是不合适的,尤其是在图像的遮合边缘处和(或)当运动速度较高时,基于灰度保持假设的约束存在较大误差。

其次,在图像的遮合区域,速度场是突变的,而总体平滑约束则迫使所估计的光流场平滑地穿过这一区域,此过程平滑掉了有关物体形状的非常重要的信息。

第二,微分技术的一个要求是I(x ,y ,t)必须是可微的,这暗示着需对图像数据进行时空预平滑[9],以避免混叠效应;而且数值微分的求取具有病态性,如果处理不当将对最终的速度估计产生显著影响。

相关文档
最新文档