基于三帧差分混合高斯背景模型运动目标检测

2018-08-24 07:47李晓瑜马大中付英杰
吉林大学学报(信息科学版) 2018年4期
关键词:高斯分布高斯背景

李晓瑜, 马大中, 付英杰

(东北大学 a. 材料电磁过程研究教育部重点实验室; b. 信息科学与工程学院, 沈阳 110819)

0 引 言

运动目标检测是智能视频监控中至关重要的环节, 是后续运动目标的跟踪、 识别和行为分析的基础[1]。运动目标检测作为计算机视觉技术的重要分支之一, 主要是对视频监控中的运动目标, 如人或交通工具, 进行实时检测, 并将运动目标与背景区分开, 也是当前着重研究的热点问题之一[2-4]。目前, 常用的运动目标检测方法有: 背景差分法、 检测线法、 光流法和帧差法等, 背景差分法和帧差法是众多方法中应用较为广泛的方法[5-7]。

背景差分法最核心的问题是如何快速、 准确地获得图像中的背景模型, 以及如何对图像中的背景模型进行实时更新, 从而区分出视频图像中的运动目标[8]。在众多背景模型中, 混合高斯背景模型是一种较为经典的背景模型, 用于背景相对复杂情况下的运动目标检测[9], 根据视频中的每个像素点在时域上的分布情况构建各个像素点的颜色分布模型, 以此达到背景建模的目的, 且多模态下的混合高斯背景模型具有一定的鲁棒性[10]。目前对混合高斯背景模型建模及参数初始化方法大多为传统方法, 即忽略模型中不同高斯分布可能出现的先验概率, 所有分布的参数初始化为相同值[11,12]。在帧差法方面, 由于该方法检测到的运动目标经常存在裂痕和空洞, 运动目标的位置和大小不够精确等缺点[13], 研究人员又在帧差法的基础上提出了三帧差分法运动目标检测, 选取连续三帧视频图像进行差分运算, 消除由于运动而显露背景影响, 从而提取精确的运动目标轮廓信息, 解决了帧差法存在的不足。

尽管如此, 在运动目标检测方面, 混合高斯背景模型和三帧差分法仍存在一些不足。文献[14]使用传统方法对混合高斯背景模型进行参数初始化, 即对模型中每个高斯分布初始化相同的均值、 方差与权重, 该方法背景建立时间较长, 不利于背景的迅速建立与恢复。当监控场景发生光线突变时, 基于混合高斯背景模型运动目标检测方法会出现大量的误检[15]。文献[16]所述的基于混合高斯模型的运动目标检测方法, 虽然解决了光线突变时的误检问题, 但是当视频画面中静止的物体突然开始移动时, 检测到的运动目标会出现“鬼影”现象。三帧差分法能够适应监控场景的光线突变现象, 并且能及时区分静止目标突然运动后新显露出的背景区域[17], 但当监控场景处于复杂环境时, 背景模型实时动态变化, 三帧差分法的效果处理效果很差。

针对上述问题, 笔者提出了一种基于三帧差分的混合高斯背景模型运动目标检测算法。首先设计了一种基于统计方法的混合高斯背景建模方法, 利用背景像素点的灰度值在实际视频序列中多次出现的特点, 提高了混合高斯背景模型参数初始化的速度与准确性。然后实现对图像背景区域、 运动区域和背景显露区域进行划分, 并且在不同光照阶段针对不同区域动态调整模型参数更新学习率, 提高背景的建立与更新速度。最后设置图像前景检测比例阈值以及受光照影响图像帧数阈值, 获取当前帧图像所处光照阶段并推测之后图像状态, 减少了光线突变对运动目标检测准确性的影响。

1 问题描述

1.1 传统混合高斯背景模型建模

在混合高斯背景模型中, 某像素点颜色存在M个状态, 且k(k=1,2,…,M)表示其中某一状态, 多维随机变量X表示该像素点所呈现出的具体颜色,t(t=1,2,…)时刻的像素值即为多维随机变量X的采样值, 并使用该采样值对当前像素点的状态k进行估计。

