APP下载

视频监控下的人脸跟踪与识别系统

2014-04-03桑海峰吴丹阳王会

计算机工程与应用 2014年12期
关键词:人脸滤波器监控

桑海峰,吴丹阳,王会

SANG Haifeng,WU Danyang,WANG Hui

沈阳工业大学 视觉检测技术研究所,辽宁 沈阳 110870

Computer Vision Group, Shenyang University of Technology, Shenyang 110870,China

1 引言

随着国际形式的日益严峻,在机场、刑侦、入境通关、反恐及军事设施等领域对安全防范的需求与日俱增,使视频监控在生产生活等各个方面得到了广泛的应用和快速的发展,对大规模人群进行快速准确的身份鉴别是保障公共社会安全、维护国家和谐稳定和加强国家公共安全预警能力的重要手段,对国家安全、公安及安防领域有重要意义[1-2]。虽然目前监控系统己经广泛存在于政府首脑机关、军事要地、机要场所、银行、住宅小区、校园等公共场所,但目前实际监控的任务仍然有很多地方需要人工参与完成,现在广泛存在的监控系统只能进行大量的视频录制,而不能进行实时的信息提取,所提供的信息是没有经过处理的视频图像,只能用于事后查证,不能自动分析视频中人的身份及运动状态,不能及时准确地辅助公安侦查,没有充分发挥视频监控系统的主动性和实时性[3]。

针对视频监控系统中存在的问题,本文将人脸检测、人脸跟踪和人脸识别融入到视频监控系统中,采用快速人脸检测技术从监控视频图象中实时检测人脸,并与人脸数据库进行比对,从而实现快速身份识别,并对人脸进行跟踪,将有效地协助安全人员处理危机,大幅度提高视频监控系统的安全防范能力,是人脸跟踪识别与视频监控的无缝对接。

2 系统总体结构

图1为视频监控系统结构框图。

系统首先通过摄像头实时采集监控场景内的视频图像,利用人脸检测算法检测人脸区域,对检测到的人脸进行图像预处理并实时提取人脸特征;同时对检测到的人脸进行跟踪处理;其次,将已提取的人脸特征和数据库中的人脸特征进行比对,识别出人脸身份;最后,输出人脸跟踪识别结果。

图1 视频监控系统结构框图

3 系统算法设计

3.1 人脸检测

3.1.1 Adaboost人脸检测

Adaboost人脸检测算法[4],是基于积分图、级联检测器和Adaboost算法的方法,该方法能够检测出正面人脸,其核心步骤为:

Step 1:给定一系列训练样本(x1,y1),(x2,y2),…(xn,yn),其中yi=0表示其为非人脸,yi=1表示其为人脸,n为训练样本总数。

Step 2:初始化权重

其中,m为人脸数,n为非人脸数。

Step 3:对于t=1,2…T,循环执行下面的步骤:

(a)归一化权重

(b)对每个特征 f,都训练一个弱分类器,计算对应所有特征的弱分类器的加权错误率。

其中,弱分类器 h(x,f,p,θ)由一个特征值 f,阈值θ和不等号方向p组成。

计算每个特征的弱分类器的加权错误率。

Step 4:经过T次循环得到T个弱分类器,可以按照式(5)的方式组合成一个强分类器。

利用上述训练得到的分类器对图像进行人脸检测,获得人脸在图像中的位置。

3.1.2 主动形状模型

主动形状模型(Active Shape Model,ASM)[5]是一种基于统计模型的图像搜索方法。该算法模型主要包括训练模块和定位模块。在训练模块中,对大量训练样本进行特征点标定,来呈现目标对象的形状信息并建立目标对象的统计形状模型和局部纹理模型;在定位模块中,利用训练得到的统计形状模型和局部纹理模型来进行目标的搜索与匹配,主要包括确定形状的初始位置、计算新位置、计算形状和姿势参数、更新参数四部分,最终使模型匹配到目标的轮廓上。

3.1.3 基于Adaboost人脸检测和ASM的人脸检测算法

经大量实验验证,在监控视频图像中,虽然AdaBoost人脸检测算法能够检测到正面人脸且检测速度快,但这是在简单背景下实现的。而在复杂背景中,AdaBoost人脸检测算法容易受到复杂环境的影响,导致检测结果并不稳定,极易将类似人脸区域误检为人脸,误检率较高。为了更好地实时准确地检测人脸,本文提出了一种基于Adaboost人脸检测和ASM的人脸检测算法。

