基于肤色模型和面部特征的人脸检测算法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于肤色模型和面部特征的人脸检测算法
摘要:提出一种基于肤色模型和面部特征的人脸检测算法,在YCbCr 颜色空间建立肤色模型,根据此模型进行肤色分割,为使分割更平滑,进行了形态学处理,再结合面部特征有效除去非人脸肤色区域。验证了该算法的可行性和高效性。
关键词:人脸检测;肤色模型;形态学处理;面部特征
人脸识别是最近几年国际上图像处理和模式识别研究的热点之一。一个完整的人脸识别系统包括以下4个模块:①人脸检测与分割;
②人脸表征和特征提取;③人脸识别;④性能评估模块。人脸检测模块是人脸识别的前提和基础,只有人脸检测时准确进行人脸定位,后期才能更准确地对检测出来的人脸进行识别。本文提出了一种基于肤色模型和面部特征的人脸检测,目的是提取每一个属于人脸区域的肤色像素点,主要流程如图1所示。在由日常生活照片建立的人脸检测图像集上做了许多实验,验证了该算法的可行性和高效性。
图1 人脸检测流程
1 肤色模型的建立
肤色模型需要选择一个合适的颜色空间并在该空间中确定一个肤色簇。近几年的研究发现,TSL空间提供了两种高斯密度模型(单峰高斯模型和混合高斯模型),效果最佳。YCbCr颜色空间与人的颜色感觉是一致的,并且与TSL颜色空间具有相同特性:能将亮度信息与色度信息区分开来,并具有相当紧密的肤色簇。所以,本文采用
在YCbCr颜色空间上建立肤色模型的方法。IEEE的AnilK. Jain等人从HHI图像库中的137幅图像中手工选取了853 571个肤色像素点,并将它们绘制在YCbCr空间及其各个二维投影子空间中,得到的结果如图2所示。
图2 YCbCr及各二维投影子空间中的肤色点
从图2中看出,128≤Y≤185区域中的肤色点是一个柱体,其横截面就是图2(b)中红色的椭圆部分,椭圆中心为(107,153),长轴为25.39,短轴为14.03,与水平方向的夹角弧度2.53;40≤Y≤128以及185≤Y≤240区域用4条二次曲线式来拟合,方程为:首先考虑128 基于肤色模型的分割步骤为: (1)取像素点的R、G、B值通过上面的空间转换公式转换成Y、Cb、Cr值;转到步骤3。 (2)若128≤Y≤185或40 (3)计算该像素点在CbCr空间中对应的点与椭圆两个焦点F1(89.68,165.15)、F2(124.32,140.85)之间的欧氏距离,代入函数f(x)=11+(x60)2得到该像素点的肤色隶属度,转到步骤5。 (4)将Y值代入上面列出的4条二次曲线方程,得到2个Cb 值和2个Cr值,这2个Cb值和2个Cr值相减得到Cb、Cr值的范围。椭圆的长短轴计算公式为:a=0.44dcb2+dcr2 b=0.24dcb2+dcr2 (4)再根据中心坐标(107,153)和旋转角度2.53可得焦点F1、F2。然后计算该像素点在CbCr空间中对应的点与椭圆两个焦点之间的欧氏距离和并代入f(x)=11+(x60)2得到该像素点的肤色隶属度。 (5)重复步骤1,直到处理完整幅图像。 2 面部特征验证 经过肤色区域分割后的二值图像可能存在一些微小的区域,这些区域属于图像中的噪声,采用去除小连通区域和形态学的开操作、闭操作去噪,再通过面部特征进一步对肤色部分筛选,除去非人脸部分和近肤色部分。 本文采用的面部特征验证主要有两个:①脸部比例。通过对人脸特征的统计,人脸的长宽比应该大致在这样一个范围内:0.6<人脸长宽比<1.5。考虑到人脸区域和脖子区域大都是连通的,所以实际处理中将比例修正为:0.6<人脸长宽比<2;②人眼定位。人脸的头发、眉毛、眼睛的灰度级比较小,选取合适的二值化算法对图像进行二值化处理后,分别进行水平积分投影和垂直积分投影,得到如图3所示的结果。利用对人脸图像的先验知识可以知道,水平积分投影曲线上有两个极小值点,第一个极小值点对应眉毛在纵轴上的位置,记做 ybrow,第二个极小值点则对应眼睛在纵轴上的位置yeye。垂直积分投影曲线中心对称轴两侧出现两个极小值点,分别对应左右眼中心xleye、xreye。因此,可以通过坐标定位眼睛来筛选脸部区域。为减少运算量,在人脸图像纵向上取一个以yeye为中心,宽度为[yeye-ybrow]/2的条形区域δi,该条形区域可以大致框出人眼所在区域。 图3 积分投影 3 实验结果 用Matlab编程实现本文人脸检测算法,实验结果如图4所示。 图4 实验结果 4 结语 本文在YCbCr颜色空间上建立肤色模型,提出了一种非线性变化思想,直接通过判断像素点在不在该聚类椭圆内部来断定其是否为肤色点,若在椭圆内则断定其为肤色点,否则为非肤色点。由于经过肤色分割的只能说是候选人脸区域,而不能断定为人脸,所以加上了面部特征对候选人脸区域进行进一步筛选。但是该算法对一些复杂背景的图片进行检查时还是存在误检的情况,加入面部特征后有时效果并不明显,不能完全排除非人脸部分,这是算法存在的一个缺陷,有待进一步改进。参考文献: [1] 陈显毅.图像标准技术及其Matlab编程实现[M].北京:电子工业出版社,2009. [2] 苑岩岩,惠晓威.基于YCbCr肤色模型和SNOW分类器的人 脸检测[J].计算机系统应用,2010(1). [3] 赵丽红,刘纪红,徐心和.人脸检测方法综述[J].计算机应用研究,2004(9). Face Detection Based on Complexional Model and Facial Feature Abstract:This paper introduces a face detection algorithm based on complexional model and facial feature. Build complexional model in the YCbCr color space,the complexional segmentation is based on this improved model. Use morphology process to smoother segmentation and use the facial feature to eliminate nonface regions. The experiment results show that the algorithm performs easily to locate face region without slowing down the speed. Key Words:Face Detection;Complexional Model;Morphology Process;Facial Feature 第11期张霞:利用屏幕截图工具推进视觉素养教育软件导刊2012年