假设多维随机变量X的概率密度函数使用M个高斯函数表示, 每个高斯函数对应一种可能的状态, 不同时刻t所得到的像素采样值之间相互独立, 并与随机变量X同分布。p(k,t)表示t时刻像素值可能与第k个状态对应的先验概率, 因此利用wk,t=p(k,t)表示第k个高斯分布的权重。η(Xt,θk,t)表示X服从的概率密度函数,θk,t=(μk,t,Σk,t)表示第k个高斯分布的均值与协方差。η(Xt,μk,t,Σk,t)的函数表达式如下

wk=1/M

(3)

μk=255(k/M)k=1,2,…,M

(4)

在实际应用中, 背景环境往往存在着树枝晃动、 电子屏幕闪烁、 水波扰动等情况, 背景像素点会呈现双峰或多峰的情况, 混合高斯背景模型适用于这种复杂的运动场景, 尤其是存在微小重复运动的监控场景。但是, 传统混合高斯模型建模初始化方法背景建立时间较长, 不利于背景的迅速建立和恢复。

1.2 基于统计方法的混合高斯背景模型建模

针对传统模型参数初始化方法的不足, 笔者设计了基于统计方法的混合高斯模型参数初始化方法, 其在对模型参数进行初始化时, 引入两个累加器矩阵A1、A2用以记录灰度值满足相应规则的像素点的个数, 矩阵的各元素与图像的各像素点相对应。累加器矩阵A1、A2各位置元素值的更新方式为

在对累加器矩阵A1、A2各位置元素值进行更新后, 还需按如下方式对累加器矩阵A1、A2所对应的均值进行更新, 即

其中x为当前帧图像每个像素点的灰度值。μ为与累加器矩阵A1对应的平均灰度值,μ′为与累加器矩阵A2对应的平均灰度值, 累加器矩阵A1对应的初始平均灰度值设置为第1帧图像的灰度值, 累加器矩阵A2对应的初始平均灰度值设置为第1次启动A2时当前帧图像的灰度值。a、λ为常数, 通常取值为4~10、2.5。

在初始化训练结束时, 按

初始化混合高斯模型中的其中一个高斯分布, 并且计算出相应的方差σ2。而混合高斯模型中的其他高斯分布按

进行初始化。其中wM为最大的权重值,σM为较大的方差, 通常取值为5~6,ε为权重较小值, 通常取值为0.001。

混合高斯背景模型更新时需要对每个高斯分布的参数以及权重进行更新。在获取一帧新的图像后, 将其像素点与混个高斯模型中的M个高斯分布进行匹配。若像素点与某一高斯分布满足

|xt-μk,t-1|<λσk,t-1

(9)

其中μk,t-1为第k个高斯分布在t-1时刻的均值,λ为自定义的阈值, 一般取2.5,σk,t-1为第k个高斯分布在时刻t-1的标准差。则认为像素点与该高斯分布是匹配的, 并按

所示方式对该高斯分布进行参数更新。其中α代表权重学习率, 0≤α≤1,α决定着权重的更新速度, 并且会影响高斯分布的更新速度,ρ代表参数学习率,ρ=α/wk,t。

当xt与所有高斯分布均不匹配时, 使用新的高斯分布代替权重最小的高斯分布。新高斯分布的均值初始化为xt, 标准差σ0初始化为较大值, 通常取值为5~6, 权重w0初始化为较小值, 通常取值为0.001, 如此取值以保护原有较优高斯分布。其余高斯分布的均值和方差保持不变, 但这些高斯分布的权重需要按如下方式进行衰减

wk,t=(1-α)wk,t-1

(11)

更新混合高斯背景模型的各参数后, 需要对所有高斯分布的权重进行归一化处理

其中∂k,t为t时刻第k个高斯分布的优先级, 对所有分布按优先级∂k,t排序, 被匹配次数多的高斯分布权重wk,t增大, 方差σk,t减小, 其对应的分布优先级∂k,t也增大。

若前Bcnt个高斯分布满足

所示的条件, 则这Bcnt个分布被认为是背景对应分布, 剩下的M-Bcnt个分布被认为是运动目标对应的分布。其中τ为示自定义的权重阈值, 它决定着代表背景的高斯分布权重之和的最小值。基于统计方法的混合高斯背景模型参数优化算法流程如下。

算法1 基于统计方法的混合高斯背景模型参数优化算法。

变量: 当前图像灰度值x, 累加器矩阵A1、A2, 均值μ、 方差σ2、 权重w。