本算法步骤:

Step 1:利用大量人脸样本训练人脸统计形状模型和局部纹理模型;

Step 2:利用Adaboost人脸检测算法在监控视频中检测人脸区域,记录人脸矩形区域(x,y,height,width),将检测到的人脸区域作为ASM算法的初始搜索区域;

Step 3:在搜索区域内进行特征点位置搜索,认为与局部纹理模型的距离最小的位置是该特征点的最佳位置并根据统计模型调整形状姿态参数;

Step 4:重复以上步骤直到多数特征点搜索得到的最佳点距离当前规定像素的距离小于一定阈值时,认为此区域为人脸区域。否则,认为此区域为非人脸区域,是Adboost人脸检测算法的误检,将此区域排除掉。

3.2 人脸跟踪

3.2.1 CamShift跟踪算法介绍

CamShift算法[6]的全称是"Continuously Adaptive MeanShift",是一种以目标的颜色直方图为目标的跟踪算法。CamShift算法具有计算简单、跟踪速度快、实时性较高的特点,当目标的大小发生改变的时候,CamShift算法可以自适应地调整目标区域连续跟踪。

CamShift算法步骤如下:

Step 1:在整个图像上选择初始搜索窗口;

Step 2:计算搜索窗口的反向投影;

Step 3:利用MeanShift算法获得搜索窗口新的位置和大小;

Step 4:对于下一帧图像,用Step 3得到的跟踪窗口的位置和尺寸重新初始化搜索窗口的大小和位置,跳转至Step 2,如此迭代下去,就可以实现目标跟踪。

3.2.2 Kalman滤波器介绍

Kalman滤波[7]也是一种典型的跟踪方法是,其实质是由观测值重构系统的状态向量,利用目标的运动信息预测下一时刻目标的运动状态。

Kalman滤波算法包含两个模型:信号模型:

观测模型:

其中,Xk是状态向量;Zk是观测向量;Ak是状态转移矩阵;Bk是输入矩阵;Hk是观测矩阵;Wk(协方差为Q)和Vk(协方差为R)是互不相关的均值白噪声序列。

Kalman滤波方程如下:

(1)预测部分:

状态预测方程:

误差协方差预测方程:

(2)更新部分:

Kalman增益系数方程:

误差协方差修正状态修正方程:

状态修正方程:

在预测阶段,滤波器用上一状态的估计,做出对当前状态的估计;在更新阶段,滤波器利用当前状态的估计和新的测量变量来优化在预测阶段获得的预测值。计算预测方程和更新方程,整个过程再次重复,在更新阶段计算得到的预测值,被作为下一次预测阶段的状态估计,推导过程请参考文献[8]。

3.2.3 CamShift和Kalman滤波器相结合的自动多人脸跟踪算法

由于 CamShift是一种以目标的颜色直方图为目标的跟踪算法,所以它能够有效地解决侧面人脸的跟踪问题,但视频监控场景多为复杂背景,并且有大量人员出入,人脸目标会出现交错、人脸数目变化等现象,所以会导致目标跟踪不准确,甚至失败。为了解决这个问题,本文将CamShift跟踪算法和Kalman滤波器结合起来,采用Kalman滤波器对运动目标的状态进行估计,来提高对目标的跟踪精度。

本算法具体步骤:

Step1:初始化搜索窗口。运用上文所述的Adaboost人脸检测与主动形状模型的改进算法检测视频中的人脸,将人脸窗口作为初始化搜索窗口。为了实现多人脸跟踪,将改进算法检测到的所有人脸都作为初始化搜索窗口;

Step2:利用Kalman滤波器预测当前帧人脸的位置。经过 Kalman滤波器预测得到预测后窗口的中心,并以这个窗口的中心作为 CamShift跟踪器窗口的中心进行跟踪。其中,为检测到的每个人脸目标都分配一个 Kalman滤波器并初始化该滤波器,每个 Kalman滤波器都存储该人脸目标的运动信息,不同人脸的 Kalman滤波器之间不相互影响;

