matlab代做基于MATLAB的GMM和KDE核估计得目标跟踪仿真

更新时间:2023-10-06 22:36:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第一章 课题背景和研究意义

近年来,视频监控系统在各行业得到了广泛应用,生活中有小区、超市等的 安全监控,银行系统有柜台监控,交通方面有违章监控等。这些监控系统是由一 个或多个摄像机以及与之相连的一套电视监视器组成的,它们的用途主要是对场 景的记录和保存,当异常情况,比如盗窃行为发生后,保安人员才通过记录的结 果察看发生的事情,但往往为时已晚。

视觉监视是指在一个繁忙环境中对人和车辆等进行实时的观察, 并给出对它们行为和动作的描述。这一技术包括了运动目标的检测、跟踪、目标分类和行为理解等方面,涉及到计算机视觉、模式识别和人工智能领域的许多核心课题,是一个具有挑战性的困难问题。

近年来随着集成电路和计算机技术的迅猛发展,视觉监视系统所要求的硬件设备成本大大降低,因此它获得了日益广泛的研究与应用。许多关于视觉监视的大规模研究项目已经在美国、欧洲和日本展开,同时它也成为许多国际学术会议关注的重要主题。运动目标检测与跟踪处于整个视觉监视系统的最底层,是各种后续高级处理如目标分类、行为理解等的基础。运动目标检测系指从视频流中实时提取目标,一般是确定目标所在区域和颜色特征等。目标检测的结果是一种“静态”目标——前景目标,由一些静态特征所描述。运动目标跟踪则指对目标进行连续的跟踪以确定其运动轨迹。我们通过为静止背景建模来检测前景点。具体的背景模型以 Stauffer 等提出的自适应混合高斯模型为蓝本,并对其作了部分改进以更好地处理实际背景发生变化的情形。算法中采用一种可靠的连通区域检测算法完成前景目标的分割。目标跟踪时则通过匹配目标的位置、大小、形状和颜色等特征,建立运动目标与前景目标间的对应关系。算法中考虑了跟踪中多个目标相互遮挡的问题,分析了几种可能结果并分别加以处理。我们还为运动目标引入了可靠性度量以使目标跟踪过程更加稳定和可靠。

在实际应用中,不包括运动物体的纯背景图像通常无法得到。而且,由于场景光照变化、摄像机抖动等因素,背景不可能完全静止。因此,背景减法的难点主要不在于减运算,而在于背景动态模型的维护与更新,即如何从获得的包含运动物体的视频序列中提取出背景。现有的以高斯分布为代表的单模态背景模型通常不能很好地描述室外场景,而混合高斯分布的多模态参数模型由于需要事先假定背景分布模型及需要进行模型参数估计和优化,也不适用于密度分布未知的计算机视觉等应用系统。本文根据核密度估计理论,提出了—种基于多样性采样原理的背景核密度估计模型。通过多样性原理提取的样本保留了训练图像序列中的重要信息,在背景的动态维护中不再需要保存和使用训练序列的全部数据。另外,由于非参数模型不需要假设背景的分布形式,可应用于更普遍的情形。

第 1 页 共 17 页

第二章 GMM和KDE介绍

2.1 GMM简介

GMM是一种利用一定数量的小高斯函数混合逼近某变量的概率密度函数的方法,是在概

率估计中常用的参数化模型,今年被广泛应用于模式识别领域。

一有限的GMM的描述非常简单,即由高新分布函数的任何凸组合形成一混合模型。对于n维实空间的随机变量x,利用GMM可以近似的表示其概率密度函数:

p(x)??hmN(x|um,?m)

m?1k其中,hm?0,且?hm=1;N(x|um,?m)是均值为um,协方差维?m;k为高斯混合项个数。

m=1k2.1.1 高斯模型原理

高斯分布,也称为正态分布。是伟大的数学家高斯(Gauss)与 1809 年在研究误差理论 时推导出来的。对于随机变量x,其概率密度为:

p(x,u,?)?12??e?(x?u)22?2

其中 μ为高斯分布的期望,σ为高斯分布的方差。如果一组数据符合高斯分布,那么这种数据中的大多数会集中在以 μ 为中心的-2σ 到 2σ 范围内的这段区间里。

在实际中,尤其是对于室外的场景,由于各种噪声的干扰,其背景变化是比较大的,会出现树枝摇动,光线变化等不同情况。因此用一个高斯分布就不能来完全描述实际的背景情况。这种情况下就需要采用多个高斯模型来描述动态的背景,为不同的状态建立不同的高斯模型。将k 定义为建立的高斯模型的数目,那么当前观测点的像素值的概率密度为:

