您好,欢迎来到榕意旅游网。
搜索
您的当前位置:首页融合混合高斯模型的改进的Vibe算法

融合混合高斯模型的改进的Vibe算法

来源:榕意旅游网
融合混合高斯模型的改进的Vibe算法

张红瑞;马永杰

【摘 要】针对经典Vibe算法在运动目标检测时存在鬼影、阴影和噪声干扰的问题,提出了一种融合混合高斯模型的改进的Vibe算法.在背景初始化阶段,采用五帧差分算法与八邻域的像素值填充获得的真实背景并且消除鬼影现象;通过混合高斯模型权值与Vibe随机取样概率相结合进行背景更新,将得到的运动目标进行形态学处理,使运动目标更加清晰;最后,在YCbCr颜色空间进行阴影消除.实验结果表明,改进后的Vibe算法不仅能够有效地去除鬼影,并且在消除阴影与噪声方面取得了良好的效果.%To solve the problems of the classical Vibe algorithm,such as ghost,shadow and noise interference in moving object detection,an improved Vibe algorithm which combines Gaussian mixture model was put forward.Firstly,by using five frame difference algorithm and eight-neighbor pixel value to fill in the background initialization phase,the true

background is obtained and the ghosting phenomenon is eliminated.Then the background is updated by combining the Gaussian mixture model and Vibe random sampling probability,the moving targets are clearer with morphological method.And the shadow is eliminated in the YCbCr color space.The test results show that the improved Vibe algorithm not only can effectively eliminate the ghost image,but also has good effect in eliminating the shadow and noise.

【期刊名称】《西北大学学报(自然科学版)》 【年(卷),期】2017(047)003

【总页数】6页(P361-366)

【关键词】Vibe算法;混合高斯模型;鬼影消除;五帧差分算法 【作 者】张红瑞;马永杰

【作者单位】西北师范大学物理与电子工程学院,兰州730070;西北师范大学物理与电子工程学院,兰州730070 【正文语种】中 文 【中图分类】TP391 ·信息科学·

运动目标检测是数字图像处理和计算机视觉中研究的热点之一,主要是从视频序列中提取出当前场景中的前景区域,被广泛应用于视频监控、交通检测、导航等领域。当前,比较常用的运动目标检测方法主要有:背景差分法[1]、光流法[2]和帧差法[3]。背景差分法在运动目标检测方面被广泛使用,它从背景中选取几幅图像进行平均,产生背景图像,将当前帧与背景图像进行差分,然后选择一个合适的阈值,将所得到的像素与该阈值进行比较,得到运动目标,但是对于光照、树叶等外部干扰条件比较敏感;光流法将图像中每一个像素点描述为速度矢量,从而近似估计运动场,但是光流法计算量大,抗噪能力差,若是没有特别的硬件设施,很难达到实时检测的要求;帧差法是通过判断前后两帧图像对应的像素点的灰度差值来确定运动目标,该算法比较简单,但是检测到的运动目标会有空洞现象。

针对上述算法的不足,VanDroogenbroeck和Olivier Barnich[4]提出了Vibe算法。Vibe算法计算量小,减少了背景建模的过程,使得检测速度大大提高,但是会引进鬼影,并且不能够很好地抑制阴影以及噪声干扰。因此,本文提出了融合混合高斯模型的改进的Vibe算法,采用五帧差分与八邻域的像素值填充的方法抑制鬼影,通过

混合高斯模型权值与Vibe随机取样概率相结合进行背景更新,然后在YCbCr颜色空间进行阴影的消除。

Vibe是一种涉及像素级视频背景建模及前景检测的算法,背景模型的更新策略是该算法的一大特点,其核心是随机选择需要替换的像素样本,随机选择邻域像素进行背景更新。当不能准确地判断像素变化的模型时,采用随机的更新策略,能够在一定程度上模拟像素变化的不确定性。算法的基本思想是为每一个像素点存储一个样本集,这个样本集所包含的采样值就是这个像素点过去的像素值及其邻域点的像素值,当出现一个新的像素值时,将它与这个样本集中所包含的采集点进行对比,判断这个新的像素值是否属于背景点。该算法主要包括3个步骤:背景建模、背景初始化、背景更新。 1)背景建模

Vibe背景模型是通过N个样本建立的背景模型,通常情况下N取20,在欧氏色彩空间中v(x)为图像中像素点x在该空间中的值,则背景模型为 M(x)={v1,v2,…,vN}。 2)背景初始化

