基于动态图像处理的可疑行为分析

本科毕业设计论文

题目:基于动态图像处理的可疑行为分析

作者姓名 毛利洋

指导教师 王宪保 讲师

专业班级 电子信息工程0902

学 院 信息工程学院

提交日期

第1章 绪 论

1.1. 课题研究背景及意义

随着动态图像处理技术的发展,对人的行为分析技术也日渐完善。作为近年来计算机视觉领域最活跃的研究方向之一,这项技术在未来有着非常高的商业价值和广泛的应用前景,很多研究机构、学校以及公司的科研人才都加入到研究行为分析的行列。法国国家信息与自动化研究院(INRIA)、英国雷丁大学、中科院、北京大学、清华大学、浙江大学等都对人的行为分析做了深入研究。

1.2. 课题主要研究内容

基于动态图像处理的可疑行为分析主要可以分为以下三大块内容:目标提取,运动跟踪和目标行为分析。

首先目标提取这一步的基本内容是利用动态图像处理的知识从图像序列中提取出运动的前景。本课题采用一种自适应的混合高斯模型背景减除法提取目标。

运动跟踪这一步的基本内容是实现对运动目标的跟踪和轨迹生成。这一步非常的关键,后续的行为分析是直接以跟踪的数据为基础的。本课题是利用Meanshift 实现简单背景下的单目标跟踪,然后实现简单背景下的多目标跟踪。同时,引入Kalman 滤波器一定程度上解决遮盖的问题。

目标行为分析这一步的基本内容是对目标的行为进行分析并判断其是否可疑。对于人的行为本课题使用两种方法进行分析。本课题将摔倒视为异常行为,并采用以目标宽高及其宽高比为特征的支持向量机(SVM)实现可疑行为分析。

第2章 运动目标检测

运动目标检测作为整个行为分析过程的第一个步骤,后续的目标运动跟踪以及行为理解与描述都是在其基础上实现的。它的目的是在视频序列中找到每一帧图像中运动目标的区域,并将其与背景分离开来,作为后续跟踪和行为分析的特征区域。其技术难点就在于如何快速高效地找到运动目标区域。本文采用的是利用自适应的混合高斯背景模型的背景差分法。自适应的混合高斯背景建模

及更新

2.1.1自适应的混合高斯背景模型的构成

在混合高斯背景模型中,每个像素点用K个高斯分布混合表示。此时点(x,y)在时刻t为背景的概率公式为式(2-1)。

P(It(x, y ) ) =∑Ki=1ωi,t×η(It(x,y ) , μi,t, Σi,t) (2-1)

其中:K为混合高斯背景模型中高斯分布的个数;ωi,t为t时刻第i个高斯分布的权重,同理,μi,t为均值,Σi,t为协方差矩阵;η为高斯分布的概率密度函数,具体公式如式(2-2)。

η(It(x,y ) , μ,Σ) =(2π)|Σ|×e1−t(x,y ) −μt) T Σ−1(It(x,y ) −μt)

ωi,t

σi12 (2-2) 在t时刻当前帧像素It(x,y ) 和与其对应的按ρi,t=

分布匹配,如式(2-3): 大小排列好的K个高斯

|It(x,y) −μi,t−1|

如果It(x,y ) 与任意一个高斯分布都不匹配,就添加一个高斯分布,均值为It(x,y ) ,方差和权值自设,并用其替换之前最不可能代表背景的高斯分布;若有匹配,则首个匹配的高斯分布按式(2-4)更新参数,剩下的保持均值和方差不变,用式(2-5)更新权值(α和β为学习率)。

ω=(1−α) ωi,t−1+α i,t μi,t=(1−β) μi,t−1+βIt(x,y)

22T () () () σ=1−βσ+β(Ix,y −μ) (Ix,y −μ) i,ti,t−1ti,tti,t {β=αη(It(x,y ) |μi,t, σi,t)

(2-4)

ωi,t=(1−α) ωi,t−1 (2-5)

当高斯分布模型参数更新完后,按照ρi,t=ωi,t

σi从大到小对当前已有的高斯分

布排序,如此一来越能代表背景就排在越前面,最后用式(2-6)级联前B个高斯分布构成背景。

B=argmin(∑bi=1ωK>T1) (2-6)

2.1.2自适应的混合高斯背景模型的初始化

因为在背景中同一点被灰度不变的目标一直遮盖的可能性很小,进而连续取几帧作帧间差分,统计差值在阈值T3内的次数,将次数最多和次多的像素值平均后,作为初始的背景值。帧间差分如式(2-7)所示,It(x,y) 为t时刻点(x,y) 的像素值。

Δt=It(x,y) −It−1(x,y) (2-7)

初始化的步骤:

1) 读入第1、4、7和10帧的视频图像,分别两两差分后,统计差值出现在阈

值T3内的次数count(i)。

2) 遍历count(i)找出最大值m和次大值m′。

3) 将m和m′对应的像素值取平均就可以得到该点初始背景值。

2.1.3自适应的混合高斯背景模型参数的更新

