1、 本科 毕业 设计 (论文 ) (二零 届) 图片人脸检测系统的设计与实现 所在学院 专业班级 计算机科学与技术 学生姓名 学号 指导教师 职称 完成日期 年 月 摘要 : 人脸检测是智能人机接口的关键技术之一,它在人脸识别、表情识别、人脸合成和人脸编码等领域具有很重要的应用价值。本论文介绍了人 脸检测的背景知识和肤色检测技术的发展现状,并对色彩空间和主要肤色建模方法进行了介绍。在 Windows XP下,用 Visual C 6.0做为开发工具,实现了一种基于颜色的人脸检测。在 YCrCb空间中通过面部轮廓、人眼、嘴巴等多个特征的分析定位出人脸。算法测试结果表明该系统具有较快的检测速度和较高
2、的检测正确率。 关键词 : 人脸检测;肤色检测技术;色彩空间;肤色建模; Photo Face Detection System Design and Implementation Abstract: Face detection is one of the key technology for intelligent human-machine interface,which has very important value in face recognition, face synthesis and coding and other fields. This paper describe
3、s the background of face detection,first then presents a color-based algorithm for face detection and the color-based detection technology development, briefly introduce the skin color space and the main modeling .We implementat a color-based algorithm using Visual C+6.0 in Windows XP. We use the co
4、lor feature of human face in YCrCb color space to location the face in picture experimental. Experimental resulats show that the detection system can work with high and accurately. Keywords: face detection; Skin color detection; Color Space; Color model; 目录 1 引言 . 1 1.1 课题背景 . 1 1.2 人脸检测技术在国内外的发展及现状
5、 . 1 1.3 本课题研究的意义 . 2 1.4 开发平台简介 . 2 2 色彩空间和肤色模型方法 . 3 2.1 色彩空间 . 3 2.1.1 RGB色彩空间 . 3 2.1.2 YCrCb色彩空间 . 3 2.2 肤色模型方法 . 4 3 肤色模型的人脸定位 . 7 3.1 总体流程图 . 7 3.2 肤色模型的人脸定位具 体步骤 . 7 3.2.1 光线补偿 . 8 3.2.2 色彩空间的转换 . 9 3.2.3 肤色建模算法 . 9 3.2.4 后处理 . 11 3.2.5 基于脸部特征检测 . 11 3.2.6 人脸定位 . 15 4 系统测试 . 17 4.1 运行界面 . 18
6、 4.2 人脸检测 . 18 4.3 光线补偿 . 19 4.4 皮肤颜色建模 . 20 4.5 人脸区域 . 20 4.6 眼睛中心点 . 21 4.7 嘴巴中心点 . 21 4.8 勾勒人脸 . 22 5 结论 . 24 致谢 . 错误 !未定义书签。 参考文献 . 24 1 1 引言 1.1 课题背景 图像具有一定的适应能力,由此所面临的一系列问题使得人脸检测开始作为一个独立的课观察一个人的面部可以自然的,无侵犯性的了解到一个人的很多信息,比如:身份,性别,年龄,情感等等。因此,在过去三十多年的时间里人们对人脸检测和人脸识别始 终保持着浓厚的研究兴趣 1。随着人机交互技术日益成为当前研究
7、的一个中心,人脸检测问题越来越受到重视,成为模式识别与计算机视觉领域研究的一个热点 2。人脸检测是自动人脸识别系统中一个关键环节,但是早期的人脸识别研究主要针对具有较强约束条件的人脸图像(如无背景的图像),往往假设人脸位置已知或很多容易获得,因此人脸检测问题并未受到重视。近几年随着电子等应用的发展,人脸识别成为最有潜力的生物身份验证手段,这种应用背景要求自动人脸识别系统能够对一般环境题受到研究者的重视。今天,人脸检测的应用背景已经远远超出了人脸 识别系统的范畴,在基于内容的检索、数字 处理、视觉等发面有着重要的应用价值。 1.2 人脸检测 技术在国内外的发展及现状 目前,国外对人脸检测问题的研
8、究很多,比较著名的有 MIT,CMU 等;国内的清华大学、北京工业大学、中科院计算所和自动化所等都有人员从事人脸检测相关的研究。而且, MPEG7 标准组织已经简历了人脸识别草案小组,人脸检测算法也是一项征集的内容。随着人脸检测研 究的深入,国际上发表的有关论文数量也大幅度增长,如 IEEE 的 FG、 ICIPCVPR 等重要国际会议上每年都有大量关于人脸检测的论文,占有关人 脸研究论文的 1/3 之多。由此可以看到世界对人脸检测技术的重视。 在我国有关 人脸自动识别的研究 开 始于二十世纪 80 年代,主要的研究单位有清华大学,哈尔滨工业大学,中科院计算所,中科院自动化所,复旦大学,北京科
9、技大学等,并 且 都取得了一定的成果。国内的研究工作主要是集中在三大类方 法的研究:基于代数特征的人脸正面自动识别方法 、 基于几何特征的人脸正面自动识别方法和基于连接机制的人脸正面自动识别方法。周激流实现了具有反馈机制的人脸正面识别系统,运用积分投影法提取面部特征的关键点并用于识别,获得了比较满意的效果。他同时也尝试 了 “稳定视点 ”特征提取方法,即为使识别系统中包含 3D 信息,他对人脸侧面剪影识别做了一定的研究,并实现了正,侧面互相参照的识别系统。彭辉、张长水等对“特征脸 ”的方法做了进一步的发展,提出采用类间散布矩阵作为产生矩阵,进一步降低了产生矩阵的维数,在保持识别率的情况下,大大
10、降低了运算量。程永清,庄永明等对同类图像的平均灰度图进行 SVD 分解得到特征脸空间,每一幅图像在特征脸空间上的投影作为其代数特征,然后利用层2 次判别进行分类。张辉,周洪祥,何振亚采用对称主元分析神经网络,用去冗余和权值正交相结合的方法对人脸进行特征 提取和识别。该方法所用特征数据量小,特征提取运算量也较小,比较好地实现了大量人脸样本的存储和人脸的快速识别。北京科技大学的王志良教授主要研究人工心理,建立了以数学公式为基础的心理学模型。 1.3 本课题研究的意义 人脸检测是智能人机接口的关键技术之一,它在人脸识别、表情识别、人脸合成和人脸编码等领域具有很重要的应用价值 3。 其中人脸检测以其在
11、安全检查、视觉监测、智能人机接口、基于内容的检索、数字视频处理等诸多领域的应用前景和重要的学术价值,已成为一个相对独立的课题而受到普遍重视 4。 今天,人脸检测的应 用背景已经远远超出了人脸识别系统的范畴,在基于内容的检索、数字 处理、视觉等发面有着重要的应用价值。这种技术目前最热门的领域有四种,第一是身份的认证和安全防护在许多安全级别要求较高的区域,都需要对大量的人员进行基于省份认证的门禁管理。第二,媒体与娱乐,在网络虚拟世界里,通过人脸的变化,可以产生大量的娱乐节目和效果。第三是图片的搜索,基于人脸图像识别技术的搜索引擎将会具有广泛的应用前景。第四是 协助调查 。 目前,在银行、金库发生抢
12、劫事件已经屡见不鲜。发生这样的事件不是一时就能够制止的,但是可以通过人脸检测的设备来 提取并记录罪犯的人脸,提供给公安机关以帮助破案。 无论是从实际应用还是理论研究的角度来看,人脸检测都是一个颇具吸引力的课题,人脸检测问题长久的生命力在很大程度上源于自身的难度。如果我们将问题限制在二维图像上,人脸检测问题就变成在数字图像中检测人脸表观的模式。众所周知这并不是一个轻而易举的任务。将人脸视为刚体,则它在三维空间中的转动会使得其在二维视平面上的投影产生变化;当人脸静止不动时,周围环境的光照情况仍会影响其表观,如强烈的测光所产生的阴阳脸;在真实世界中,对人脸的刚体假设往往不成立,五官挪位的夸张表情随
13、处可见;此外,还有其他诸多变数,如化妆、胡须、遮挡等,上述这些因素都增加了人脸检测问题的难度 5。 1.4 开发平台简介 本程序的开发平台是 Visual C+6。面向过程 C 程序语言,因为它具有贴近底层、代码运行速度快、便于优化等优点而广泛应用。而与之对应的语言 C+是应用最广泛的面向对象的程序语言之一,它全面兼容了 C,同时提供了比 C更严格、更安全的语法 15。而面向对象的程序设计方法,它更符合人的思维习惯,设计过程中合理的利用对象、类、消息、继承、多态性、动态连接和信息封装等,设计好类、子类 运算符重载、静态成员和友元、模板类 7等,可以使得程序具有很高的可重用性,使得软件的开发和维
14、护都更为方便。 3 2 色彩空间和肤色模型方法 2.1 色彩空间 色彩空间 (Color Space)也称作“色域”,是表示颜色的一种数学方法,人们用它来指定和产生颜色,使颜色形象化。实际就是各种色彩的集合,色彩的种类越多,色彩空间越大,能够表现的色彩范围 (即色域 )越广。对于具体的图像设备而言,其色彩空间就是它所能表现的色彩的总和。色彩空间中的颜色通常使用代表三个参数的三维坐标来指定,这些参数描述的是颜色在色彩 空间中的位置。 肤色分割的颜色空间主要有 RGB, HSV, YCrCb 等,选择合适的颜色空间是决定分割效果好坏的主要因素,而没有一个现存的颜色空间能够胜任所有的图像。 2.1.
15、1 RGB色彩空间 RGB 色彩空间采用三维直角坐标系,红、绿、蓝为原色,各个原色混合在一起可以产生复合色。RGB 色彩空间通常使用图所示的单位立方体表示,在正方体的主对角线上,各原色的强度相等,产生由暗到明的白色,也就是不同的灰度值。( 0, 0, 0)为黑色,( 1, 1, 1)为白色。正方体的其他六个定点分别为红、黄、绿、青、蓝和品红 。由于彩色图像是多光谱图像的一种特殊情况,对于人类视觉的三基色即红、绿、蓝三个波段,是对人眼的光谱量化性质的近似。因此,利用 R、 G、 B三基色这三个分量来表征颜色是很自然的一种格式。而且多数的图像采集设备都是以 CCD(电荷耦合器件)技术为核心,直接感
16、知色彩的 R、 G、 B 三个分量,这也使得 RGB 模型成为图像成像、显示、打印等设备的基础,具有十分重要的作用。 但 RGB 色彩空间不适合进行色度处理,因为在 RGB 空间中,三个颜色分量都包含亮度信息,存在相关性,因此用于肤色检测时算法的亮度适应性不好,一般情况下 ,都是以 RGB 色彩空间为基础来描述其它类型的色彩空间,将其他色彩空间的基色描述为 RGB 三基色的线形或非线性函数 。 2.1.2 YCrCb色彩空间 因为系统得到的图片可能会存在光线不平衡的情况,这会影响我们对特征的提取,同时系统中要用到 YCrCB色彩空间,所以有必要对图像进行光线补偿。尽可能将它的特征在图像中表现出
17、来。YCrCb是一种色彩空间,在该色彩空间中, Y分量表示像素的亮度, Cr表示红色分量, Cb表示蓝色分量,通常把 Cr和 Cb称为色度。 4 YCrCb色彩空间转换将图像中的色度和亮度分离。采用 YCrCb 空间受到的亮度影响较小且肤色的聚类特性较好 , 能够很好的满足要求 , 因此采用 YCrCb 色彩空间 8。由 RGB彩色空间转换为 YCrCb色彩空间的转换关系为: Y = (257*r+504*g+98*b)/1000+16; Cr = (439*r-368*g-71*b)/1000+128; Cb = (-148*r-291*g+439*b)/1000+128; 2.2 肤色模型
18、方法 目前常用的肤色模型主要有高斯模型、直方图模型、基于神经网络的模型等 8。 ( 1)高斯模型 它是利用正态分布来拟 合皮肤颜色的概率密度分布。它的理论基础是:它认为人与人之间肤色的不同主要在于密度而不是颜色本身。在一定的光照条件下肤色的分布是正态分布的。 高斯法可分为单模高斯模型和高斯混合模型。 1单高斯模型 SGM (Single Gaussian Model) 这种方法是假设肤色分布服从单峰高斯分布。它主要通过统计分析,预测高斯分布的参数,其中参数确定常用的方法有 EM算法, Maximum-Likelihood 或通过统计直接求得色彩空间中每个分量(一般利用的是该色彩空间中的色度分量
19、 )的均值与方差。采用这种方法也分为两步:首先选择方法确定模型的参数 (即均值和方差 );其次利用该模型来判别新的像素或区域是否为肤色。 2高斯混合模型 GGMs (Gaussian Mixture Model) 由于具有不同种族的肤色直方图并不完全满足单峰高斯分布,通过研究可以采用多峰的高斯分布来精确表示。高斯混合模型是多个高斯密度函数的加权和,表明肤色的每个像素密度都属于概率密度的混合体。 ( 2)直方图法 直方图肤色模型是一种非参数模型 .肤色样本的直方图统计可以构造肤色概率图 SPM9 。直方图法的原理很简单,即利用直方图来描述肤色在色彩空间的分布,一般不需要显式地假设肤色的先验分布,
20、从而可以对比较复杂的分布进行建模。首先利用直方图对训练集上的肤色进行统计,得到关于颜色在肤色中的出现信息,而后在该直方图的基础上建造肤色概率图 SPM (Skin Probability Map),即为离散化的色彩空间中的每个格子赋予一个概率值。利用 SPM 检测肤色像素主要有两种方法,归一化查找表和贝叶斯分类器,两者都可以采用查表法,只不过前者仅统计了肤色样本在特征空间内的分布,而后者同时统计了 肤色和非肤色样本的分布。 5 ( 3)基于神经网络的模型 神经网络方法进行人脸检测的优点是可以简便的构造出神经网络系统作为分类器,使用人脸和非脸样本对该系统进行训练,让系统自动学习两类样本复杂的类条
21、件密度,这样就避免了人为假设类条件密度函数所带来的问题 10。 通过训练一个人工神经网络结构,把模式的统计特征隐含在神经网络的结构和参数之中。 ANN避免了复杂的特征提取工作,且能根据样本特征学习生成模式分类器,在人脸信息中,人脸、眼睛和嘴巴等都有比较明显的特点,因此可以才用神经网络的识别方法,不单如此,对于检测人脸 这类复杂的,难以显示描述,神经网络还表现出良好的鲁棒性和自适应性,具有独特的优势。神经网络具有记忆功能,当训练样本可以比较全面的包含待检测人脸 信 息时,神经网络可以处理比较复杂的检测问题,因此许多检测系统中应用了神经网络算法。 在此借鉴文献提出的基于色彩空间的聚类特性建立的椭圆
22、肤色模型 , 经研究在 YCbCr 空间中 , 肤色聚类呈现两头尖形状 , 在亮度 Y 值较大和较小的部分 , 肤色聚类随之缩减。因而文中利非线性分段色彩变换将色彩空间 YCbCr 转换为另一空间 YCbCr , 以更好的适应亮度的要求。具体算 法参照文献 11, 基于新的色彩空间构建的椭圆肤色模型如下所示 : x = cos(theta)*(Cb-cx)+sin(theta)*(Cr-cy); y = -sin(theta)*(Cb -cx)+cos(theta)*(Cr-cy); 式中 theta = 2.53; cx = 114.38; cy = 160.02; temp = (x-ec
23、x)2 /a2+ (y-ecy)2/b2; 式中 ecx = 1.60;ecy = 2.41; 分别为 x 轴和 y 轴方向上的常量分别取椭圆的长 , 短 a=25.39, b=14.03。如果满足如下公式则定为肤色区域 : |e- 10|Kh Cr = 154 - (Y-Kh)*22)/(Ymax - Kh); Cb = 108 + (Y-Kh)*10)/(Ymax - Kh); WCr = WHcr + (Ymax-Y)*(Wcr-WHcr)/(Ymax-Kh); WCb = WHcb + (Ymax-Y)*(Wcb-WHcb)/(Ymax-Kh); 其中 Kl = 125, Kh= 188, Ymin = 16, Ymax = 235; Wcb = 46.97; WLcb = 23; WHcb = 14; Wcr = 38.76; WLcr = 20; WHcr = 10;