结果: 混合高斯模型参数μk、σk、wk(k=1,2,…,M)。

在体系建设过程中要打破职能部门之间的界限,才能将控制置于医院经济活动的全过程,形成主要领导负责,分管领导主抓,专职部门牵头推动,各职能部门分工负责,全院职工共同参与的内控格局,最终实现“全员参与,共同实施”的目标。这样就能够做到将内部控制责任进行明确,各参与人都能够意识到自己的到位,到时候只需要内部控制部门根据相应的制度进行考核就能够与达到将内部控制责任明确到各个职工中,最终为内部控制的追责体系的构建打下坚实的基础。

1) 初始化累加器矩阵A1、A2及其对应的均值μ、μ′;

2) 依据式(5)和式(6)条件对累加器矩阵矩阵A1、A2各位置元素及其对应的均值μ、μ′进行训练更新;

3) 根据式(7)描述的μ、μ′的关系对模型中一组μk、σk、wk进行初始化;

4) 根据式(8)对模型中其他高斯分步进行初始化;

5) 递推: 利用式(10)对混合高斯模型参数μ、σ2、w进行迭代更新;

综上所述, 通过基于统计方法的混合高斯背景建模, 可在模型初始化的过程中既对模型参数进行优化, 建模后立即得到相对传统建模方法较优的背景模型, 从而使得背景模型能快速且准确的建立并更新。

2 基于三帧差分的混合高斯背景模型运动目标检测算法设计

实现基于三帧差分的混合高斯背景模型运动目标检测算法要解决如下两个关键问题: 首先是如何划分图像中的背景区域、 运动目标区域和背景显露区域; 其次是如何准确的判断是否发生了光照突变。

在对图像的不同区域进行区分时, 首先假设xt-1、xt、xt+1分别代表t-1、t、t+1时刻的3帧图像, 并对其中相邻的两帧图像做差分运算, 其过程如图1所示。

然后对上述运算得到的差分图像dt-1,t、dt,t+1做二值化及形态学处理, 得到rt-1,t和rt,t+1, 并对二者进行与运算, 得到三帧差分的结果rt。

图1 三帧差分法示意图Fig.1 Three image difference methodschematic diagram

通过理论分析和大量实验研究发现, 当发生光照突变时, 通常会对突变后的20~70帧视频画面的目标检测产生严重影响, 一般会将60%以上的视频画面检测为前景, 严重时会将整幅画面检测为前景。所以可以依据整幅画面中被检测为前景部分所占画面的比例判断是否发生了光照突变。设光照突变阈值为T=60%, 通过光照突变后视频帧数计数器的值nL判断当前帧图像是否处于光照突变后受影响严重阶段内。

若nL≤nc, 则当前图像处于光照突变后受影响严重阶段。此时利用三帧差分法处理当前图像, 得到的前景运动目标作为当前帧的运动目标检测结果, 并且采用较大的学习率对混合高斯背景模型的参数进行更新。

若nL>nc, 则当前图像已经超出了光照突变后受影响严重阶段, 此时计算当前帧图像背景模型中被检测为前景运动目标的区域占整幅画面的比例A。

1) 若A>T, 说明发生了光照突变, 将计数器nL置零, 并进入到上述发生光照突变的处理阶段进行处理。

2) 若A

对利用上述设计的背景更新算法获得的二值图像进行以下处理即可准确的表征运动目标的信息。首先, 求出二值图像R(x,y)行和列的大小m和n, 创建标记矩阵Zm×n, 并且初始化为0。对二值图像R(x,y)进行逐行逐列扫描, 找到第1个R(x,y)=1且Z(x,y)=0的种子点(x1,y1), 此时置Z(x,y)=1, 表示该像素点已经被检测。搜索该像素点的8个邻域点, 即对Z(x,y)=1的8个领域点进行搜索, 逐步标记包含(x1,y1)的整个连通区域, 将该区域中所有点对应的标记置为1, 并记录该连通区域面积、 最小和最大行列号信息。然后, 继续对R进行扫描, 寻找下一个未被检测到的种子点(xi,yi)(i=1,2,3,…,ncon,ncon为连通区域的个数), 重复上述步骤直到整个R被扫描完。