背景模型参数的更新是为了适应背景的变化,维持背景的稳定。对于混合高斯背景模型而言,高斯分布个数K和学习率α和β的更新是关键。

观察式(2-4),可以发现学习率β由学习率α决定。为了简化操作,将像素点的邻域信息考虑进来之后,可以将β=αη(It(x, y ) |μi,t, σi,t) 简化为β=α/ωi,t,这样可以大大减少计算时间。

模型更新步骤如下:

1) 高斯分布初始化与匹配。

2) 对于与任一高斯分布都不匹配的像素点,便新增一个均值为当前像素值,方差为30,权重为0.001的高斯分布。

3) 对于存在高斯分布与其匹配的像素点,采用四邻域的方法在线更新参数。

2.2 运动目标具体提取步骤

以上几节都是在介绍运动目标检测的相关算法,在本节将详细说明一下运动目标提取的具体过程。如图2-1所示,输入一段视频,首先对视频做一些预处理,将RGB 图像转变为单通道的灰度图像;然后读入数帧视频,两两差分后完成混合高斯背景模型的初始化,获得背景图像;接着将当前帧与背景帧做差分,获得粗略的前景图像,并且计算当前帧与背景帧之间相似度;根据相相似度更新模型的学习率,进而更新背景模型。取得的粗糙的前景图像首先通过人工给定的阈值进行阈值分割;然后通过先腐蚀后膨胀的数学形态学方法,消除一部分噪声,改善运动目标的连通性,最终获得较为良好的运动目标二值图像。

图 2-1 运动目标检测的具体步骤(混合高斯背景模型为例)

2.3 实验结果分析

根据如图2-1的流程图,对此方法进行了测试。作为对比,本文采用基于运行平均值的中值滤波背景减除法和三帧帧间差分法也用同样的视频做了实验。实验中自适应混合高斯背景模型的初始参数如下:高斯分布个数K=5,学习率α=0.001,方差σ2=30,权重ω=0.001。实验结果如图2-2和图2-3所示。

(a) 原图 (b)三帧差法

(c) 中值滤波法 (d)本文方法

图2-2 汽车经过检测对比图

(a) 原图 (b)三帧差法

(c) 中值滤波法 (d)本文方法

图2-3 行人经过检测对比图

3 运动目标跟踪

运动跟踪这一步的基本内容是实现对运动目标的跟踪和轨迹生成。这一步非常的关键,后续的行为分析是直接以跟踪的数据为基础的。本课题采用Meanshift 实现多目标跟踪。同时,引入Kalman 滤波器一定程度上解决遮盖的问题。

3.1 Meanshift 算法

Meanshift 算法,又可以叫做均值漂移算法,是一种基于概率密度梯度函数的估算方法,在聚类、图像分割和跟踪等方面都有应用,本文主要介绍其在跟踪当中的实现。Meanshift 的计算是一个迭代的过程, 即先算出当前点的偏移均值向量,再将该点按此偏移均值向量移动,得到新的起始点,继续计算偏移均值向量并移动直至满足条件收敛。对应到跟踪的情况,就是以目标的某个特征为基准(以颜色直方图为例)计算偏移向量,迭代地将目标的重心移动到下一个位置。具体步骤如下:

1) 给定目标的初始位置和尺寸, 计算目标在图像中的直方图;

2) 输入新图像, 迭代直到收敛;

迭代过程:

Step 1:计算图像上对应区域的新直方图;

Step 2:新直方图与目标直方图比较, 计算权重;

Step 3:根据权重, 计算图像上对应区域的形心/质心;

Step 4:根据形心, 修正目标位置;返回Step 1继续。

3.2 Meanshift 与Kalman 滤波器结合的跟踪算法

在使用Meanshift 方法跟踪时,主要依靠的是直方图来确定目标的,这在背景变化不大的场合,跟踪单一目标的效果很好。但是如果在背景突变或是在有遮挡的情况下,Meanshift 所得到的直方图是不可信的,在这种情况下继续使用此直方图进行跟踪的话,最直接的情况就是目标丢失或是目标错跟。这时候,为了提高算法的鲁棒性,本文引入了Kalman 滤波器作为Meanshift 的补充,即在发生遮盖时放弃使用Meanshift 转而使用对遮挡有很好鲁棒性的Kalman 滤波器进行目标的估计和跟踪。具体的流程图见图3-1。

设定一个判别条件Gate,当Gate满足某个条件时,认为Meanshift 还是有效正确的,此时Kalman 滤波器的初始测量值为Meanshift 的跟踪结果,Kalman 滤波器的作用是辅助滤波,使得Meanshift 计算更平滑,最终跟踪结果还是由Meanshift 给出。当Gate不满足某个条件时,认为Meanshift 的结果不可信,此时舍弃Meanshift ,将Kalman 滤波器作为预估器使用,即无视Meanshift 跟踪的结果,将当前帧的预测值X(k|k−1) 作为kalman 滤波器的初始测量值,如此一来,运动目标被看作保持当前运动状态继续运动。

图3-1 Kalman 与Meanshift 混合算法