背景的初始化是从视频的第1帧进行的,对于每一个像素点,随机地选取它的邻域点的像素值填充像素的样本集作为背景模型。实验中选取的是8邻域,通过x的8邻域QG(x)邻域像素点初始化背景模型,即 M0(x)={v0(y|y∈QG(x))}。 3)背景更新

背景模型的更新选取随机子采样的方法,如果对背景模型的每一个像素点都进行更新会影响算法的效率,因此选用随机取样更新。当一个像素点被判断为背景时,有1/φ的概率来更新背景模型(二次抽样因子φ取16),同时用1/φ的概率对它的邻域点的像素值进行填充更新。

Vibe算法自身也存在着一些局限性,该算法通过视频第一帧进行背景建模,若在第一帧中存在待检测的运动目标,就会导致所检测到的前景中含有该背景像素,从而形成了鬼影。同时,Vibe算法没有考虑到运动目标在实际环境中的阴影干扰,使得检测到的运动目标不完整,并且检测画面经常出现噪声,这些干扰使得实验结果不够准确。 文中在原始的Vibe算法背景建模的基础上结合五帧差分进行背景的初始化,在运动目标检测阶段融合混合高斯模型进行噪声以及阴影的抑制,然后在YCbCr颜色空间消除阴影。

2.1 基于五帧差分的背景初始化

文献[5]中利用三帧差分进行预处理来获得背景。虽然该方法能快速地获得运动目标,但是得到的运动目标轮廓不连续,会出现很大的空洞,当运动目标和背景颜色相近时,检测效率变低,影响了背景的提取。因此,文中提出了运用五帧差分进行背景提取。首先提取连续的5帧图像并分别记为Tt-2(x,y),Tt-1(x,y),Tt(x,y),Tt+1(x,y),Tt+2(x,y),然后利用中间帧分别对前两帧和后两帧进行差分运算,结果为 F31=|Tt(x,y)-Tt-2(x,y)|, F32=|Tt(x,y)-Tt-1(x,y)|, F34=|Tt(x,y)-Tt+1(x,y)|, F35=|Tt(x,y)-Tt+2(x,y)|。 F1=F31⊗F32, F2=F34⊗F35。

然后,将F1和F2进行中值滤波处理后再次进行与运算,最后,采用文献[5]中的方法进行运动目标位置的填充,得到运动目标的位置,获得真实的背景。

图1(a)是运用原始Vibe算法提取的背景,图1(b)是使用文中算法提取的背景。可以看出图1(a)中存在运动目标,这导致在运动目标检测时产生鬼影。 2.2 融合混合高斯模型的噪声及阴影消除

传统的Vibe算法是在RGB空间对运动目标进行检测,不能很好地消除阴影及噪声的干扰,严重影响了检测的真实性。因此,本文提出了融合混合高斯模型的噪声及阴影的抑制,并在YCbCr颜色空间消除阴影。

为了简化计算,取K为3并且假设RGB颜色通道是相互的,则协方差矩阵为 将当前像素点与对应的K个已知高斯分布进行匹配,若匹配成功(该像素值与某个分布均值的偏差小于其标准差的2.5倍),则该像素属于背景,否则属于前景。匹配成功后,需要将模型权值进行更新,表示为 μt=(1-ρ)μt-1+ρXt, ρ=α·η(Xt,μt,δt)。

若当前像素点与K个已知高斯分布不存在匹配的高斯分量,则重新构建一个高斯分布,将ωk/σk由大到小进行排序,背景像素模型由上面所述序列中前L个高斯模型决定,

YCbCr颜色空间是由YUV空间衍生出的一种颜色空间,可以用来对视频图像进行处理,其中Y表示亮度分量,Cb表示蓝色色度分量,Cr表示红色色度分量。YCbCr颜色空间与RGB颜色空间之间的相互转换是线性的,换算关系也相对简单,并且可以把色彩中的亮度分离出来。相对于其他颜色空间,RGB转换成YCbCr的过程比较简单且符合人们对色彩的感知。RGB颜色空间转换成YCbCr颜色空间公式为 一般情况下阴影部分的亮度信息改变很大,但是色度信息基本不变。通过阴影区域在YCbCr颜色空间的共性对阴影部分进行分析判断,当每一个像素的各个分量满足下述条件时,将其判断为阴影。 |IY(x,y)-BY(x,y)|≤TY, |ICb(x,y)-BCb(x,y)|≤TCb, |ICr(x,y)-BCr(x,y)|≤TCr。

LBP算子[7]主要是反映图像中的局部纹理特征,通过比较像素点与相邻像素点之间