则将i和j连通区域合并。式(15)表示, 若两个连通域的中心距小于各自长边半径之和时, 则认为这两个连通域属于同一个目标并将其合并, 合并后取它们的最大区域。合并后的连通区域坐标如

所示。基于三帧差分的混合高斯模型背景模型运动目标检测算法流程图如图2所示。

图2 基于三帧差分的混合高斯模型背景模型运动目标检测算法流程图Fig.2 Flow chart of moving target detection algorithm for background model of mixed Gauss model based on three frame difference

3 实验结果与分析

为对笔者设计的运动目标检测算法进行分析, 检验算法在处理光照突变和长期静止目标突然运动这两种情况时的效果, 分别采用两段视频对算法进行实验, 并将实验结果与传统混合高斯背景运动目标检测算法的检测结果进行比较与分析。测试视频信息如表1所示。

表1 视频信息

算法实验测试的硬件环境为: Windows7 64位操作系统、 Intel(R) Celeron(R) CPU G1610 @ 2.60 GHz CPU、 10 GByte内存。编程工具及使用的算法及库文件为VS2013和OpenCV2.4.11。算法参数如表2所示。

表2 算法参数

对于有光照突变场景的测试视频LightSwitch.avi, 两种算法实验得到的测试结果如图3所示。从图3中可见, 视频第295帧发生了光照突变。传统混合高斯背景模型将大多数的背景错误地检测为前景, 二值化图片呈现出大片白色区域, 结果图片上运动目标标记框包含了整幅图片。此外, 由于传统算法在发生光照突变后, 背景更新学习率不变, 背景更新速度太慢, 导致目标检测直到第363帧才恢复正常, 误检现象持续时间较长。而改进的运动目标检测算法在发生光照突变后使用三帧差分法进行运行目标检测, 三帧差分法可以良好适应光照突变现象, 所以在光照突变发生后的第二帧运动目标检测就恢复正常。而且, 改进的算法在光照突变后对视频画面的不同区域采用不同的背景更新学习率, 使背景模型的建立与更新更加准确和迅速, 检测到的二值图像更加紧凑, 噪点更少, 提高了运动目标检测的准确性与稳定性。

图3 光照突变对混合高斯背景模型的影响Fig.3 Influence of illumination mutation on mixed Gaussian background model

对于有长期静止目标突然运动场景的测试视频cmera2.avi, 两种算法实验得到的测试结果如图4所示。可见, 由于传统混合高斯背景模型对视频图像的所有区域采用同样的更新学习率, 目标在第99帧突然由静止转为运动时, 在背景模型更新过程中出现了“鬼影”现象。而改进的算法由于在背景模型更新时对图像中不同的区域采用不同的学习率, 在静止目标突然运动时, 背景显露区域得到迅速更新, 背景的建立迅速准确且稳定, 检测得到的二值图像也较为准确, 消除了鬼影现象。

图4 突发运动对混合高斯背景模型的影响Fig.4 Influence of burst motion on mixed Gaussian background model

4 结 语

针对传统混合高斯背景模型的光照突变误检问题以及突然运动物体的“鬼影”现象, 设计了一种基于三帧差分的混合高斯背景模型运动目标检测算法。首先, 针对混合高斯背景模型传统初始化方法的不足, 设计了一种基于统计方法的模型参数初始化方法, 并对混合高斯背景模型进行建模。然后, 在利用运动区域百分比判断时候发生光照突变以及利用三帧差分法划分图像不同区域的基础上, 设计了基于三帧差分的混合高斯背景模型运动目标检测算法, 该算法根据图像是否发生了光照突变, 对图像的不同区域采用不同的学习率, 提高背景模型的更新速度, 对视频监控中的运动目标进行检测。最后, 经过实验分析, 该算法可有效解决传统混合高斯背景模型的光线突变现象和“鬼影”问题。

猜你喜欢
高斯分布高斯背景
“新四化”背景下汽车NVH的发展趋势
利用Box-Cox变换对移动通信中小区级业务流量分布的研究
《论持久战》的写作背景
2种非对称广义高斯分布模型的构造
黑洞背景知识
数学王子高斯
天才数学家——高斯
在航集装箱船舶摇摆姿态的概率模型
一种基于改进混合高斯模型的前景检测
从自卑到自信 瑞恩·高斯林