在此,Meanshift 预测出的目标区域和跟踪目标的对应区域的对比相似度作为Gate的判别标准。Gate反映的是当前目标前景与背景分布的改变情况。当Gate值在某个范围T内,认为当前目标前景与背景分布的改变不大,判定Meanshift 有效,此时Meanshift 预测的结果经过kalman 滤波器滤波后重新进入Meanshift 中。当Gate在该范围,认为当前目标前景与背景分布的改变很大,Meanshift 失效,此时启用Kalman 滤波器作为预测器,不再使用Meanshift 的结果。经过实验,meanshift 有效的Gate的范围T为[0.5,1.5]时跟踪效果不错,范围过大导致Meanshift 失真,范围过小则无法发挥Meanshift 图像匹配的功能。

3.3 实验结果分析

选取了中科院的CIASA 行为数据库中的一段侧面视角的两人相遇的视频对此算法进行测试,如图3-2所示。当两人未相遇时,按各自的Meanshift 跟踪,

当两人相遇时转化为kalman 跟踪,在分开后又继续用meanshift 跟踪。从图中不难看出,当两人相遇时,两人的跟踪框依然是各自跟踪目标的,据此可以说明,Kalman 与Meanshift 混合算法在一定程度上可以有效的处理遮挡的情况。

图3-2 Kalman 与Meanshift 混合算法测试

4 运动目标的可疑行为分析

本文采用的是中科院的CASIA 行为分析数据库,定义跌倒(fall)为可疑行为,其他均视作正常行为。对于常见的6种行为:行走(walk)、跑(run)、俯身前进(bend)、跳(jump)、下蹲(crouch)和跌倒(fall),本文通过分析这些行为的侧面运动信息,利用目标最小外接矩形的宽、高及其比值作为识别特征,对这些特征用支持向量机训练分类器,最后用支持向量机分类器进行可疑行为的分析。

4.1 运动目标特征的选取

本文选择的是形状特征,因为本文研究所用的视频均是以单一视角在简单背景下拍摄的,利用本文的自适应的混合高斯背景建模的方法提取的运动人体目标的二值图像可以很好的包含目标的运动信息。对比每种行为的关键帧可以发现,走、跑、跳跃和俯身前进的关键帧是周期变化的,而下蹲和跌倒不是。这两种行为在前几帧很相似但在后两帧宽高比例不同。将各个行为的关键帧中的目标宽高及其比值放在“宽度-高度-宽高比”构成的坐标空间中,仿真如图4-1所示。通过图4-1可以看出,各个行为的宽、高和宽高比是非线性分布的,所以对使用宽、高和宽高比作为混合特征的行为分析中,很好的支持非线性分类的支持向量机理论是很好的选择。

图 4-1 运动人体特征分布模型

4.2 基于支持向量机的可疑行为分析

本文用作训练的特征是运动目标的最小外接矩形的宽高及其比值。利用SVM 训练分类器并进行可疑行为分析。流程图如下:

图4-2 基于SVM 的可疑行为分析流程

本文的实验是基于OPENCV2.20及Visual Stadio2010环境下进行的。首先是基于自适应的混合高斯背景减除法获得目标的二值图像。从二值图像中读取目标的长宽及其比例关系,并按时间顺序将这三个数据作为特征记录在xml 文件中。然后通过用OPENCV 自带的cvSVM 读取xml 中的特征记录训练SVM 分类器,获得一系列行为的SVM 分类器。最后利用训练得到的SVM 分类器对其他一些待测视频进行了可疑行为分析,对于其他行为只在面板上显示正常,而出现跌倒动作时会显示异常。

4.3 实验结果分析

本文针对跌倒这一行为用支持向量机训练了分类器,并用其对跌倒、跑步,跳跃,走路、蹲下和俯身前进的视频进行检测。当出现跌倒时,显示异常;当其他行为时,显示正常。结果见图4-4。

(a) 跌倒识别为异常 (b)走路识别为正常

(c) 跑步识别为正常 (d)跳跃识别为正常

(e) 俯身前进识别为正常 (f)蹲下识别为正常

图4-4 各类行为分析结果

5 基于团块跟踪系统(BlobTrack)框架的

可疑行为分析系统

团块跟踪系统(BlobTrack)构架是OPENCV 视觉库自带的一种目标跟踪框架。其基本结构如图5-1所示, 包含前景处理模块(FGDetector)、团块检测模块(BlobDetector)、团块跟踪模块(BlobTracker)、轨迹生成模块(Trajectory Generation Module) 、轨迹后处理模块(Trajectory Postprocessing Module )、团块分析模块(BlobTrackAnalysis)和流程处理模块(AutoBlobTracker)七个模块。每个模块都提供了纯虚函数以便于开发者开发自己的跟踪系统。

图5-1 团块跟踪(BlobTrack)的基本结构

考虑到可疑行为分析系统各项技术的实际需要,本文主要做了以下改动:

1) 重构前景处理模块,将本文提出的自适应的混合高斯背景模型背景差分方法

添加到系统中去。

2) 重构了团块检测模块,按如下方法检测新的团块。

Step 1 对前景图像取轮廓,将所有轮廓存入轮廓序列cnt_list中。

