matlab光流法前景分割,使用高斯模型去除背景

使用高斯模型去除背景

收录时间:2014-07-24

资源分类:Matlab 工具:MATLAB 7.11 (R2010b)

单高斯分布背景模型适用于单模态背景情形,它为每个图像点的颜色分布建立了用单个高斯分布表示的模型η(x,μt,Σt),其中下标t表示时间。设图像点的当前颜色度量为Xt,若η(x,μt,Σt)≤Tp(这里Tp为概率阈值),则该点被判定为前景点,否则为背景点(这时又称 X t与 η ( x ,μt,Σt)相匹配)。在实际应用中,可以用等价的阈值替代概率阈值。如记dt=Xt-μt,在常见的一维情形中,以σt表示均方差,则常根据dt/σt的取值设置前景检测阈值:若dt/σt>T,则该点被判定为前景点,否则为背景点。单高斯分布背景模型的更新即指各图像点高斯分布参数的更新。引入一表示更新快慢的常数——更新率α ,则该点高斯分布参数的更新可表示为:

μt+1=(1-α)*μt+α*dt(t+1是下标) Σt+1 =(1-α )*Σt+α*dt*dt

运动物体检测的问题主要分为两类,摄像机固定和摄像机运动。对于摄像机运动的运动物体检测问题,比较著名的解决方案是光流法,通过求解偏微分方程求的图像序列的光流场,从而预测摄像机的运动状态。对于摄像机固定的情形,当然也可以用光流法,但是由于光流法的复杂性,往往难以实时的计算,所以我采用高斯背景模型。因为,在摄像机固定的情况下,背景的变化是缓慢的,而且大都是光照,风等等的影响,通过对背景建模,对一幅给定图像分离前景和背景,一般来说,前景就是运动物体,从而达到运动物体检测的目的。

单分布高斯背景模型认为,对一个背景图像,特定像素亮度的分布满足高斯分布,即对背景图像B,(x,y)点的亮度满足:

IB(x,y) ~ N(u,d)

这样我们的背景模型的每个像素属性包括两个参数:平均值u 和 方差d。

对于一幅给定的图像G,如果 Exp(-(IG(x,y)-u(x,y))^2/(2*d^2)) > T,认为(x,y)是背景点,反之是前景点。

同时,随着时间的变化,背景图像也会发生缓慢的变化,这时我们要不断更新每个像素点的参数:

u(t+1,x,y) = a*u(t,x,y) + (1-a)*I(x,y)

这里,a称为更新参数,表示背景变化的速度,一般情况下,我们不更新d(实验中发现更不更新d,效果变化不大)。

高斯分布即正态分布,是最常见概率分布模型,在图象处理、模式识别、计算机视觉中经常被用来刻画一些随机量的变化情况,如噪声、特征分布、像素灰度,此外正态分布函数还经常被选择为加窗函数用于局部化处理,如平滑滤波、Gabor变换等。这是因为一方面正态分布反映了自然界中普遍存在的有关变化量的一种统计规律,另一方面还因为正态分布函数具有非常好的数学性质,具有各阶连续的导数,在时域和频域具有相同的函数形式等等,非常便于分析。

基于高斯分布背景模型的差分方法,在原理上通过背景的分布模型判断一个像素点是否属于背景点,以此区分前景点和背景点,前景点就构成分割出来的物体。在实践上,就是对于每个像素考察其像素值与背景模型中的高斯分布的匹配程度,例如当像素值在一个高斯分布的1s以内时就认为它与该高斯分布匹配,则认为其属于背景点;而如果不与背景中任何一个高斯分布匹配,则认为其为前景点。背景模型的建立可以通过训练得到,并在处理中不断更新,这些过程除了需要人为的少量干预之外可以自动地实现。

Background Removal using Gaussian Model

Models image as sample from one of 2 Gaussians in RGB space. Classifies each pixel as having originated from one Gaussian.

In the future this could be expanded to remove the ith, kth, etc Gaussians from an N-Gaussian image model.

RemoveBackground.m contains a demonstration of how to use the main function, separate.m

matlab光流法前景分割,使用高斯模型去除背景_第1张图片

matlab光流法前景分割,使用高斯模型去除背景_第2张图片

文件下载列表

附件内容(只显示5中的3个)

EM_GM.m  RemoveBackground.m  separate.m

标签: 高斯模型

你可能感兴趣的:(matlab光流法前景分割)