视频图像的人脸检测方法
2008-03-31
作者:苗毓虹,姜 军,张桂林,熊
摘 要: 根据视频序列图像的运动连续性特点,初步对人脸" title="人脸">人脸所在区域进行定位,针对人脸检测" title="人脸检测">人脸检测系统实时性的需要,改进了Adaboost学习算法。提出一种新的视频环境下人脸检测方法。实验证明该方法能够精确定位人脸,有较强的实用性。
关键词: 人脸检测 变化检测" title="变化检测">变化检测 Adaboost 肤色模型
随着智能化技术和监控技术在各个领域的广泛应用,人脸检测作为自动人脸识别的关键环节受到越来越多的重视。人脸检测是指在图片中确定人脸位置的过程,其定位的准确性将直接影响到人脸识别的结果。目前人脸检测有三种类型[1]:肤色区域分割、基于启发式模型和基于统计模型的方法。肤色分割的局限性在于受复杂背景和光照的影响较大。基于启发式模型的方法首先抽取特征,然后检验是否符合人脸的先验知识。统计模型是把人脸看作一类模式构造分类器" title="分类器">分类器,通过判别图像中区域可能属于哪类模式的方法实现人脸的检测。
针对摄像机固定的监视应用提出了一种在视频环境下检测人脸的方法。从结果分析,本文基于视频图像" title="视频图像">视频图像的人脸检测方法在检测率和速度上均满足系统要求。
1 人脸检测系统框架
人脸检测系统以摄像机采集到的图像为输入得到人脸的位置信息。视频图像人脸检测算法流程如图1所示。
2 人脸区域检测
2.1 基于变化检测的目标定位
人脸图像采集系统的采像环境和位置是固定的,因此采用背景差分的方法。首先选取n幅图像目标进入视场的背景图像f(x,y,ti),i=1,2,…,n,运用时间中值滤波或均值滤波的方法得到模型的背景图像,记为B(x,y)。将当前图像与这个建立的背景图像做差分来找到运动物体,记为变化检测后的D(x,y,ti)。
由D(x,y,ti)=|f(x,y,ti)-B(x,y)|,i=1…,n (1)
得到当前时刻的运动区域。变化检测示意图如图2所示。图2(a)为当前图片,图2(b)是变化检测后的结果。对变化的区域做后续处理工作,去除小的变化区域,找到图像中最大的连通区域并进行标记。
由于图像分割和背景更新等问题不是本文重点,故此处省略。
2.2 改进的Adaboost人脸检测算法
Adaboost算法是Freund等人[2]提出的一种Boost算法。它是自动地从弱分类器空间中挑选出若干个弱分类器整合成一个强分类器。在训练过程中调整样本的权重,使得Adaboost能够“聚焦于”那些比较困难的样本。该算法主要有训练和检测两个部分,用其进行人脸检测,速度快且定位准确。本文针对视频应用环境对算法做了改进,提高了检测速度。
(1)训练和检测算法
首先选取合适的样本,取矩形特征作为训练中的弱分类器。为了显著地提高人脸检测的速度,将复杂分类器的问题拆分成若干弱分类器,对这些弱分类器进行筛选,得到一系列强分类器,再将这些强分类器层叠相连[3]。特征fj对应的弱分类器表述为hj(x)。
其中x为待检测窗口,hj(x)为构成该强分类器的第j个弱分类器,θi为该强分类器的阈值。Hi(x)的判断结果为1或0。1表示接受,0表示拒绝。当一系列强分类器层层相连时,就构成一个层叠分类器[4]。训练的过程即为构造级联分类器。当某一层训练的过程中,错误报警率超标,则从样本中继续学习,增加新的特征以满足结果需要。
检测过程同训练过程类似,将输入图像以训练样本的大小为基准,依次乘以相应的步长,得到一系列子图像。计算积分图像以后,通过训练好的层叠分类器得到检测结果。最后进行区域合并得到人脸位置信息。
(2)Adaboost中的改进工作
首先,在训练过程中引入45°旋转矩形特征。由于要检测的不仅是正面人脸图像,因此训练样本中加入了一些平面内和平面外的旋转样本图像。选取的特征也由viola的传统四类矩形特征扩展到加入45°旋转特征。扩展的矩形特征图如图3所示。
其次,对图像进行降分辨率搜索。为了更清晰地表述图像,视频图像通常采用的图像分辨率比较大,如1024×768等,将分辨率降为512×384不会影响检测的结果,但是搜索的时间明显减少。为适应系统实时性的需求,针对人脸图像在视场中的比例,将检测部分的搜索步长改为1.2。opencv中的推荐步长是1.1,本文针对人脸图像在视场中的比例,在视频图像实验中发现,如果将原有步长1.1加大到1.2,不会影响检测率,但减少了计算量。以320×320图像为例比较,训练图像的大小是24×24。当检测步长从1.1增加到1.2时,需要检测的子图像个数由3 302 348降至1 769 115。需要说明的是,在viola的方法中,最后实验结果在384×288的图像上进行检测耗时0.067s(实验机器配置为 PentiumⅢ,700MHz),检测窗口缩放参数起始1.25,步长1.5,但是由于视频序列图像中图像质量较差,若此参数偏高,检测率不能满足要求。本文中检测窗口的缩放参数为起始1.0,步长1.2。步长的选取实际是对检测率与错误报警率之间的一个折中。本文的候选验证方法能有效地排除错误报警,检测的主要目的是减少漏检人脸图像,保证较高的检测率。这也是步长选取为1.2的原因。
3 人脸候选区域验证
从前两步得到了一系列的人脸候选区域,处理得到人脸感兴趣区域。肤色分割的局限性在于受复杂背景的影响较大,但是人脸候选区域的图像背景通常不复杂,将其运用于人脸候选验证效果很好。凡是能通过肤色模型[5]被认为是人脸的区域,称为“类肤色区域”。在人脸候选区域验证中,人脸先进入第一层分类——肤色模型,再进入第二层分类——图像的方差,抛掉“类肤色区域”中的非人脸。经过两层分类后,绝大部分错误报警被排除。最终同时通过两层的人脸候选区域被确定为人脸。后验证方法的流程如图4所示。
3.1 基于肤色分割的候选区域验证
统计一定数量的肤色区域,由于在RGB颜色空间分布没有明显的规律性,因而将其转化到HSI空间发现了肤色的集中分布区域。实验中有一些背景像素值转化到HSI空间时,对应的色调值S相差不大,仅仅依靠传统用色调来区分肤色的非肤色区域的方法不再适用。在本系统的肤色分割中同时使用了H、I的值进行限制,从大量的结果统计得到适用范围。利用此特征对人脸候选区域进行第一次分类,去除一部分错误报警。候选区域验证结果如图5所示。其中,图5(1)中的a列为归一化后的人脸候选区域,b为肤色变换以后的结果,得到第二层的图像c。
3.2 基于图像方差的候选区域验证
该层剔除的目标主要是“类肤色区域”中的非人脸。对于人脸肤色区域和非人脸肤色区域,方差分布有着明显的差别。图5(2)中得到的就是去除非人脸肤色区域之后的结果。
4 实验结果及分析
分别进行两组不同类型的实验,以证明该方法定位人脸的准确性和实用性。
实验1:如图6所示。图6(a)为多人脸图像中的人脸定位,图6(b)为当人脸旋转的角度小于30°时,人脸在发生平面内和平面外的旋转时仍能准确定位的图片。在图像大小为320×240时,整个检测和候选验证时间88ms(机器配置为PentiumⅣ,2.4GHz),基本上达到了实时的要求。
实验2:研究视频环境下的人脸检测。由于光线的影响和视频图像具有运动模糊的特点,因而错误报警率比通用的测试集高。表1特别对候选验证前后的错误报警进行了比较。本文对检测率(DR)和虚警率(FR)定义如下:
其中N为测试集中人眼能够确认的人脸总数,n为正确检测到的人脸个数,m为被检测方法确定为人脸的非人脸模式,即错误检测样本个数。本文的测试集是在视频环境下实验室同学的样本,每个样本为单幅人脸图像,样本数目和人眼能够确认的人脸总数是一致的。检测率和虚警率统计结果如表1所示。
从实验结果分析,对应检测率较低的几组样本,漏检的情况通常发生在人脸偏转角度过大,导致人脸器官信息不明显的情况下。而2,5,7组候选验证前的错误检测样本个数较大,与光照环境密切相关。候选验证算法将其中的绝大部分去除。
本文介绍了一种基于视频序列图像的人脸检测方法。基于视频序列图像的人脸检测方法包括变化检测、改进的Adaboost学习算法和层叠式后验证等方法。实验结果表明,本文提出的方法在视频环境下可以有效运用于多人脸、不同尺寸、表情姿态和复杂背景的情况,同时使检测率达到95.34%,错误报警率降至0.0011,系统运行时间为88ms, 可近乎实时地进行人脸检测。
在实验过程中,不均匀光照对检测有一定影响。从实验结果分析,人脸发生漏检的情况通常出现在人脸进行大角度旋转的样本中。可见Adaboost算法对于大角度的旋转有一定的局限性,这也是以后需要改进的地方。
参考文献
1 梁路宏,艾海舟,徐光佑.人脸检测研究综述.计算机学报,2002;25(5):449~458
2 Freund Y,Schapire R E.Experiments with a new boosting algorithm.In:Proc the 13th conf on machine learning,San Frarrcisco,Morgan Kaufmann,1996
3 Viola P,Jones M.Rapid object detection using a boosted cascade of simple features.IEEE conf on computer vision and pattern recognition,Kauai,Hawaii,USA,2001
4 Papageorgiou C P,Oren M,Poggio T.A general framework for object detection.In:Proceeding of imternational conference on computer vision,Bombay,India,1998
5 Bertran A,Yu H Z,Sacchetto P.Face Detection Project Report.Computer Project for Digital Image Processing,EE368 Spring 2001