p(xt)??wi,t?p(xi,t,ui,t?1,k,?i,t?1,k)

i?1k在采集的视频图像中是包含彩色分量的,使用协方差的方法来进行计算,这种方法计算量大但效果提升不高,不适合实时性的要求。因此,本算法中直接简化了这一过程,将彩色图像转为灰度图的方法来进行高斯混合建模。根据场景的复杂程度,高斯模型的数量 k可以取值为 3~7个,k值越大,其能表征的场景就越复杂,但相应的计算量也增大。因此本算法中取k 值为 3。

采用GMM进行背景建模主要包含3个步骤:背景训练,模板匹配及背景更新的过程。 首先对一段帧数的视频进行训练,通过训练帧中所得到模型计算出均值,方差和权重等

第 2 页 共 17 页

各参数来从作为背景模型的参数。在训练过程中,不必对每个高斯模型都进行确定,如果对于某一像素点来说,在训练时间内其灰度值变化不大,即其一个到两个高斯模型内就已经能包含图像中 90%以上的像素值,那么可直接将有较大的方差和较小的权值的参数赋予其他模型。本算法中将方差设为30,权值设为 0.001。通过对背景的训练,可以消除背景中的扰动因素,以避免将运动物体视为背景模型,训练帧数越长,所得到的背景模型越精确,但一般训练时间不超过50帧,否则会影响整个系统的启动时间。

得到了背景模型后,通过模板匹配来进行前景分割。在进行模板匹配前,首先要对混 合高斯模型中的三个单高斯模型进行排序,判断那个高斯模型最有可能与背景图像进行匹 配。由于静态区域的点会比动态区域点的方差小,且运动物体出现会导致模型更新后该单 高斯模型的权值降低,因此权值越大,方差越小,匹配度越高。通过公式 e=w/σ 对混合模 型中的各单个高斯模型进行优先级高低的排序后在进行匹配。匹配条件应满足:

|z?u|?m*?

由于场景中环境的不断变化, 通过训练建立好的背景模型不可能适应新的背景的需要,因此,需要对背景进行实时更新,以保证前景提取的正确性。 在背景模型更新过程中,引入了学习率 alpha 这一概率。当学习率取值比较小,其适应环境变化的能力就低,需要给足够的时间才能更新背景模型。相反,当 alpha 取值较大时,其对场景的适应性较强,能很快的变化背景模型,但是对于一段时间内停留的场景中的目标,却很容易学入背景中去。针对这种情况,算法对学习率进行调整,在图像中的不同处设定不同的学习速率,以保证场景变化的需要。学习率的变化范围应该在0~1之间。 对 k 个高斯模型进行更新,也就是对混合高斯模型中的三个参数,即权值,均值和方差进行调整。

其权值的更新算法如下:

wk,t?(1?alpha)?wk,t?1?alpha?M

M为匹配度,对于匹配的模型取值为1,否则取值为0。可见当像素点与高斯模型不匹配时,其权值会降低。对于匹配上的i个高斯模型,需对均值和方差进行更新。更新算法如下:

??alpha?p

ui,t?(1??)?ui,t?1???zt

?2i,t?(1??)??2i,t?1???(zt?ui,t)2

未匹配的模型,其均值和方差都保持不变。如果对于当前点的像素值,其与所有的高斯分布模型都不匹配, 则新建立一个高斯分布将混合高斯模型中排序最后一个的高斯模型替换

第 3 页 共 17 页

掉,同样该分布应选取较大的方差和较小的权值,而其均值则设为当前像素点的值。

通过混合高斯建模而分割出的二值图像, 往往会包含很多噪声点。 对于这种问题的处理,大多都是采用膨胀,腐蚀的方法进行消除。本文中直接采用连通性分析的方法来对小区域噪声点进行消除,并对运动前景进行提取。 所谓连通性分析,即在高斯模型所得到的二值图像中找到各个运动前景块,并对各前景块赋予不同的标号,并返回各连通区域的区域信息。其中每个前景块存在着4连通或者8连通的关系。对于位于(x,y)坐标的像素点r,4-连通和 8-连通区域。

2.1.2 背景建模

