人脸检测是人脸识别系统的第一步,是指对于任意一幅给定图像,采用一定策略对其进行搜索,以确定其中是否含有人脸,并确定人脸的位置、尺寸等信息。人脸检测作为物体检测问题的一个特例,长期以来一直备受关注[1] [2]。国内外有很多学者在研究人脸检测与识别算法,提出了很多算法。常用的人脸检测算法可以分为两大类:基于显式特征的方法和基于隐式特征的方法。基于显式特征的方法有:模板匹配法[3],基于肤色模型的方法[4][5],基于知识的方法[6];基于隐式特征的方法有:子空间法[7][8],支持向量机法,神经网络法,隐马尔科夫算法,Boosting算法[9][10]。
Boosting算法是把弱分类器通过组合从而成为强分类器的一类统计学习方法。其基本思想是对训练失败的样本赋予较大的权值,让学习算法在后续的学习中集中对该类样本进行学习,最后将选出的若干个分类器加权相加组成强分类器。P.Viola等提出了一种基于Boosting 方法的实时人脸检测系统[9]。该方法不仅具有较高的检测精度,而且检测速度也比较快,达到了实时检测。该算法逐渐成为今年来的研究热点方向,许多学者对此算法进行了改进,并得到了很好的检测结果[10]。然而Adaboost算法在复杂场景下易造成误检,比如周围环境中有类似人脸形状和纹理的事物时,Adaboost算法可能会误检测。肤色特征是人脸检测中最常用的特征之一,它对于图像的旋转、平移、缩放以及人脸表情的变化等都能很好的适应性,具有相对的稳定性。研究表明:不同人种的肤色在色度空间中是聚合的。本文将肤色检测与Adaboost算法相结合,提出了一种改进的人脸检测算法。
由于光照变化对检测效果的影响很大,尤其是肤色特征更易受光照变化的影响。因此在进行人脸识别之前需要进行光照处理,本文针对传统的光照处理算法处理复杂光照效果不理想的问题,提出了一种改进的“参考白”光照补偿算法,实验表明,本文提出的检测算法与传统的检测算法相比,正确检测率有所提高,尤其是在复杂光照下,正确检测率提高明显。
2改进的Adaboost人脸检测
人脸检测的挑战性问题主要来自两个方面:
(1)内在因素。比如人脸不同的表情,肤色,外貌特征等,即人脸是具有模式的可变性;人脸的遮挡问题(饰物,头发等)。
(2)外在因素,比如光照变化的影响;图像采集设备的性能、角度的影响等。
针对人脸检测存在的问题,尤其是肤色等彩色信息,更易受到光照的影响。本文首先对光照变化的影响进行了影响,提出了一种改进的“参考白”光照补偿算法。
2.1 改进的参考白算法
常用的光照补偿算法有全局平衡法、局部平衡法和“参考白”方法。“参考白”方法是首先将整个图像中的所有像素的亮度从高到低进行排序,取前5%的像素,若这些像素足够多(比如大于100),就把这些像素的亮度作为“参考白”,其他像素点根据“参考白”进行相应调整。
“参考白”方法基于以下事实:人脸图像中应该有一部分是纯白色的,比如人的眼睛周围。然而,如果人脸图像光照不足而周围环境的纯白色像素足够多,则对图像的“参考白”处理就不会很明显,如下图所示,进行“参考白”处理后的图像提取的肤色区域如图1(d)所示,可见,“参考白”处理的效果不是很理想。
图1 光照处理的结果(a)原图(c)“参考白”处理
(b)(d)为对应的肤色检测效果
共0条 [查看全部] 网友评论