Step 2 对每一个轮廓取其最小外接矩形,将外接矩形相交或是中心距离小

于特定值的轮廓分成一组。

Step 3 分别对每一组轮廓取最小的外接矩形,此矩形区域即为团块区域。 Step 4 去除过大或过小的矩形,并去除与团块列表中已有团块重叠的矩形,

此时,剩下的矩形区域即为新的团块,将其加入到团块列表中。

3) 重构团块跟踪模块,将kalman 滤波器与meanshift 结合一并写入团块跟踪模

块中,这样可以一定程度上解决遮盖的问题。

4) 在轨迹生成模块中加入了特征提取功能,即在生成并储存轨迹时,计算团块

的长、宽及他们的比值,储存到另一个xml 文件中,用来训练SVM 分类器。

5) 重构了团块分析模块,将SVM 可疑行为识别代码整合分析模块中。

利用上述改动后的BlobTrack 代码结合MFC 在Visual Stadio 2010上生成演示程序,效果如图5-3。

图5-3 实际演示效果图

6 结论

基于动态图像处理的可疑行为分析在未来社会有着很好的应用前景,是目前计算机视觉领域一个研究热点。本文从目标检测、目标跟踪和目标可疑行为分析三方面对基于动态图像处理的可疑行为分析进行了讨论。在目标检测方面,本文提出了基于邻域像素的自适应混合高斯背景模型,并结合背景减除法成功应用于实际程序中前景检测模块中。在目标跟踪方面,本文采用了Meanshift 跟踪方法,并提出了Kalman 与Meanshift 混合算法,通过前后两帧目标前景与背景分布的比较,判别是否发生遮盖,并切换跟踪算法,在实际测试用此算法表现出良好的鲁棒性。在目标可疑行为分析中,本文选择了目标区域的长宽及其比值作为特征利用支持向量机训练分类器,并实现对跌倒这一异常行为的识别。最后,本文以团块跟踪系统为框架设计了基于BlobTrack 的可疑行为分析系统,并用各种视频进行了测试,效果良好。

当然,在研究过程中,还是发现了本文所提方法的一些不足。主要有两点,首先,本文所提的自适应的混合高斯背景模型在处理某些目标长时间停在同一地点不动的情况,会将目标也慢慢更新进背景中去,造成目标丢失,同时,计算时间还是太长,离实时处理的要求还有些差距。其次是视角问题,本文所训练的分类器在单视角下效果良好,但是在另一个视角下,由于视角不同,目标的长宽比例有变,分类器的效果会大大降低。对于第一个问题,个人认为原因是更新率并没有非常好的适应背景的变化,所以下一步会继续寻找更好的更新率调整方法以解决这个问题。对于第二个问题,个人认为是特征选择的问题,可以通过选择更好的不随视角变化而变化的特征来训练分类器,或是将不同视角变换成相同视角在进行识别两种方法解决问题,这两方面将是接下去研究的重点。

总之,随着科技的发展,基于动态图像处理的可疑行为分析也在慢慢地走向成熟,为了尽早将这一技术应用与实际生活中,还需要更多研究人员的努力付出。

本科毕业设计论文

题目:基于动态图像处理的可疑行为分析

作者姓名 毛利洋

指导教师 王宪保 讲师

专业班级 电子信息工程0902

学 院 信息工程学院

提交日期

第1章 绪 论

1.1. 课题研究背景及意义

随着动态图像处理技术的发展,对人的行为分析技术也日渐完善。作为近年来计算机视觉领域最活跃的研究方向之一,这项技术在未来有着非常高的商业价值和广泛的应用前景,很多研究机构、学校以及公司的科研人才都加入到研究行为分析的行列。法国国家信息与自动化研究院(INRIA)、英国雷丁大学、中科院、北京大学、清华大学、浙江大学等都对人的行为分析做了深入研究。

1.2. 课题主要研究内容

基于动态图像处理的可疑行为分析主要可以分为以下三大块内容:目标提取,运动跟踪和目标行为分析。

首先目标提取这一步的基本内容是利用动态图像处理的知识从图像序列中提取出运动的前景。本课题采用一种自适应的混合高斯模型背景减除法提取目标。

运动跟踪这一步的基本内容是实现对运动目标的跟踪和轨迹生成。这一步非常的关键,后续的行为分析是直接以跟踪的数据为基础的。本课题是利用Meanshift 实现简单背景下的单目标跟踪,然后实现简单背景下的多目标跟踪。同时,引入Kalman 滤波器一定程度上解决遮盖的问题。

目标行为分析这一步的基本内容是对目标的行为进行分析并判断其是否可疑。对于人的行为本课题使用两种方法进行分析。本课题将摔倒视为异常行为,并采用以目标宽高及其宽高比为特征的支持向量机(SVM)实现可疑行为分析。

第2章 运动目标检测

运动目标检测作为整个行为分析过程的第一个步骤,后续的目标运动跟踪以及行为理解与描述都是在其基础上实现的。它的目的是在视频序列中找到每一帧图像中运动目标的区域,并将其与背景分离开来,作为后续跟踪和行为分析的特征区域。其技术难点就在于如何快速高效地找到运动目标区域。本文采用的是利用自适应的混合高斯背景模型的背景差分法。自适应的混合高斯背景建模

