毕业设计(论文)人脸识别算法

1-i人人脸脸识识别别算算法法The Design and Implementation of Algorithms for Human Face Recognition1-ii人脸识别算法 摘 要人脸自动识别是模式识别领域的一项热门研究课题,有着十分广泛的应用前景本文对人脸位置矫正,人脸的特征提取和识别这些方面进行了研究,并提出了相应的实现算法 人脸位置矫正作为人脸检测定位的一个环节,在计算机人脸识别中具有重要的意义本文第二章提出了一种基于单人脸灰度图像中眼睛定位的人脸位置矫正方法,它是针对人眼灰度变化特点、人眼几何形状特征及双眼的轴对称性而设计的实验结果表明,该方法对于双眼可见单人脸灰度图像能实现快速有效矫正,并能在矫正结果中精确给出双眼瞳孔位置本文第三章提出了一种基于神经网络的主元分析人脸图像识别方法该方法利用非线性主元分析神经网络对人脸图像提取人脸特征(矢量),并在BP神经网络上实现了对人脸图像的识别实验结果证明了该方法的有效性和稳定性关键词1-iii人脸位置矫正,人脸特征提取,人脸识别,神经网络,灰度图像,图像块纵向复杂度,主元分析法,1-ivThe Design and Implementation of Algorithms for Human Face RecognitionStudent: Yangbo GuAdvisor: Dr. Wenming CaoDepartment of Computer Science and TechnologyCollege of Information Engineering Zhejiang University of TechnologyAbstractAbstractThe automatic recognition of human faces is a hot spot in the field of pattern recognition , which has a wide range of potential applications .As the results of our in-depth research ,two algorithms are proposed : one for face pose adjustment , the other for facial feature extraction and face identification . Face pose adjustment , as a loop of human face location, is very important in computer face recognition. Chapter 2 of this thesis presents a new approach to automatic face pose adjustment on gray-scale static images with a single face . In a first stage , the right positions of eyes are precisely detected according to several designed parameters which well characterize the complex changes of the gray parameter in and around eyes and the geometrical shape of eyes . During the second stage , based on the location and the symmetry feature of eyes , the inclination angle is calculated and the face position is redressed . The experimentation shows that the algorithm 1-vperforms very well both in terms of rate and of efficiency . Whats more , due to the precise location of eyes , the apples of the eyes are detected .In chapter 3, a novel approach to human face image recognition based on principal component analysis and neural networks has been proposed . By using BP neural networks , human face images are successfully classified and recognized according to the output of BPNN whose input is the eigenvector extracted from the human face images via nonlinear principal component analysis of a single layer neural network . Simulation results demonstrate the effectiveness and stability of the approach .KeywordsKeywordsFace Pose Adjustment, Facial Feature Extraction , Human Face Recognition , Neural Networks , Gray-scale Static Image , Vertical-complexity of ImageBlock, Principal Component Analysis1-vi致 谢首先要感谢我的毕业设计导师曹文明教授,他是我在人脸识别领域研究的启蒙老师。
在整个毕业设计的过程中,他给了我各方面的悉心指导,他严谨求实的作风和渊博深厚的学识深深的感染了我感谢中科院王守觉院士在毕业设计阶段对我的课题研究工作给予的关注和支持,这给了我极大的鼓舞还要感谢沈珠俊同学和6-309寝室的全体成员,他们对待毕业设计的认真态度给了我很大的教育,同时也感谢他们随时随地的无私帮助 毕业设计任务的如期完成离不开我自己的刻苦钻研和辛勤耕耘,但也离不开老师的指导和同学的帮助这里,再次对他们表示感谢1-vii目 录中文摘要 .iABSTRACT .ii致谢 .iv目录 .vi第一章 绪论 .11.1 人脸识别技术研究的背景和意义 .11.2 人脸识别技术简介 .21.2.1 人脸识别的研究范围 .21.2.2 主要的人脸识别技术 .21.3 人脸识别系统的构成 .41.4 论文內容概述 .4第二章 人脸位置矫正算法 .52.1 人脸位置矫正问题的引入.52.2 算法的设计思路 .62.3 算法的基本实现步骤 .62.4 算法参数设计和算法基本实现步骤的清晰化 .62.4.1 垂直方差投影 .62.4.2 水平积分投影 .72.4.3 图像块纵向复杂度 .72.4.4 眼睛黑斑模型 .72.5 基于眼睛定位的人脸位置矫正算法 .82.5.1 灰度人脸区域(人眼搜索区域)的确定 .82.5.2 人眼位置的确定 .10 2.5.2.1 搜索复杂度最大的图像块 .102.5.2.2 利用人眼黑斑模型精确定位人眼 .112.5.3 依据人脸图像的轴对称性矫正人脸位置 .121-viii2.6 算法实验结果分析 .132.7 结论 .14第三章 人脸特征提取与识别算法 .153.1 特征提取需遵循的原则.153.2 主元分析算法.153.3 人工神经网络简介及BP神经网络训练算法的数学描述.163.3.1 人工神经网络及其特性介绍 .163.3.2 BP神经网络训练算法的数学描述 .173.4 基于神经网络的主元分析人脸识别方法 .193.4.1 利用非线性神经网络提取主元特征 .203.4.2 特征数据的归一化和BP神经网络识别 .23.5 算法实验结果及分析 .223.6 总结 .22第四章 人脸识别系统结构 .234.1 人脸识别系统的目标.234. 2 本文的人脸识别系统结构 .23第五章 总结与展望 .245.1 本文完成的工作.245.2 目前系统存在的不足之处.245.3 目前系统改进计划和今后努力方向.24参考文献 .25附录A 毕业设计期间发表论文 .26附录B 人脸识别系统(软件)使用说明书1-ixR-1 第一章第一章 绪论绪论网络信息化时代的一大特征就是身份的数字化和隐性化,如何准确鉴定一个人的身份,保护信息安全是当今信息化时代必须解决的一个关键社会问题。
正在悄然兴起的人脸识别技术正好可以解决这一问题人脸识别技术是最近 20 年在全球范围内迅速发展起来的计算机安全技术,是人体生物特征识别技术的一种它根据人脸固有的生物特征信息,利用图像处理和模式识别技术对个人身份进行鉴定1.11.1 人脸识别技术研究的背景和意义人脸识别技术研究的背景和意义鉴别人的身份是一个非常困难的问题,传统的身份鉴别方法把这个问题转化为鉴别一些标识个人身份的事物,这包括两个方面:身份标识物品,比如钥匙、证件、ATM 卡等;身份标识知识,比如用户名和密码在一些安全性要求严格的系统中,可以将这两者结合起来,比如 ATM 机要求用户同时提供 ATM 卡和密码这些传统的身份鉴别方法存在明显的缺点:个人拥有的物品容易丢失或被伪造,个人的密码容易遗忘或记错更为严重的是这些系统无法区分真正的拥有者和取得身份标识物的冒充者,一旦他人获得了这些身份标识事物,就可以拥有相同的权力 与传统的身份鉴定手段相比,基于人脸生物特征信息的身份鉴定技术具有以下优点: 用户易接受:简单易用,对用户无特殊要求 防伪性能好:不易伪造或被盗 “随身携带”:不用担心遗漏或丢失,随时随地可用除此之外,人脸识别技术还有主动性好,精确性高,性能/成本比高,自学习功能强等优点。
鉴于人脸识别技术在个人身份鉴定方面的众多优点,这项技术可以在很多领域得到应用: 国家安全领域协助公安,海关等国家安全机构加强对可疑人物、罪犯、恐怖分子的追踪、监控和识别 公众安全领域加强交通管制;确认身份证、护照等证件的真伪;验证各类信用卡的持卡人身份计算机交互领域根据计算机使用者人脸特征确定身份,提供个性化服务家庭娱乐领域等等R-2人脸识别技术在这些领域的充分利用,对于有效地鉴定个人的身份,防止犯罪和诈骗、提高办公效率、节约资源有着重大的社会和经济意义1.21.2 人脸识别技术简介人脸识别技术简介1.2.11.2.1 人脸识别的研究范围人脸识别的研究范围“人脸识别(Face Recognition)”的研究范围广义上讲大致包括以下 5 个方面的内容1(1) 人脸检测(Face Detection):即从各种不同的背景条件下检测出人脸的存在并确定其位置.这一任务主要受光照、噪声、面部倾斜度以及各种各样遮挡的影响.(2) 人脸表征(Face Representation):即采取某种表示方式表示检测出的人脸和数据的已知人脸.通常的表示法包括几何特征(如欧氏距离、曲率、角度)、代数特征(如矩阵特征矢量)、固定特征模板、特征脸、云纹图等.(3) 人脸鉴别(Face Identification)(通常所说的“人脸识别”):即将待识别的人脸与数据库中的已知人脸比较,得出相关信息.这一过程的核心是选择适当的人脸的表征方式与匹配策略,系统的构造与人脸的表征方式密切相关.(4) 表情/姿态分析(Expression/Gesture Analysis):即对待识别人脸的表情或姿态信息进行分析,并对其加以归类.(5) 生理分类(Physical Classification):即对待识别人脸的生理特征进行分析,得出其年龄、性别等相关信息。
从人的角度来看,他们之间并没有一个十分清晰和绝对的界限,实现其中之一往往也就同时实现了其他方面,他们之间存在着相互依赖的关系不过,为了便于计算机自动处理,我们还是将整个人脸识别研究的范围理解划分成以上 5 个部分1.2.21.2.2 主要的人脸识别技术主要的人脸识别技术通常,人类进行人脸识别依靠的感觉器官包括视觉,听觉,嗅觉,触觉等,一般人脸的识别可以用单个感官完成,也可以是多感官相配合来存储和检索人脸,而计算机的人脸识别所利用的则主要是视觉数据人脸图像2人脸识别的输入图象通常有 3 种情况:正面、倾斜、侧面但由于实际情况的要求,人们对人脸识别技术的研究以正面模式居多,它的发展大致经历三个阶段:人工识别阶段(识别过程完全依赖于操作人员),人机交互式识别阶段,机器自动识别阶段近十余年来,随着高速度高性能计算机的发展,人脸模式识别技术有了较大的突破,提R-3出了多种机器全自动识别系统根据人脸表征方式的不同,我们通常将人脸正面自动模式识别技术分成三类:基于几何特征的识别方法、基于代数特征的识别方法和基于连接机制的1识别方法1)基于几何特征的人脸识别方法这类识别法将人脸用一个几何特征矢量表示,用模式识别中层次聚类的思想设计分类器达到识别目的.这就要求选取的几何特征矢量具有一定的独特性,能够反映不同人脸之间的差别,同时又具有一定的弹性,以消除时间跨度、光照等的影响.几何特征矢量是以人脸器官的形状和几何关系为基础的特征矢量,其分量通常包括人脸指定两点间的欧氏距离、曲率、角度等.例如,Poggio 和 Brunelli 用改进的积分投影法提取出用欧氏距离表征的 35 维人脸特征矢量用于模式分类。
这种方法是比较直观的,侧重于人脸面部器官的轮廓和特征点的寻找,还需利用人脸结构的先验知识(人脸器官的几何位置,形状特征等),达到了一定的识别效果但这种方法往往是以少数特征点代替整个人脸二维图像,忽略了人脸器官和其他部位上的纹理信息2)基于代数特征的人脸正面自动识别方法这类识别法仍然是将人脸用特征矢量表示,只不过用的是代数特征矢量:即人脸图象在由“特征脸”张成的降维子空间上的投影Sirovich 和 Kirby首先将 K-L 变换用于人脸图象3的最优表示.Turk 和 Pentland进一步提出了“特征脸”方法,该方法以训练样本集的总体4散布矩阵为产生矩阵,经 K-L 变换后得到相应的一组特征矢量,称作“特征脸”这样,就产生了一个由“特征脸”矢量张成的子空间,每一幅人脸图像向其投影都可以获得一组坐标系数,这组坐标系数表明了人脸在子空间中的位置,实验表明其具有较强的稳定性,可以作为人脸识别的依据但研究表明,特征脸的方法随着光线、角度及人脸的尺寸等因素的引入,识别率急剧下降虽然可通过采用同一人的训练样本的平均来计算类间散布矩阵,但也只能在一定程度上纠正这个缺点由于对 KL 变换而言,外在因素带来的图象差异和人脸本身带来的差异是不加任何区分的,因此,不管如何选择正交基,也不能根本解决问题。
其改善的一个思路是针对干扰所在,对输入图象作规范化处理,其中包括将输入图的均值方差归一化、人脸尺寸归一化等此外,由于提取人脸特征时要用到一些复杂的代数运算,此方法运算量较大,不太适合实时性要求较高的场合3)基于连接机制(神经网络)的人脸正面自动识别方法这类识别法将人脸直接用灰度图(二维矩阵)表征,利用了神经网络的学习能力及分类能力这种方法的优势在于保存了人脸图象中的材质信息及细微的形状信息,同时避免了较为复杂的特征提取工作而且,由于图象被整体输入,符合心理学中对人类识别能力的解释但同时也由于图像被整体输入,存在着输入结点过高的问题,由此引发了网络训练时间长,计算量大,R-4不利于人工神经网络收敛等问题改善的方法之一就是在不影响网络分类识别能力的基础上,采取一定的措施对输入图像进行降维处理当然,还有一种常见的观点是将人脸识技术分为基于整体人脸特征的识别技术(特征2脸方法和神经网络方法)和基于人脸组成部件(眼睛等)特征的识别技术.1.31.3 人脸识别系统的构成人脸识别系统的构成人脸识别系统包括两个主要技术环节(如图 1-1 所示):首先是人脸的检测和定位,即从6输入图像中找到人脸及人脸存在的位置,并将人脸从背景中分割出来,然后才是对归一化的人脸图像进行特征提取与识别。
这里需要说明的一点就是,人脸位置矫正也属于人脸检测定位的范畴,并对后续的人脸特征提取和识别具有积极影响 图 1-1:人脸识别系统的基本结构1.41.4 论文内容概述论文内容概述本文对人脸识别算法的研究主要集中在以下两个方面:人脸位置矫正算法;人脸特征提取和识别算法以这两个算法的设计与实现为中心,论文的内容作了如下安排:第 1章 是对人脸识别的研究意义和人脸识别技术、人脸识别系统等背景知识的介绍第 2 章 借鉴了文献7的想法,设计并实现了一种新的基于眼睛定位的人脸位置矫正算法第 3 章 提出了利用主元分析法和 BP 神经网络实现的人脸特征提取与识别算法第 4 章 提出了基于第2,3 章算法的人脸识别系统结构第 5 章 是对本文的总结与展望图像或图像序列识别结果人脸图像人脸的检测与定位特征提取与识别R-5第二章第二章 人脸位置矫正算法人脸位置矫正算法本章针对大部分人脸识别系统建模中存在的不足,将人脸位置矫正问题引入思考,并根据人脸图像特点设计实现了一种新的基于眼睛定位的人脸位置矫正算法为方便叙述起见,我们称人脸在竖直平面内的倾斜角度为平面旋转角度,而称人脸在水平面内的倾斜角度为深度旋转角度。
本文中出现的人脸位置矫正说法都是针对平面旋转角度而言的2.12.1 人脸位置矫正问题的引入人脸位置矫正问题的引入作为人类智能的重要体现和个人身份鉴定的重要手段,人脸识别技术具有广泛的应用前景,已成为一项热门研究课题人脸识别的关键技术之一就是人脸的检测定位在一个完整的人脸识别系统中,能否对人脸进行正确的检测定位将对整个人脸识别系统的性能优劣产生极其重要的影响,而影响人脸检测定位的一个重要因素就是人脸在图像中的姿势实际中,由于受到人的行为习惯,生理特征以及图像采集环境等诸多因素的影响,人脸在采集到的人脸图像中的姿势往往并不是完全正立的,而是在水平和竖直平面内都存在一定的倾斜角度(即深度旋转角度和平面旋转角度)但是大部分的人脸识别系统都是针对正立的正面人脸图像而设计的,没有考虑到人脸图像可能存在的倾斜问题,致使这些人脸识别8系统从人脸倾斜的图像中提取的特征数据在一定程度上失效,并有可能进一步导致人脸识别系统在最终识别结果中产生误判针对这一情况,我们可以采取两种措施加以解决其一,研究新的适用于非完全正立人脸图像的特征检测方法并对人脸特征的提取作相应的调整,这种解决方法在文献9已有所尝试;其二,沿用现有的人脸识别系统,但在人脸图像送识别系统进行特征提取和识别之前(即在人脸检测和定位阶段),先进行人脸位置矫正的工作,这种方法在文献10中也已有所研究,并取得了较好的效果。
文献7也是在人脸检测和定位阶段进行人脸位置矫正的方法之一,该方法存在两个明显的不足之处:对于最关键的眼睛定位问题,由于仅仅考虑了眼睛所在图像块的纵向灰度变R-6化特点,结构居中度操作只能保证眼睛结构相对于图像块在竖直方向上居中,而无法保证水平方向上的眼睛结构居中;基于图像块灰度统计特征的眼睛匹配算法对于图像块光照条件过于敏感,匹配处理后的眼睛最终定位结果不佳尽管如此,文献7中利用图像块纵向复杂度搜索眼睛大致位置的方法和利用人脸结构对称性进行人脸位置矫正的思想是值得借鉴的本文借鉴7的想法,提出了一种新的基于眼睛定位的人脸位置矫正方法,它适用于背景较简单的单人脸灰度图像2.22.2 算法的设计思路算法的设计思路在介绍人脸位置矫正算法设计思路之前,先对人脸的主要特点作一分析人脸是一个典型的形变体,其特点是:人脸模型已知;人脸特征器官的分布具有对称性,例如眼睛等等;复杂的,高度相似的形变体基于对人脸特点的深入了解,我们得到了下面的设计思路:(1) 由于实验背景较简单,人脸在采集到的人脸图像中表现为一块复杂的灰度图像这就提示我们可以利用某种较简单的图像灰度分析曲线将人脸区域从人脸灰度图像中检测出来。
2) 人脸具有对称性,人脸的特征器官分布也具有这种对称性,这就提示我们可以通过准确定位人脸的某种特征器官,利用人脸图像的对称性对人脸图像位置加以矫正3)人脸区域纵向、横向灰度变化复杂,特别是眼睛周围,灰度变化尤为显著这就提示我们可以利用人脸区域的灰度变化特点实现对眼睛的定位4)眼睛的平面几何形状基本呈圆形或椭圆形,这就提示我们可以将眼睛及其周围灰度变化特点和眼睛的几何形状结合考虑,实现对眼睛的准确定位2.32.3 算法的基本实现步骤算法的基本实现步骤根据2.22.2节的设计思路,本节给出了基于眼睛定位的人脸位置矫正算法的基本实现步骤:(1) 灰度人脸区域(人眼搜索区域)的确定这一步主要完成对人脸左右、上下边界的确定,为眼睛的粗略定位作准备2) 人眼位置的确定这一步实现了眼睛位置由粗到细的定位3) 根据双眼的定位结果以及人脸的对称性实现人脸位置矫正2 2.4.4 算法参数设计算法参数设计和算法基本实现步骤的清晰化和算法基本实现步骤的清晰化R-7灰度变化是表征人脸特征的主要指标在单人脸灰度图中,相对于简单背景而言,灰度人脸区域表现为一块复杂图形;而在灰度人脸中,相对于脸部其他器官而言,眼睛与周围皮肤的灰度差异最为显著。
较脸部其他器官而言,眼睛的平面几何形状也很有特点,基本上呈圆形或椭圆形,且双眼关于人脸对称轴对称根据上述分析,为具体实现基于眼睛定位的人脸位置矫正算法,本节为横向N个像素,纵向M个像素的图像块(其灰度矩阵为,第i行MxNG第j列像素的灰度值表示为)设计了下面这些参数jiB,2.2.4.4.1 1 垂直方差投影垂直方差投影 2V表征了图像内在的纵向灰度值间变化的显著程度,其表达式为:2V= = (1)(2jVMijijVBM12,)(1其中,V为图像块的垂直积分投影,可以由公式 (2) 得到MijiBMjV1,1)(2.2.4.4.2 2 水平积分投影水平积分投影 H HH表征了图像在垂直方向上的灰度变化情况,其表达式为: (3)NjjiBNiH1,1)(2.2.4.4.3 3 图像块纵向复杂度图像块纵向复杂度 C C7C是针对人眼较其他面部器官纵向灰度变化更明显的特点而设计的,其表达式定义为: (4)111, 1|MiNjjijiBBC2.42.4.4.4 眼睛黑斑模型眼睛黑斑模型 F FF是针对人眼的几何形状近似为圆形或椭圆形的特点以及人眼与周围肤色灰度值差异而设计的,它的值体现了图像块内部的图像与眼睛图像的匹配程度,用于人眼的精确定位。
其表达式定义如下:F = min ( x + x ,12121, 1,)(MiNjjijiBB)2(iM211211,)(MiNjjijiBB)2(jN x + x , 12112, 1,)(MiNNjjijiBB)2(iM 21112,1,)(MiNNjjijiBB)2(Nj R-8 x + x , 11221, 1)(MMiNjjijiBB)2(Mi MMiNjjijiBB121211,)()2(jNx + x ) (5) 11212, 1)(MMiNNjjijiBB)2(Mi MMiNNjjijiBB12112,1,)()2(Nj 其中,为常数,用于调整横向灰度变化对眼睛黑斑模型的作用大小将这些参数应用于算法的基本实现步骤,可以得到较清晰的实现步骤首先,利用对图像灰度的垂直方差投影曲线以及水平积分投影曲线的处理确定灰度人脸区域(或称为人眼搜索区域);然后,利用图像块的纵向复杂度和眼睛黑斑模型确定人眼位置;最后,根据所确定的人眼位置及双眼的轴对称性,计算人脸倾斜角度并矫正2.52.5 基于眼睛定位的基于眼睛定位的人脸位置矫正算法的人脸位置矫正算法的具体具体实现实现2.5.12.5.1 灰度人脸区域(人眼搜索区域)的确定灰度人脸区域(人眼搜索区域)的确定 基于和H的灰度人脸区域检测算法步骤描述如下:2V(1) 对单人脸灰度图像样本集中灰度人脸大致位置进行分析,指定灰度人脸搜索区域(见图2-1)。
这一步工作可以提高区域定位速度,减小冗余信息(主要指服装)对区域准确定位造成的干扰 图2-1:指定的灰度人脸搜索区域 图2-2:垂直方差投影曲线与人脸的关系R-9图2-3:垂直方差投影曲线变换后的曲线 图2-4:人脸左右边界定位情况(2) 对灰度人脸搜索区域的垂直方差投影曲线作平滑处理,分析平滑后曲线,取凸峰的上升沿梯度值最大的点作为灰度人脸区域的左边界,取凸峰下降沿梯度值最小的点作为灰度人脸区域的右边界文献11中快速人脸检测的方法是垂直灰度投影法,该文对彩色图像的红色分量作垂直灰度投影,直接使用最大和最小梯度值作为界定人脸左右边界的条件,但该法在人脸倾斜度较大、面部光照强度变化较大(特别当背景也较亮且横向灰度变化明显)等情况下往往会造成误判这是由于垂直灰度投影反映的仅仅是图像在水平方向上的灰度变化,它无法解释图像内在的纵向灰度值变化的显著程度故本文采用垂直方差投影作为界定灰度人脸左右边界的基础,该投影曲线不仅能保留灰度人脸这一复杂图形(相对于较简单背景而言)纵向灰度值变化明显的信息(以凸峰表示),而且能十分有效将灰度人脸与背景加以区分(如图2-2所示)为改善曲线凸峰形状,以利于按梯度最大最小值定位灰度人脸左右边界,减少误判发生,本文引入函数 (6)) 1)(max)(lg()(02120jjbajfVNjV对垂直方差投影曲线进行变换,a,b是为调整曲线形状而引入的参数。
变换后的曲线如图2-3所示,由图可知,这种变换可以使凸峰区域内部的梯度变化得以弱化,凸峰区域边缘(即灰度人脸与背景的分界处)的梯度变化得以加强,从而更加有利于依据变换后曲线梯度最大最小值定位灰度人脸的左右边界人脸左右边界的定位情况如图2-4所示3) 定位左右边界后的狭长区域,自下而上大致又分为三个小区域;面部灰度区,头发灰度区,背景灰度区对该狭长区域作水平灰度投影,根据该曲线所反映的垂直灰度变化情况确定面部灰度区与头发灰度区的边界,并将其作为灰度人脸区域的上边界确定上边界的算法描述如下:/* 狭长区域大小为M x N,比例系数的初始值要预先设置,为比例系数增大的R-10步长,H(i)为第i行像素的水平灰度投影值,Hmax为水平灰度投影最大值 */Do Begin Hmax :=0; For I := 1 to M /* 自下而上读取当前行的水平灰度投影值 */ Begin If H(i) Hmax Then Hmax=H(i) If H(i) Hmax Then 将 i 作为灰度人脸的上边界,算法结束. End := +; EndWhile(true)(4)以左右边界及上边界所在的正方形区域作为灰度人脸搜索的最终结果。
事实上,人眼一般位于该正方形区域的上半部分,出于对眼睛检测速度,运算量的考虑,还可以将下边界适当往上抬(见图2-5) 图2-5:灰度人脸区域的最终定位情况2.52.5.2.2 人眼位置的确定人眼位置的确定人眼位置的确定又可以分为搜索复杂度最大的图像块和利用人眼黑斑模型准确定位人眼两部分2.5.2.12.5.2.1 搜索复杂度最大的图像块搜索复杂度最大的图像块R-11首先,将3.13.1得到的人眼搜索区域平均分割成竖长小图像块小图像块的宽为人眼搜索区域宽度的1/10,略宽于单人脸灰度图中黑色眼珠的宽度;小图像块的高为人眼搜索区域宽度的1/5然后,根据2.32.3图像块纵向复杂度的定义,计算并记录所有小图像块的纵向复杂度再将所有小图像块分别向右平移1/2单位宽度,向上平移1/2单位高度,计算并记录平移后各小图 图2-6:纵向复杂度最大的10个小块 图2-7:按纵向复杂度二次微调后的余下的小块像块的纵向复杂度对上述实验步骤中得到的纵向复杂度值从大到小排列,找出纵向复杂度最的10个小块实验发现,如图2-6所示,这些小图像块一般集中在眼睛,眉毛,刘海,鬓角这些灰度变化显著的区域,且这10个小图像块相互邻接重叠的块数较多。
对于同一高度上邻接重叠的那些小块,仅保留纵向复杂度最大的小图像块,删除其余小块对余下的小图像块在上、下、左、右小范围内微调,以使每个小图像块的纵向复杂度在其周围小范围内达到最大,再按保留灰度值大的小块的原则,删除有部分重叠的小块此时,如图2-7所示,余下的小图像数量已很少,但必定会有两块都同时包含眼睛和眉毛2.5.2.5.2.22.2 利用人眼黑斑模型准确定位人眼利用人眼黑斑模型准确定位人眼眼睛黑斑模型F是针对人眼的几何形状特征和灰度变化特点而设计的,该模型为图像块中纵向横向灰度变化赋予了方向权值,加强了图像块边缘的灰度变化对该参数模型的影响,从而使得那些只有准确包含人眼黑色眼珠且黑色眼珠位置居中的图像块才具有很大的计算值,用于实现人眼的准确定位2.5.2.12.5.2.1节 的处理结果已能粗略地定位人眼所在的位置,为减少眉毛对眼睛精确定位的干扰,取竖长小图像块的下半部分作为利用眼睛黑斑模型精确定位人眼的处理对象这样,这些新小图像块都是正方形,边长为人眼搜索区域宽度的1/10R-12将这些新小图像块在上、下、左、右小范围内微调,并分别进行眼睛黑斑模型的数值计算,找出每个新小块的最佳定位位置。
微调后按眼睛黑斑模型计算值自大到小对新小图像块排序通过实验结果发现,如图2-8所示,人眼黑斑模型计算值最大的新小图像块必定包含眼睛且该小块已处于人眼最佳定位位置(这里的人眼最佳定位位置指的是人眼结构位于图像块中心且图像块中心点为眼睛瞳孔的定位结果)取该计算值最大的新小图像块作为其中一只眼睛的最终定位结果在进行另一只眼睛的最终定位之前,先删除三类明显不包含眼睛的新小图像块:(1)人眼黑斑模型计算值为负的新小块这种类型的小块,其内部图像的几何形状特征、灰度变化特征与人眼的几何形状特征、灰度变化特征存在重大差异2)位置紧贴人眼搜索区域边界的新小块人眼位于人眼搜索区域的内部,这些紧贴边缘的新小块是处于刘海,鬓角,人脸与背景分界处的干扰小块3)在人眼黑斑模型计算值最大的小块下方,且与该小块连线所在直线斜率绝对值大于1 (即倾角绝对值大于45)的新小块图2-8:按眼睛黑斑模型一次微调结果 图2-9:眼睛所在图像小块的最终定位情况将余下的新小图像块(不包括已作为其中一只眼睛最终定位结果的那个小块)再一次在上、下、左、右小范围微调,并根据人眼黑斑模型数值计算结果实现各小块的最佳定位然后,取这些小块中眼睛黑斑模型计算值最大的那个小块作为另一只眼睛的最终定位结果。
对这些新小块需要作二次微调的原因在于,当人脸在竖直平面内的倾斜角度过大时,由于受到微调范围的限制,一次微调并不能保证包含眼睛图像的两个新小块都处于作为眼睛最终定位结果的位置眼睛所在图像块的最终定位情况如图2-9所示2.52.5.3.3 依据人脸图像的轴对称性矫正人脸位置依据人脸图像的轴对称性矫正人脸位置R-13人脸图像是一种具有轴对称性的几何图形,眼睛对称地分布于人脸对称轴的两侧,而且人脸的这种对称性不会随着人脸的倾斜而有所改变因此,可以通过对眼睛的准确定位来确定人脸对称轴,实现人脸位置矫正利用2.52.5.2.2节的眼睛位置确定方法可以找到两个包含眼睛的小图像块根据小图像块的位置计算人脸在竖直平面内的倾斜角度,再以过小图像块中心(即人眼瞳孔位置)连线的中点且垂直于该连线的直线为人脸对称轴,对人脸图像进行矫正,矫正后的人脸图像如图10所示 图2-10:矫正后的人脸图像2.62.6 算法实验算法实验结果分析结果分析图2-11: 部分人脸数据库图像矫正处理前后的情况实验采用与文献7相同的人脸数据库,将提取红色分量后的人脸灰度图像作为人脸位置矫正算法的初始样本集对真彩色人脸图像可以这样处理的原因在于:人脸肤色基调为红色,它包含了人脸的大量主要信息,而且红色分量信噪比相对其余两种基色分量的信噪比要高,处理起来更有效。
人脸图像尺寸为384*288,256级灰度,共有100幅,平面旋转角度(即人脸在竖直平面内的倾斜角度)不超过正负30我们采用VC+编程,在PIII 450 PC上R-14对该算法有效性进行验证,结果成功矫正人脸图像99幅,正确率达99% 部分人脸图像矫正处理前后的情况如图2-11所示实验还发现,对于存在较大深度旋转角度的人脸图像,只要双眼仍然可见,见图2-12,该算法同样有效,只不过此时根据双眼位置确定的人脸对称轴是与实际人脸对称轴平行的直线这说明该算法的鲁棒性是较强的 图2-12:深度旋转角度较大的人脸图像旋转前后该算法能够对人脸位置进行有效矫正的前提是眼睛的精确定位,也就是说,该算法能够首先确定眼睛在单人脸灰度图像中的位置,这对于人脸识别中后续的人脸特征器官(眼睛)定位具有重大意义2.72.7 结论结论本课题提出了一种基于单人脸灰度图像中眼睛定位的人脸位置矫正方法它充分考虑了眼睛的灰度变化特点、几何形状特征及双眼的轴对称性,提出了图像块纵向复杂度概念和人眼黑斑模型,在检测到灰度人脸区域后,利用对眼睛的准确定位和双眼的轴对称性,实现了人脸图像的位置矫正该算法正确率高,鲁棒性较强,特别适用于背景较简单的人脸位置矫正。
还需要指出一点就是,该算法可以准确定位眼睛,对人脸识别中后续的特征器官定位问题,具有一定的指导意义R-15第三章第三章 人脸特征提取与识别算法人脸特征提取与识别算法人脸特征提取和识别是人脸识别系统的关键组成部分本章将主元分析法和BP神经网络结合,提出了一种基于神经网络的主元分析人脸识别算法该算法先以人脸图像在主元分析法产生的低维子空间投影(即特征矢量)表征人脸图像,再以BP神经网络实现对各类人脸特征矢量的分类识别3.13.1 特征提取需遵循的原则特征提取需遵循的原则广义上来说,特征提取是一种从高维测量空间(在本文即人脸图像空间)到低维特征空间的一种映射(或变换)这种映射通常要遵循两个原则,即特征空间必须保留测量空间的主要分类信息;特征空间维数远小于测量空间维数3.23.2 主元分析算法主元分析算法R-16主元分析法正是满足3.13.1节特征提取原则的一种数据压缩方法,它可以将人脸图像投影到低维特征空间各个正交基上产生特征向量这种特征向量不但对光照、姿态、表情等干扰因素不敏感,还可以较好地反映了人脸图像的全局与局部特征主元分析法是一种特殊的KL变换KL变换是图象压缩中的一种最优正交变换,人们将它用于统计特征提取,从而形成了子空间法模式识别的基础。
关于正交基的选择有不同的考虑,即与较大特征值对应的正交基(也称主分量或主元)可用来表达人脸的大体形状,而具体细节还需要用与小特征值对应的特征向量(也称次分量)来加以描述,因此也可理解为低频成分用主分量表示,而高频成分用次分量表示其中,采用主分量作正交基的方法称为主元分析法(PCA),采用这种方法进行变换所产生的低维子空间对人脸的表达能力最佳主元分析法作为KL变换的一种特殊情况,对人脸的光照、姿态、表情变化不敏感,但出于进一步改善特征提取和识别的有效性考虑,还是应对主元分析法处理的人脸图像位置进行预先矫正本文2.52.5节提出的基于眼睛定位的人脸位置矫正算法就是一种较好的方法下面介绍主元分析法的基本算法设为大小的人脸图像灰度矩阵按列连接后产生的列向量的维数,N为训练hlM*hl*样本集中人脸图像数目,为训练样本集中第 幅人脸图像对应的列向量,则向量的协方差iXi矩阵可以表示为:X NiiiXXXXXN1)(1其中, NiiXNX11为对称矩阵,可对其进行对角化:X RrrrrXUU1其中,为的特征值,为相应的特征向量,构成标准正交系,为rXrR,.,21R的秩,为对角阵,对角线上的元素为的各特征值。
将XRU,.,21X在上的投影记为:iXrriP irriXP令iRiiiiXUPPPP,.,21则的协方差距阵为:iPR-17)(PPPPEii UXXXXEUii)( UUX由此可见,在上投影的方差就是对应的特征值iXrrr 从人脸图像重构的角度来说,只要选取前K个最大的特征值所对应的特征向量,将人脸图像向量向这K个最大的特征值对应的特征向量投影,就可以获得一个由K个分量组成的图像重构均方误差最小的投影向量该投影向量表征了人脸图像在特征子空间的位置,是主元分析法对人脸图像提取的最优特征主元分析法的具体实现依赖于矩阵的迭代计算,但也有神经网络的实现方法133.33.3 人工神经网络简介及人工神经网络简介及BPBP神经网络训练算法的数学描述神经网络训练算法的数学描述3.3.13.3.1 人工神经网络及其特性人工神经网络及其特性人工神经网络的研究已有近半个世纪的历史,它的发展经历了早期探索、20世纪70年代的过渡、20世纪80年代的高潮和20世纪80年代后期以来的热潮这四个阶段神经网络因其良好的特性,赢得了众多研究者的青睐,应用领域不断拓展,并已在模式识别和图像处理、控制和优化、预报和智能信息管理、通信等领域的应用中取得较大的进展。
人工神经网络具有以下特性:(1)并行分布处理神经网络具有高度的并行结构和并行实现能力,因而能够有较好的耐故障能力和较快的总体处理能力这特别适用于实时控制和动态控制2)非线性映射 神经网络具有固有的非线性特性,这源于其近似任意非线性映射(变换)能力这一点为非线性控制问题带来了希望3) 通过训练进行学习神经网络是通研究系统过去的数据记录进行训练的一个经过适当训练的神经网络具有归纳全部数据的能力因此,神经网络能够解决那些由数学模型或描述规则难以处理的控制过程问题4) 适应于集成神经网络能够适应在线运行,并能同时进行定量和定性操作神经网络的强适应和信息R-18融合能力使得网络过程可以同时输入大量不同的控制信号,解决输入信息间的互补和冗余问题,并实现信息集成和融合处理这些特性特别适于复杂、大规模和多变量系统的控制5) 硬件实现神经网络不仅能通过软件而且可借助软件实现并行处理近年来,一些超大规模集成电路实现硬件已经问世,这使得神经网络成为具有快速和大规模处理能力的实现网络3.3.23.3.2 BPBP神经网络训练算法的数学描述神经网络训练算法的数学描述BP网络(Back-Propagation Neural Network)是一种单向传播的多层前向人工神经网络。
这种网络不仅有输入节点,而且还有一层或多层隐含节点对于输入信息,先要向前向传播到隐含层的节点上,经过各单元的特性为Sigmoid 型的激活函数(又称作用函数、转换函数或映射函数)运算后,把隐含节点的输出信息传播到输出节点,最后给出输出结果网络的学习过程由正向和反向传播两部分组成在正向传播过程中,每一层神经元的状态只影响到下一层神经元网络如果输出层不能得到期望输出,也就是实际输出值与期望输出值之间有误差,那么转入反向传播过程,将误差信号沿原来的连接通路返回,通过修改各层神经元的权值,逐次地向输入层传播去进行计算,再进过正向传播过程,这两个过程的反复运用,使得误差信号最小实际上,误差达到人们所希望的要求时,网络的学习过程就结束BP算法是在导师指导下,适用于多层神经元网络的一种学习,它是建立在梯度下降法的基础上的,为此常以Sigmoid型函数作为输出函数下面以处于BP神经网络某一层的一个计算单元为例,对BP算法作一数学描述12设BP神经网络的某一层上有一计算单元,它是该层的第个单元,脚标 代表其前层的ji第 个单元,脚标代表其后层的第个单元,代表本层的输出,是前层第 个单元ikkjOjiw,i到本层第个单元的连接权值,如图3-1所示。
j当输入某个样本时,从前到后对每层各个单元作如下计算(正向算法) iijijOwnet, )(jjnetfO 对于输出层而言,是实际输出,是理想输出值,此样本下的误差为jjOy jy jjjyyE2)(21为简化公式,定义局部梯度R-19 jjnetE考虑权值对误差的影响,可得jiw, ijijjjijOwnetnetEwE权值修正因使误差最快地减小,修正量为 ijijOw )()() 1(twtwtwijijij若节点为输出单元,则j jjyO )( )(jjjjjnetfyynetE若节点不是输出单元(即为隐层单元),将对后层的全部节点都有影响,因此,jjO kkjjkkjjjkkjjnetfwnetOOnetnetEnetE)( 在实际计算时,为加快网络权值收敛速度,往往在权值修正量中加上前一次的权值修正量,一般称为惯性项,即 ) 1()(twOtwijijij综上所述,反向传播算法步骤如下:(1) 选定权系数初始值2) 重复下述过程直至收敛(对各样本依次计算)从前向后计算每一层上各个单元的jO iiijjOwnet )(jjnetfO 对输出层计算j )( )(jjjnetfOy 从后向前计算个隐层jR-20 kkijjnetfw)( 计算并保存各权值修正量 ijijijOtwtw) 1()(修正权值 )()() 1(twtwtwijijij以上算法是对每个样本作权值修正,也可以对各样本计算后求和,按总误差修正权值。
j 反向传播算法中有两个参数和,步长对收敛性影响很大,惯性项影响收敛速度,它们的取值要根据实际情况而定3.43.4 基于神经网络的主元分析人脸识别方法基于神经网络的主元分析人脸识别方法现行的人脸识别技术通常可分为三类:基于几何特征的人脸识别方法,基于代数特征1的人脸识别方法和基于连接机制(也称为神经网络)的人脸识别方法其中,基于神经网络的人脸识别方法较其他两种人脸识别方法的优势在于保存了人脸图像中的材质信息及细微1的形状信息,同时避免了较为复杂的特征提取工作;而且,由于图像被整体输入,符合格式塔(Gestalt)心理学中对人类识别能力的解释神经网络方法的优点在于具有很强的自相关性,它对于存在噪声,甚至是有部分遮挡的人脸图像,有时也能正确识别与其他两种人脸识别方法一样,神经网络的人脸识别方法也存在着人脸特征提取问题人脸图像存在着光照、姿态、表情等因素的影响,这使得同一个人的多个脸部图像灰度矩阵间也出现较大差异因此,人脸特征提取的任务是针对这些干扰因素,提取出具有一定稳定性、不变性、有效性的人脸特征信息用于人脸识别主元分析法正是满足这种特征提取要求的一种有效方法,它不仅能保留所需的识别信息,而且特征提取后的数据维数大大降低。
结合主元分析法和神经网络在人脸识别中的优势和特点,本文提出一种基于神经网络的主元分析人脸识别方法首先,在降低人脸图像分辨率的基础上使用非线性主元分析神经网络来进行特征数据压缩,提取出降维后的人脸特征数据;然后,利用BP神经网络实现对降维特征的分类识别人脸识别的流程如图3-2所示R-21输入图像识别结果特征提取降维处理特征压缩网络识别图3-2:人脸识别流程图。