像素值的大小来反映图像的局部纹理信息,计算复杂度低。对于像素点(xc,yc),其LBP值公式为

LBPP,R(xc,yc)=S(gp-gc)2p,

传统的LBP算子没有考虑中心像素点的信息,且容易受噪声的干扰,不能够很好地反映中心像素和邻域像素的灰度差别。针对以上缺点,对LBP进行改进, LBPP,R(xc,yc)=S(gi-gm)2i,

根据阴影覆盖前后图像的纹理特征不会发生改变,利用改进的LBP算子对候选阴影区域进行判断,比较图像中任意一个像素与背景图像对应像素的LBP值,若相等,则该像素点为阴影点。通过该方法准确地确定了阴影区域,并对阴影区域进行分割,获得真实的运动目标。

步骤1 利用2.1节建立的背景模型进行运动目标检测,对于视频中的每一帧图像,计算每一个像素点与背景样本中对应像素点的欧氏距离,并将当前像素点与对应的K个已知高斯分布进行匹配,并且至少有2个分类阈值#min小于匹配阈值R=20,若匹配成功,则该像素属于背景,否则属于前景;

步骤2 当一个像素点被判定为背景时,用1/φ的概率来更新背景模型,并将高斯模型权值进行更新;

步骤3 将检测到的运动目标进行腐蚀与膨胀,并进行形态学闭运算处理;

步骤4 将第3步得到的视频序列在YCbCr空间进行阴影检测,利用改进的LBP算子对阴影区域进行优化分割,去除阴影部分。

采用Visual Studio 2010和计算机视觉库Opencv 2.3.1进行程序编写,在操作系统为Windows7,处理器为Intel(R)Core(TM)*******************,内存为2.0GB的戴尔笔记本上实现本文算法,并将实验结果与VanDroogenbroeck和Olivier Barnich提出的Vibe算法[4]、混合高斯模型GMM算法[8]进行了对比。本实验中φ=16,K=3,T=25,R=20,#min=2。

图2(a)为原始Vibe算法检测到的运动目标,图中灰框是图像中出现的鬼影,是实验时误判的结果。图2(b)为利用2.1节进行背景提取后再进行运动目标检测得到的结果,可以看出在检测到的前景图像中该方法成功地消除了鬼影,获得了真实的运动目标。

图3为本文使用的一段交通视频,即视频1,从实验结果可以看出,Vibe算法检测到的运动目标存在着很多噪声和阴影的干扰;GMM算法检测的结果存在大面积的阴影,并且噪声干扰很严重,影响了运动目标的检测。从图3中本文算法可以看出,采用混合高斯模型与Vibe算法相结合并在YCbCr空间进行视频序列处理,较好地消除了噪声和阴影干扰,与Vibe算法和GMM算法的结果比较,有效地抑制了阴影以及噪声的干扰,使得运动目标检测更加准确。

为了更加客观地评价该算法的性能,使用公开测试视频highwayI-raw和

Laboratory-raw进行进一步的实验分析。从图4可以看出,使用本文方法得到的检测结果优于Vibe算法和GMM算法,虽然在对highwayI-raw视频序列检测时,还残留小部分阴影,但是对于大面积的阴影取得很好的效果,检测到的运动目标较为完整,虽然从检测结果上看不是很完美,但是相对前两种方法还是取得了较理想的结果。 为了能够定量分析该算法的性能优劣,本文采用PCC来评估本文提出的算法,公式为 PCC=。

利用上述评判标准对本文使用的视频序列进行分析,表1为3种方法处理本文使用的视频得到的结果。从表1可以看出,本文使用的算法优于Vibe算法和GMM算法。

本文提出了一种融合混合高斯模型的改进的Vibe算法,在原始Vibe算法的基础上结合五帧差分法进行背景初始化,有效地抑制了鬼影,准确地检测到了运动目标。由于原始Vibe算法没有考虑到实际环境下阴影的存在,导致检测出的运动目标粘连着阴影,并且伴随着噪声的干扰,降低了算法的效率和准确性,因此本文提出了将混合高

斯模型的前景检测与背景更新方法与Vibe算法相结合,并在YCbCr空间进行阴影消除,对处理后的视频序列再进行形态学处理,达到了消除阴影及噪声的效果。通过3种方法对视频序列进行了验证,实验结果表明,本文提出的算法能够更加准确地检测出运动目标,并且消除噪声和阴影的干扰,但是,检测到的运动目标还存在空洞、残缺现象,阴影消除不够完全,这些问题是今后的工作重点。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- nryq.cn 版权所有 赣ICP备2024042798号-6

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务