及更新

2.1.1自适应的混合高斯背景模型的构成

在混合高斯背景模型中,每个像素点用K个高斯分布混合表示。此时点(x,y)在时刻t为背景的概率公式为式(2-1)。

P(It(x, y ) ) =∑Ki=1ωi,t×η(It(x,y ) , μi,t, Σi,t) (2-1)

其中:K为混合高斯背景模型中高斯分布的个数;ωi,t为t时刻第i个高斯分布的权重,同理,μi,t为均值,Σi,t为协方差矩阵;η为高斯分布的概率密度函数,具体公式如式(2-2)。

η(It(x,y ) , μ,Σ) =(2π)|Σ|×e1−t(x,y ) −μt) T Σ−1(It(x,y ) −μt)

ωi,t

σi12 (2-2) 在t时刻当前帧像素It(x,y ) 和与其对应的按ρi,t=

分布匹配,如式(2-3): 大小排列好的K个高斯

|It(x,y) −μi,t−1|

如果It(x,y ) 与任意一个高斯分布都不匹配,就添加一个高斯分布,均值为It(x,y ) ,方差和权值自设,并用其替换之前最不可能代表背景的高斯分布;若有匹配,则首个匹配的高斯分布按式(2-4)更新参数,剩下的保持均值和方差不变,用式(2-5)更新权值(α和β为学习率)。

ω=(1−α) ωi,t−1+α i,t μi,t=(1−β) μi,t−1+βIt(x,y)

22T () () () σ=1−βσ+β(Ix,y −μ) (Ix,y −μ) i,ti,t−1ti,tti,t {β=αη(It(x,y ) |μi,t, σi,t)

(2-4)

ωi,t=(1−α) ωi,t−1 (2-5)

当高斯分布模型参数更新完后,按照ρi,t=ωi,t

σi从大到小对当前已有的高斯分

布排序,如此一来越能代表背景就排在越前面,最后用式(2-6)级联前B个高斯分布构成背景。

B=argmin(∑bi=1ωK>T1) (2-6)

2.1.2自适应的混合高斯背景模型的初始化

因为在背景中同一点被灰度不变的目标一直遮盖的可能性很小,进而连续取几帧作帧间差分,统计差值在阈值T3内的次数,将次数最多和次多的像素值平均后,作为初始的背景值。帧间差分如式(2-7)所示,It(x,y) 为t时刻点(x,y) 的像素值。

Δt=It(x,y) −It−1(x,y) (2-7)

初始化的步骤:

1) 读入第1、4、7和10帧的视频图像,分别两两差分后,统计差值出现在阈

值T3内的次数count(i)。

2) 遍历count(i)找出最大值m和次大值m′。

3) 将m和m′对应的像素值取平均就可以得到该点初始背景值。

2.1.3自适应的混合高斯背景模型参数的更新

背景模型参数的更新是为了适应背景的变化,维持背景的稳定。对于混合高斯背景模型而言,高斯分布个数K和学习率α和β的更新是关键。

观察式(2-4),可以发现学习率β由学习率α决定。为了简化操作,将像素点的邻域信息考虑进来之后,可以将β=αη(It(x, y ) |μi,t, σi,t) 简化为β=α/ωi,t,这样可以大大减少计算时间。

模型更新步骤如下:

1) 高斯分布初始化与匹配。

2) 对于与任一高斯分布都不匹配的像素点,便新增一个均值为当前像素值,方差为30,权重为0.001的高斯分布。

3) 对于存在高斯分布与其匹配的像素点,采用四邻域的方法在线更新参数。

2.2 运动目标具体提取步骤

以上几节都是在介绍运动目标检测的相关算法,在本节将详细说明一下运动目标提取的具体过程。如图2-1所示,输入一段视频,首先对视频做一些预处理,将RGB 图像转变为单通道的灰度图像;然后读入数帧视频,两两差分后完成混合高斯背景模型的初始化,获得背景图像;接着将当前帧与背景帧做差分,获得粗略的前景图像,并且计算当前帧与背景帧之间相似度;根据相相似度更新模型的学习率,进而更新背景模型。取得的粗糙的前景图像首先通过人工给定的阈值进行阈值分割;然后通过先腐蚀后膨胀的数学形态学方法,消除一部分噪声,改善运动目标的连通性,最终获得较为良好的运动目标二值图像。

图 2-1 运动目标检测的具体步骤(混合高斯背景模型为例)

2.3 实验结果分析

根据如图2-1的流程图,对此方法进行了测试。作为对比,本文采用基于运行平均值的中值滤波背景减除法和三帧帧间差分法也用同样的视频做了实验。实验中自适应混合高斯背景模型的初始参数如下:高斯分布个数K=5,学习率α=0.001,方差σ2=30,权重ω=0.001。实验结果如图2-2和图2-3所示。

(a) 原图 (b)三帧差法

(c) 中值滤波法 (d)本文方法

图2-2 汽车经过检测对比图