Step3:更新Kalman滤波器状态。判断在监控范围内是否出现人脸交错的情况,如果有,则用Kalman滤波器的预测值作为观测值去更新Kalman滤波器状态;如果无,则直接用CamShift跟踪算法得到的新的搜索窗口作为观测值Z(k)来修正当前人脸目标预测状态,即将 Z(k)代入状态修正方程式(13),得到由当前实际观测修正后的状态向量 Xk和修正误差协方差矩阵Pk,最终将由状态修正方程获得的窗口作为下一帧的初始搜索窗口,从而更准确的估计下一帧目标的预测值。

为了有效解决监控范围内人脸数目发生变化的问题,设定每隔1s重新检测一次监控场景内的人脸数目。如果本次场景内人脸个数和上次检查的结果不一致,则重复Step1、Step2、Step3,否则,在下一帧视频中,重复 Step2、Step3,从而能够及时捕捉人脸数目的变化,实现人脸目标的连续跟踪。

3.3 人脸识别

3.3.1 人脸的Gabor特征描述

Gabor[9]变换可以在频域不同尺度、不同方向上提取相关的特征,并且能够捕捉与对应空间位置、空间频率及方向选择性的局部结构信息,适合用于表示人脸图像,能够对人脸特征进行很好地描述。因此,可利用Gabor变换的方法提取人脸特征。

二维Gabor在空间域的定义如(14)所示:

Gabor的实部和虚部公式如式(15)、(16)所示

人脸图像的Gabor特征由人脸图像和Gabor滤波器的卷积得到。令 f(x,y)表示人脸图像的灰度分布,那么f(x,y)和Gabor滤波器的卷积可以定义为:

本文采用5尺度8方向的Gabor滤波器对人脸灰度图像进行滤波,生成方向参数 315°,2 70°,2 25°,180°,1 35°,9 0°,4 5°,0°,8个方向的Gabor滤波器组,滤波结果是每幅人脸图像都有 40幅灰度图像,将它们叠在一起,每个像素变成40*1的向量,这就是所提取Gabor特征。

3.3.2 特征降维及识别

Gabor特征虽然比灰度特征更能描述人脸特征,但Gabor变换结果中有很多冗余特征,因此需要对Gabor变换后的结果进行降维。本文采用了文献[10]提出的 Fisherface的方法对原始样本数据进行降维。

基于Fisherface的人脸识别具体步骤:

Step 1:先将训练样本集中的每幅图像从左到右,从上到下排成一个列向量,再将N幅训练图像构成一个矩阵Y。

Step 2:计算PCA投影矩阵。

Step 3:计算最佳投影矩阵的值并存储。

Step 4:将待识别图像展为列向量形式,计算其在最佳投影矩阵中的投影值。

Step 5:利用余弦距离的方法进行识别,将待识别人脸的投影值与训练样本的投影值按余弦距离公式(18)计算,求得余弦距离最小值,并将最小值所对应的训练样本认为与待识别人脸是同一个人,这样就完成了人脸的识别。

4 系统实验结果分析

(1)人脸检测部分

为了对人脸检测算法进行实际性能测试,本文分别使用 FERET人脸库、自采集人脸图库和视频监控图像对本文所提出的人脸检测方法进行测试,并对比 Adaboost人脸检测算法和本文所提出的基于Adaboost人脸检测和ASM的人脸检测算法,检测结果如表1所示。

表1 人脸检测结果

实验结果表明,本文所提出的人脸检测算法在检测率上优于Adaboost人脸检测算法,能够较准确地检测出人脸,并能够较好地排除Adboost人脸检测算法的误检,可将其应用在后续的人脸跟踪识别算法上,从而提高跟踪和识别的准确度。

(2)人脸跟踪部分

采用本文所提出的在 CamShift跟踪算法的基础上结合 Kalman滤波器预测人脸的运动状态的方法,对不同复杂背景的视频监控范围内的多人脸进行了实时跟踪,以验证系统跟踪性能。本文截取了16幅包含不同人脸数、不同背景下的人脸跟踪视频图像,如图2所示。

图2 复杂背景下多人脸跟踪效果图

图2分别截取了视频序列中单人、两人、三人脸的正面人脸和侧面人脸的跟踪效果图。当监控范围内的人脸数目发生变化时,则重新启动人脸检测算法,对重新检测到的人脸进行正面脸和侧面脸的连续跟踪;在第499帧至第502帧时,其中的两个人脸逐渐靠近并发生交错现象,此时,用 Kalman滤波器的预测值作为观测值去更新 Kalman滤波器状态,使得跟踪继续进行,直到第521帧时,交错的目标完全出现后进入正常的跟踪状态。

