基于视频图像处理的实验室异常行为检测
2018-12-05杜文凯
李 明, 杨 凯, 王 军, 杜文凯
(中国矿业大学 信息与控制工程学院, 江苏 徐州 221000)
视频监控系统广泛应用于公共场所的监控、安防等领域,现代实验室也普遍采用视频监控系统为实验室的教学、管理提供安全保障;但是传统的视频监控系统在工作的时候仅具有视频录制的功能,对异常行为的检测需要依赖事后回放,或者人工不间断地监视、监控画面,这两种方法都存在效率低下、浪费人力的问题。因此异常行为检测已经成为视频图像处理与模式识别领域的研究重点[1-2]。人的异常行为复杂多样,发生的时间与地点几乎没有规律可言。因此异常行为检测的难度很大。早期的异常检测主要对运动目标的运动序列进行分析,该方法需要对每一种正常行为建模,当正常行为的数量很大时,检测效果就会有所下降。有一些算法通过对目标区域的轮廓与几何图形拟合的方式对异常行为进行分析,该方法可以判断出多种异常行为,但是对于多种异常行为可以用同一种几何图形拟合的情况做不到精确区分[3-4]。
本文提出了一种基于梯度方向直方图(HOG)特征的异常行为检测方法,首先通过帧间平滑滤波的方法建立背景图片,将背景图像与任意时刻采集到的图像进行差分运算,并采用多种图像处理方法获取目标区域轮廓,然后从区域轮廓中提取出 HOG特征,送到 SVM(支持向量机)分类器,区分出不同的异常行为。
1 异常检测
从视频图像中发现异常行为称为异常检测,目前常用的异常检测方法有背景差分法、帧间差法、光流法等[5]。本文采用背景差分法检测异常行为。首先建立背景模型,然后将实时采集到的视频图像与背景模型作对比,判断图像中是否存在异常行为。
1.1 背景模型的建立
对于背景差分法来说,背景模型的建立对于异常目标的检测是至关重要的一个环节,直接决定了检测质量[6]。适时更新背景模型,可以提高异常检测系统面对环境变化的自适用能力。 背景模型的建立过程如图1所示。
图1 背景模型建立过程
为了提高背景模型的质量,本文尝试了一种新的建模方法。连续采集几帧图像,经过预处理后,对这几帧图像的同一位置的像素进行平滑滤波,该方法称为帧间平滑滤波法[7]。连续5帧的帧间滤波算法为
(x,y),f2(x,y),f3(x,y),
f4(x,y),f5(x,y))
(1)
其中,G为具体的滤波算法,f1(x,y)、f2(x,y)、f3(x,y)、f4(x,y)、f5(x,y)为每一帧图像同一像素点的值。利用该算法建立的背景模型如图2所示。
1.2 目标检测
在完成了背景建模之后,就可以对异常目标进行检测。具体步骤:对图像进行差分、对差分图像进行二值化、对二值化后的图像进行形态学处理[8-9],对目标轮廓进行提取和判定。检测过程如图3所示。
图2 最终建立的背景模型
图3 目标检测过程
将任意时刻的视频图像与背景图像做差分运算,得到一张新的图像;然后选定合适的阈值对其进行二值化,得到初步的目标轮廓;再通过开运算进行形态学处理,通过链码表[10-11]提取出目标的轮廓;然后对提取的轮廓进行遍历排序,排除细小轮廓引起的噪声。异常目标检测的最终效果如图4所示。
图4 异常目标轮廓检测结果
从图4可以看出,使用本文的方法进行异常检测能够检测出单个或多个目标,并能够获取比较完整的轮廓。
2 行为分析
检测出视频中存在异常行为之后,还需要对这些行为做进一步分析以确定具体是哪一种异常行为。行为分析的目的是判断是由人引起的异常,还是环境变化引起的异常,并对由人引起的异常做进一步分析,辨别出具体的异常行为。我们使用HOG特征和SVM分类器来[12]进行目标行为分类。
2.1 HOG特征的提取
HOG在图像特征描述方面有着很好的表现。首先进行图像归一化,对输入的图像进行裁剪、只保留感兴趣区域(ROI),然后计算梯度。本文选用一阶对称模板[-1,0,1]和[-1,0,1]T分别计算水平方向和垂直方向的梯度:
Gx(x,y)=I(x+1,y)-I(x-1,y)
(2)
Gy(x,y)=I(x,y+1)-I(x,y-1)
(3)
(4)
(5)
式中,I表示像素值,Gx(x,y)和Gy(x,y)分别为水平方向和垂直方向的梯度,G(x,y)和α(x,y)分别为梯度幅值和梯度方向。
为了提高计算效率并保持计算精度,选择像素的数目为9。将每个梯度方向的梯度幅值进行统计得到梯度方向直方图。HOG特征计算提取过程如图5所示。
图5 HOG特征提取过程
2.2 SVM分类
使用SVM(支持向量机)分类器进行分类,决策函数的选择非常关键,所选的决策函数应满足将样本完好地分开。SVM中的核函数属于一种非线性分类方法,能够完好地区分2个不同的类[13]。其做法是将原来的空间变为一个维度更高的空间,具体的变换函数为
(6)
将之前的对偶表达式加以改造,然后映射到一个更高维空间。改造方法有很多种,改造完成后的目标函数为
(7)
其分类函数为
·xi)+b
(8)
其中,K(xi·xj)被称为核函数,常见的核函数有线性核函数、多项式核函数、高斯(RBF)核函数;b为常数。
考虑到本文的数据特点,选择高斯核函数为
(9)
式中σ为标准差。
与之对应的目标函数为
(10)
SVM在解决线性不可分问题时,其实是把维数较低的样本空间映射到高维空间,将线性不可分问题转换成线性可分问题,然后得到最佳的分类[14]。
3 实验结果分析
针对人的快速移动、弯腰行走、跌倒、跳跃、长时间停留等几种异常行为进行实验测试,并统计行为分类的正确率。行为检测的效果如图6所示。
从实验结果可以看出,本文提出的方法可以将人的正常行为与异常行为区分出来。但在实验中发现,对异常行为检测的正确率不是很理想,相比较而言,将正常行为判断为异常行为的情况比将异常行为判断为正常行为的情况要多。根据表1统计的结果,在行为分析方面存在较高的错误率,主要原因是分类器的设计中某些参数的设置不够精确以及样本的数量少。
4 结论
本文针对实验室监控系统的现实需求,利用视频图像处理的相关理论知识,设计了一种异常行为检测的方法。包括视频图像获取、建立背景模型、异常目标检测与异常行为分析等步骤。实验结果表明,在环境稳定的条件下,该方法可以有效检测出人的快速移动、弯腰行走、跌倒、跳跃、长时间停留等多种异常行为,可以应用于实验室日常教学与管理的监控,为实验室的安全运行提供保障。
图6 行为分析测试
场景检测次数行为识别错误次数错误率/%12015.025359.43961313.5
实验中采用的是固定的背景图像,对于环境随时间变化较小的情况,可以取得良好的检测效果,但是对于环境随时间变化较大的实验室,检测效果就会有所下降。在实际应用中,可以根据时间或者图像的一些参数特征,实时更新背景图像,以提高检测的准确率[15-16]。