(a) 原图 (b)三帧差法

(c) 中值滤波法 (d)本文方法

图2-3 行人经过检测对比图

3 运动目标跟踪

运动跟踪这一步的基本内容是实现对运动目标的跟踪和轨迹生成。这一步非常的关键,后续的行为分析是直接以跟踪的数据为基础的。本课题采用Meanshift 实现多目标跟踪。同时,引入Kalman 滤波器一定程度上解决遮盖的问题。

3.1 Meanshift 算法

Meanshift 算法,又可以叫做均值漂移算法,是一种基于概率密度梯度函数的估算方法,在聚类、图像分割和跟踪等方面都有应用,本文主要介绍其在跟踪当中的实现。Meanshift 的计算是一个迭代的过程, 即先算出当前点的偏移均值向量,再将该点按此偏移均值向量移动,得到新的起始点,继续计算偏移均值向量并移动直至满足条件收敛。对应到跟踪的情况,就是以目标的某个特征为基准(以颜色直方图为例)计算偏移向量,迭代地将目标的重心移动到下一个位置。具体步骤如下:

1) 给定目标的初始位置和尺寸, 计算目标在图像中的直方图;

2) 输入新图像, 迭代直到收敛;

迭代过程:

Step 1:计算图像上对应区域的新直方图;

Step 2:新直方图与目标直方图比较, 计算权重;

Step 3:根据权重, 计算图像上对应区域的形心/质心;

Step 4:根据形心, 修正目标位置;返回Step 1继续。

3.2 Meanshift 与Kalman 滤波器结合的跟踪算法

在使用Meanshift 方法跟踪时,主要依靠的是直方图来确定目标的,这在背景变化不大的场合,跟踪单一目标的效果很好。但是如果在背景突变或是在有遮挡的情况下,Meanshift 所得到的直方图是不可信的,在这种情况下继续使用此直方图进行跟踪的话,最直接的情况就是目标丢失或是目标错跟。这时候,为了提高算法的鲁棒性,本文引入了Kalman 滤波器作为Meanshift 的补充,即在发生遮盖时放弃使用Meanshift 转而使用对遮挡有很好鲁棒性的Kalman 滤波器进行目标的估计和跟踪。具体的流程图见图3-1。

设定一个判别条件Gate,当Gate满足某个条件时,认为Meanshift 还是有效正确的,此时Kalman 滤波器的初始测量值为Meanshift 的跟踪结果,Kalman 滤波器的作用是辅助滤波,使得Meanshift 计算更平滑,最终跟踪结果还是由Meanshift 给出。当Gate不满足某个条件时,认为Meanshift 的结果不可信,此时舍弃Meanshift ,将Kalman 滤波器作为预估器使用,即无视Meanshift 跟踪的结果,将当前帧的预测值X(k|k−1) 作为kalman 滤波器的初始测量值,如此一来,运动目标被看作保持当前运动状态继续运动。

图3-1 Kalman 与Meanshift 混合算法

在此,Meanshift 预测出的目标区域和跟踪目标的对应区域的对比相似度作为Gate的判别标准。Gate反映的是当前目标前景与背景分布的改变情况。当Gate值在某个范围T内,认为当前目标前景与背景分布的改变不大,判定Meanshift 有效,此时Meanshift 预测的结果经过kalman 滤波器滤波后重新进入Meanshift 中。当Gate在该范围,认为当前目标前景与背景分布的改变很大,Meanshift 失效,此时启用Kalman 滤波器作为预测器,不再使用Meanshift 的结果。经过实验,meanshift 有效的Gate的范围T为[0.5,1.5]时跟踪效果不错,范围过大导致Meanshift 失真,范围过小则无法发挥Meanshift 图像匹配的功能。

3.3 实验结果分析

选取了中科院的CIASA 行为数据库中的一段侧面视角的两人相遇的视频对此算法进行测试,如图3-2所示。当两人未相遇时,按各自的Meanshift 跟踪,

当两人相遇时转化为kalman 跟踪,在分开后又继续用meanshift 跟踪。从图中不难看出,当两人相遇时,两人的跟踪框依然是各自跟踪目标的,据此可以说明,Kalman 与Meanshift 混合算法在一定程度上可以有效的处理遮挡的情况。

图3-2 Kalman 与Meanshift 混合算法测试

4 运动目标的可疑行为分析

本文采用的是中科院的CASIA 行为分析数据库,定义跌倒(fall)为可疑行为,其他均视作正常行为。对于常见的6种行为:行走(walk)、跑(run)、俯身前进(bend)、跳(jump)、下蹲(crouch)和跌倒(fall),本文通过分析这些行为的侧面运动信息,利用目标最小外接矩形的宽、高及其比值作为识别特征,对这些特征用支持向量机训练分类器,最后用支持向量机分类器进行可疑行为的分析。

4.1 运动目标特征的选取