经实验证明,本文提出跟踪算法能够在不同的复杂背景下对多人脸进行实时快速地跟踪,预测人脸的运动状态,并有效地解决了人脸交错的连续跟踪问题,提高了CamShift跟踪算法的跟踪性能。

(3) 系统总体性能

为了验证系统的总体性能,在本文所提出的CamShift和Kalman滤波器相结合的自动多人脸跟踪算法中加入了人脸识别算法。

实验数据为自采集图库,本系统采用130万象素的普通摄像头,连续采集 50人的人脸图像进行注册,每人4幅,图像分辨率为130*160。建立一个共包含200张人脸的小型图像库,连续采集的5张同一个人的人脸图像如图3所示。

图3 连续采集的5张同一个人的人脸图像

本系统在不同复杂背景的视频监控场景中进行了实际性能测试,以验证系统的整体性能。部分跟踪识别效果图如图4所示,人脸识别结果如表2所示,在模拟监控场景中的人脸跟踪与识别视频已传至网络,网址如脚注1所示1http://video.sina.com.cn/v/b/80658405-2344632081.html。

图4 不同的复杂背景中多人脸跟踪识别结果

表2 人脸识别实验结果

实验结果表明,本系统每秒可处理图像达到25帧,识别每张人脸的时间在 1.6s以内,识别率为98.49%,满足实时性要求,能够在复杂的监控环境中连续、快速地跟踪识别多人脸,对于人脸偏转、交错、人数变化都有较好的跟踪识别效果,具有较强的鲁棒性和精准性。

5.结束语

本文将人脸跟踪识别技术与传统的视频监控相结合,能够在视频监控场景内有效地获取人脸目标的位置,跟踪人脸的运动轨迹,并鉴别人脸的身份。在Adaboost人脸检测算法中引入了主动形状模型算法,结合两类算法的优势,使其互为补充;并提出了CamShift和Kalman滤波器相结合的自动多人脸跟踪算法,该改进的跟踪算法,可以实时、准确、自动地跟踪人脸目标,并有效解决了监控范围内的人脸偏转、交错及人脸数目变化的问题。通过实际性能测试证明,本系统能够从监控视频流中有效地检测、跟踪和识别场景中的人脸,并取得了良好的效果,具有较强的实时性和准确性,有效地推动了视频监控系统从半自动化半人工状态向自动视频监控状态发展。

[1]辜小花,龚卫国.核保局鉴别分析人脸识别算法[J].仪器仪表学报,2010,31(9):2016-2021.

[2]韦洁,张和生,贾利民.面向状态监测的改进主元分析方法[J].电子测量与仪器学报,2009,23(7):51-55.

[3]王国强,石念峰,郭玉珂.基于正交判别邻域保持投影的人脸识别[J].仪器仪表学报,2009,30(8):1734-1738.

[4]Viola P,Michael J.Rapid Object Detection using a Boosted Cascade of Simple Features[J].IEEE CVPR,2001.

[5]Cootes,T.F.Taylor,C.J.Cooper,D.H.Craham.Active shape model-their training and application.Computer Vision and Image Understanding,1995,61(1):38-59.

[6]Bradski G R.Computer Vision Face Tracking for USE in a Perceptual User Interface[J].Intel Technology Journal,1998,2(2):1-15.

[7]范五东,周尚波,辛培宸.HSV颜色空间特征与Kalman滤波融合的目标跟踪[J].计算机工程与应用,2011,47(13):169-173.

[8]G.Welch and G.Bishop.An introduction to the kalman filter[R].Technical Report TR 95-041,Computer Science,UNC Chapel Hill,1995.

[9]江艳霞,任波.基于局部Gabor相位特征融合的人脸识别[J].光电工程,2010,7(37):139-144.

[10]Etemad K,Chellapa T.Face recognition using discriminant eigenvectors[C],In:Proceedings of ICA SSP,1996.

猜你喜欢

人脸滤波器监控
The Great Barrier Reef shows coral comeback
有特点的人脸
一起学画人脸
从滤波器理解卷积
你被监控了吗?
Zabbix在ATS系统集中监控中的应用
三国漫——人脸解锁
开关电源EMI滤波器的应用方法探讨
基于Canny振荡抑制准则的改进匹配滤波器
基于TMS320C6678的SAR方位向预滤波器的并行实现