视觉监视的第一步工作是将前景目标所在的区域从背景中分割提取出来,即完成前景和背景的分离。这一工作一般有三种实现方法:背景消减、帧间运动分析和光流计算。后两种方法都可以用于运动摄像机的情形,对动态环境的适应能力比较强,但帧间运动分析的结果精度不高,难以获得目标所在区域的精确描述;光流计算的复杂度则非常高,难以符合视觉监视系统实时处理的要求,背景消减适用于摄像机静止的情形。它为静止背景建立背景模型,通过将当前图像帧和背景模型进行比较,确定出亮度变化较大的区域,即认为是前景区域。这种方法的计算速度很快,可以获得关于运动目标区域的完整精确的描述,但对场景中光照条件、大面积运动和噪声比较敏感,在实际应用中需采用一定的算法进行背景模型的动态更新,以适应环境的变化。出于处理速度和算法性能及应用场合的考虑,本文和大部分视觉监视系统一样,选择了建立背景模型作为检测前景区域的方法。按照所处理背景的自身特性,背景模型可分为单模态和多模态两种。前者在每个背景点上的颜色分布比较集中,可以用单个概率分布模型来描述(即只有一个模态),后者的分布则比较分散,需要多个分布模型来共同描述(具有多个模态)。自然界中的许多景物和很多人造物体,如水面的波纹、摇摆的树枝、飘扬的旗帜、监视器荧屏等,都呈现出多模态的特性。最常用的描述背景点颜色分布的概率分布是高斯分布(正态分布),下面就单模态和多模态两种情形下的背景模型分别加以说明和讨论。为叙述方便,我们用 ),( Σ μ η x 来表示均值为μ 、协方差矩阵为Σ的高斯分布的概率密度函数。由于背景模型中对各个图像点的处理是完全独立的,所以若不作特殊说明,本文所有关于背景模型的描述都系针对同一图像点位置而言。

2.1.2.1单高斯分布背景模型

单高斯分布背景模型适用于单模态背景情形,它为每个图像点的颜色分布建立了用单个高斯分布表示的模型?(x,ut,?t),其中下标 t 表示时间。设图像点的当前颜色度量为Xt

第 4 页 共 17 页

?(Xt,ut,?t)?Tp(这里Tp为概率阈值),则该点被判定为前景点,否则为背景点(这时又称

相匹配)。在实际应用中,可以用等价的阈值替代概率阈值。如记dt?xt?utXt与(?x,ut,?t)则可以根据dtT?t?1dt的值设置相应的前景检测阈值。

2.1.3GMM的参数估计

为每个像素建立混合高斯模型后,当输入但前采样值xt的时候。我们必须估计M个分布中哪一个最有可能导致该像素值的产生。更具贝叶斯理论,后验概率p(k|xt,?)代表了该像素值由状态K产生的可能性。

p(k|xt,?)?p(k)pk(k|xt,?k)

p(xt|?)我们可以得到M个分布中最有可能产生当前采样值的分布K,只要我们知道该分布是代表前景还是背景物体,就可以划分当前像素是前景还是背景像素。当前的输入可能不是由M个表面中的任何一个产生的。典型的情形是,一个以前为出现过的前景物出现在该像素的位置。可以通过在M个高斯分布的基础上再增加一个扁平的第M+1个分布接收一个以前没出现过的输入值。赋予该分布一个较小的但非0的先验概率值和一个很大的方差。

在实际应用中,一般选择M等于3。三个分布中两个用来描述背景表面,一个描述前景表面。实际上这是应用GMM模型最小的选择,如果少于两个背景表面的话,就没必要用这个算法了,用一个平均背景图像做简单的减除会更简单些。在M=3的情况下,算法只用一个高斯分布表示前景就可以工作,是应为能够用它来粗略的表示任何前景。

对于M个分布,必须估计出其中哪些代表背景模型。在实际应用中,处理完当前帧后,模型的参数要进行必要的更新,所以每一帧都要进行背景模型的重新估计。一般的,我们会对有较多数据支持且方差较小的高斯分布感兴趣,因为它们代表背景模型的可能性较大。

考虑两种情况,一是当背景物体是持久静止的时候,这时该物体表面产生的高斯分布代表着背景分布,那么支持这个分布的数据会持续积累,而且它的方差也会越来越小。第二种情况,当一个新的物体遮挡了原来的背景物体时,一般会导致两种结果:要么产生一个新的分布,要么把一个已存在的分布的方差增大。另外,当新的物体是一个运动物体的时候,它一般也会比背景像素保持更大的变化直到它停下来。从以上两种情况可以看出,影响一个分布时候背景分布的重要因素有两个:一,该分布产生的数据所占的比例大小;二该分布的方差大小。

GMM的参数估计是根据已知的样本序列,估计出模型的混合系数、各个高斯分布的均值

第 5 页 共 17 页

本文来源:https://www.bwwdw.com/article/j87d.html

Top