本文选择的是形状特征,因为本文研究所用的视频均是以单一视角在简单背景下拍摄的,利用本文的自适应的混合高斯背景建模的方法提取的运动人体目标的二值图像可以很好的包含目标的运动信息。对比每种行为的关键帧可以发现,走、跑、跳跃和俯身前进的关键帧是周期变化的,而下蹲和跌倒不是。这两种行为在前几帧很相似但在后两帧宽高比例不同。将各个行为的关键帧中的目标宽高及其比值放在“宽度-高度-宽高比”构成的坐标空间中,仿真如图4-1所示。通过图4-1可以看出,各个行为的宽、高和宽高比是非线性分布的,所以对使用宽、高和宽高比作为混合特征的行为分析中,很好的支持非线性分类的支持向量机理论是很好的选择。

图 4-1 运动人体特征分布模型

4.2 基于支持向量机的可疑行为分析

本文用作训练的特征是运动目标的最小外接矩形的宽高及其比值。利用SVM 训练分类器并进行可疑行为分析。流程图如下:

图4-2 基于SVM 的可疑行为分析流程

本文的实验是基于OPENCV2.20及Visual Stadio2010环境下进行的。首先是基于自适应的混合高斯背景减除法获得目标的二值图像。从二值图像中读取目标的长宽及其比例关系,并按时间顺序将这三个数据作为特征记录在xml 文件中。然后通过用OPENCV 自带的cvSVM 读取xml 中的特征记录训练SVM 分类器,获得一系列行为的SVM 分类器。最后利用训练得到的SVM 分类器对其他一些待测视频进行了可疑行为分析,对于其他行为只在面板上显示正常,而出现跌倒动作时会显示异常。

4.3 实验结果分析

本文针对跌倒这一行为用支持向量机训练了分类器,并用其对跌倒、跑步,跳跃,走路、蹲下和俯身前进的视频进行检测。当出现跌倒时,显示异常;当其他行为时,显示正常。结果见图4-4。

(a) 跌倒识别为异常 (b)走路识别为正常

(c) 跑步识别为正常 (d)跳跃识别为正常

(e) 俯身前进识别为正常 (f)蹲下识别为正常

图4-4 各类行为分析结果

5 基于团块跟踪系统(BlobTrack)框架的

可疑行为分析系统

团块跟踪系统(BlobTrack)构架是OPENCV 视觉库自带的一种目标跟踪框架。其基本结构如图5-1所示, 包含前景处理模块(FGDetector)、团块检测模块(BlobDetector)、团块跟踪模块(BlobTracker)、轨迹生成模块(Trajectory Generation Module) 、轨迹后处理模块(Trajectory Postprocessing Module )、团块分析模块(BlobTrackAnalysis)和流程处理模块(AutoBlobTracker)七个模块。每个模块都提供了纯虚函数以便于开发者开发自己的跟踪系统。

图5-1 团块跟踪(BlobTrack)的基本结构

考虑到可疑行为分析系统各项技术的实际需要,本文主要做了以下改动:

1) 重构前景处理模块,将本文提出的自适应的混合高斯背景模型背景差分方法

添加到系统中去。

2) 重构了团块检测模块,按如下方法检测新的团块。

Step 1 对前景图像取轮廓,将所有轮廓存入轮廓序列cnt_list中。

Step 2 对每一个轮廓取其最小外接矩形,将外接矩形相交或是中心距离小

于特定值的轮廓分成一组。

Step 3 分别对每一组轮廓取最小的外接矩形,此矩形区域即为团块区域。 Step 4 去除过大或过小的矩形,并去除与团块列表中已有团块重叠的矩形,

此时,剩下的矩形区域即为新的团块,将其加入到团块列表中。

3) 重构团块跟踪模块,将kalman 滤波器与meanshift 结合一并写入团块跟踪模

块中,这样可以一定程度上解决遮盖的问题。

4) 在轨迹生成模块中加入了特征提取功能,即在生成并储存轨迹时,计算团块

的长、宽及他们的比值,储存到另一个xml 文件中,用来训练SVM 分类器。

5) 重构了团块分析模块,将SVM 可疑行为识别代码整合分析模块中。

利用上述改动后的BlobTrack 代码结合MFC 在Visual Stadio 2010上生成演示程序,效果如图5-3。

图5-3 实际演示效果图

6 结论

基于动态图像处理的可疑行为分析在未来社会有着很好的应用前景,是目前计算机视觉领域一个研究热点。本文从目标检测、目标跟踪和目标可疑行为分析三方面对基于动态图像处理的可疑行为分析进行了讨论。在目标检测方面,本文提出了基于邻域像素的自适应混合高斯背景模型,并结合背景减除法成功应用于实际程序中前景检测模块中。在目标跟踪方面,本文采用了Meanshift 跟踪方法,并提出了Kalman 与Meanshift 混合算法,通过前后两帧目标前景与背景分布的比较,判别是否发生遮盖,并切换跟踪算法,在实际测试用此算法表现出良好的鲁棒性。在目标可疑行为分析中,本文选择了目标区域的长宽及其比值作为特征利用支持向量机训练分类器,并实现对跌倒这一异常行为的识别。最后,本文以团块跟踪系统为框架设计了基于BlobTrack 的可疑行为分析系统,并用各种视频进行了测试,效果良好。

当然,在研究过程中,还是发现了本文所提方法的一些不足。主要有两点,首先,本文所提的自适应的混合高斯背景模型在处理某些目标长时间停在同一地点不动的情况,会将目标也慢慢更新进背景中去,造成目标丢失,同时,计算时间还是太长,离实时处理的要求还有些差距。其次是视角问题,本文所训练的分类器在单视角下效果良好,但是在另一个视角下,由于视角不同,目标的长宽比例有变,分类器的效果会大大降低。对于第一个问题,个人认为原因是更新率并没有非常好的适应背景的变化,所以下一步会继续寻找更好的更新率调整方法以解决这个问题。对于第二个问题,个人认为是特征选择的问题,可以通过选择更好的不随视角变化而变化的特征来训练分类器,或是将不同视角变换成相同视角在进行识别两种方法解决问题,这两方面将是接下去研究的重点。

总之,随着科技的发展,基于动态图像处理的可疑行为分析也在慢慢地走向成熟,为了尽早将这一技术应用与实际生活中,还需要更多研究人员的努力付出。


相关内容

  • 云计算在金融行业中的应用研究_陈广辉
  • 云计算在金融行业中的应用研究 陈广辉 (中国金融电子化公司测评中心, 北京 100076) 文章在分析云计算安全架构的基础上,对其在金融行业可能的应用进行了探讨,同时也分摘 要: 析了这些应用的作用和风险,为云计算在金融行业的应用提供了一些探索性的参考. 云计算:金融行业:云存储:病毒防护关键词: ...

  • 金融机构可疑交易监测分析的策略与方法研究
  • 摘 要:履行可疑交易报告制度是金融机构反洗钱工作的核心义务之一.可疑交易监测分析就是反洗钱义务主体在与客户开展金融交易过程中,按照反洗钱法律法规要求,识别和发现存有洗钱及相关犯罪嫌疑的异常交易的过程.本文从提高可疑交易报告质量的角度提出了保证与兼顾针对性.完备性和准确性是可疑资金监测及可疑交易线索分 ...

  • 基于API依赖关系的代码相似度分析
  • 计 算 机 工 程 第卷 第1期 39 V ol.39 No.1 Computer Engineering 文章编号:1000-3428(2013)01-0080-05・软件技术与数据库・ 2013年1月 January 2013 文献标识码:A 中图分类号:TP311 基于API依赖关系的代码相似 ...

  • 防火墙特性与优点说明
  • 购买指引: 防火墙特性与优点说明 1. 天网防火墙工作组型: 天网防火墙工作组级防火墙,是适合中小型企业上网用的防火墙,适用于用户数量规模不大的网络环境(大约有十几到几十台内部工作站).它包括了基本的防火墙系统,具体功能特性如下: ● 自行开发的优良的防火墙内核 在系统设计时参考了NetBSD.Op ...

  • 公安车辆大数据分析
  • 公安车辆大数据分析 车辆大数据分析 车辆大数据除了要处理结构化的过车数据,还要处理非结构化的卡口图片,对卡口图片采用非基于机器学习的图片识别分析软件进行结构化,然后按照结构化数据处理的方法进行处理. 车辆大数据分析概述 车辆大数据分析通过对汇聚到大数据平台的全省卡口图片信息进行深度的数据分析,基于深 ...

  • 网络安全检测与监控技术分析研究
  • 网络安全检测与监控技术分析研究 朱斌,陈浩乾 (西安科技大学,西安市,邮编710054) Email: 摘 要:现代网络安全是网络专家致力于分析和研究的热点课题.本文就此问题阐述了因特网的网络安全检测技术即实时监控技术和安全扫描技术的概念.工作原理以及防火墙系统的优势和不足:介绍了能够积极主动测试系 ...

  • 妇幼保健系统
  • 北京龙腾信扬信息技术有限公司 基于健康档案与区域卫生信息平台的妇幼保健综合管理系统介绍 基于健康档案与区域医疗卫生信息平台的龙腾信扬妇幼保健综合管理系统 集业务.管理.服务.科研 四位一体,涵盖了基本公共卫生妇幼部分和妇幼卫生重大专项.系统建立后,将打破业务界限,建立以孕产妇.婴幼儿健康档案为中心的 ...

  • [网络安全与病毒防范]教案
  • <网络安全与病毒防范> 教学概述 本教程围绕目前遇到的两大安全威胁--黑客与病毒展开论述,详细地描述了黑客攻击原理和计算机病毒原理.深入阐述了应对计算机安全威胁的防御措施,对常见的信息安全技术与产品做了概括性介绍,同时对如何有效构建完整的安全防护体系提供了参考建议.本教程还对计算机病毒的 ...

  • 关于僵尸网络
  • 僵尸网络是怎样形成的? 僵尸网络并不是一个特定的安全攻击事件,而是攻击者手中的一个攻击平台 .利用这个攻击平台,攻击者可以实施各种各样的破坏行为,比如DDoS 攻击.传播垃圾邮件等,并且使这些破坏行为比传统的实施方法危害更大.更难防范.比如,传统的蠕虫不能"回收成果",也即,蠕虫 ...