1、(2011届)毕业设计题目基于神经网络的人脸识别系统设计姓名专业电子信息工程班级学号指导教师导师职称2011年5月28日基于神经网络的人脸识别系统设计摘要基于神经的人脸识别系统是一个很有意义的课题,这是一种生物特征识别技术,即利用人类本身的固有生物特征对个人进行身份认证,与传统的身份识别的方法相比较具有更可靠、更有效、更安全等的优点。近三十年来越来越受到学者和专家的重视,并且在门禁系统、视频监视、公共安全等社会安全管理上都具有广泛的应用。本次研究是在ORL人脸数据库的基础上,应用神经网络的技术,通过MATLAB软件编程对进行人脸的特征提取和识别的。主要内容如下1对人脸识别的来源、意义、难点以、
2、发展应用、主要内容等有一个系统性的认识。2更深入的了解人脸识别的基本流程和主要过程。3了解人脸特征提取的各种概况和主要分类,并且系统性的了解BP神经网络。4解释PCA,并通过软件编程进行人脸识别。关键词人脸识别、特征提取、主成分分析、BP神经网络IFACERECOGNITIONSYSTEMDESIGNBASEDONNEURALNETWORKABSTRACTFACERECOGNITIONBASEDONNEURALSYSTEMISAVERYSIGNIFICANTISSUE,WHICHISABIOMETRICIDENTIFICATIONTECHNOLOGY,NAMELYTHEUSEOFTHEINHE
3、RENTHUMANBIOLOGICALCHARACTERISTICSOFTHEIRINDIVIDUALIDENTITY,WITHTHETRADITIONALMETHODOFIDENTIFICATIONCOMPAREDWITHTHEMORERELIABLE,MOREEFFECTIVESAFETYADVANTAGESLASTTHREEDECADESMOREANDMOREATTENTIONBYSCHOLARSANDEXPERTS,ANDACCESSCONTROLSYSTEMS,VIDEOSURVEILLANCE,PUBLICSAFETY,SOCIALSECURITYMANAGEMENTHASAWID
4、ERANGEOFAPPLICATIONSTHESTUDYISBASEDONTHEORLFACEDATABASE,NEURALNETWORKTECHNOLOGY,THROUGHMATLABSOFTWAREPROGRAMMINGOFTHEHUMANFACEFEATUREEXTRACTIONANDRECOGNITIONFOLLOWINGMAJORELEMENTS1THESOURCEOFRECOGNITION,MEANING,DIFFICULTTODEVELOPAPPLICATIONS,THEMAINCONTENTS,WHICHAREASYSTEMATICUNDERSTANDING2ABETTERUN
5、DERSTANDINGOFTHEBASICFLOWANDTHEMAINRECOGNITIONPROCESS3TOUNDERSTANDAVARIETYOFFACIALFEATUREEXTRACTIONANDTHEMAINCATEGORY,ANDSYSTEMATICUNDERSTANDINGOFTHEBPNEURALNETWORK4EXPLAINPCA,CARRIEDOUTTHROUGHFACERECOGNITIONSOFTWAREPROGRAMMINGKEYWORDSFACERECOGNITION、FEATUREEXTRACTION、MAINCOMPONENTANALYSIS、BPNEURALN
6、ETWORKII目录摘要IIIABSTRACTIV1绪论111人脸识别的来源112人脸识别的意义113人脸识别的综述2131发展和应用2132主要内容3133基本流程414人脸识别的难点62特征提取821特征提取的简述822人脸特征提取分类8221基于局部特征法8222人脸器官定位法923主成分分析103BP神经网络1431BP神经网络简介1432BP神经网络算法154实验分析和结果1941程序分析1942实验结果245总结与展望2851总结2852展望29参考文献30致谢31附录32附录1MAIN32附录2CREATEDATABASE33附录3EIGENFACECORE33附录4RECOGN
7、ITION34III毕业设计01绪论11人脸识别的来源自1990年之后,人脸识别得到了空前的发展,许多理工科大学和IT产业公司都开始对此进行了研究,通过对人脸图像的检测标准化,然后进一步分析人脸的表征,提取人脸的特征,识别人脸,最后输出相应的符号。人脸识别其实是基于光学的人脸图像的身份识别和验证,通过属性分离、特征提取、分类判断得到最后的结果。12人脸识别的意义在如今的21世纪,人类的生活节奏不断加快,生活质量也有了提高,但是安全问题却成了让我们担心的主要问题之一。不管是各种上网游戏、还是办公、家居等都涉及到个人的财产安全问题,一直以来这些基本的安全问题都是通过简单的符号密码进行主要的安全保护
8、,如今需要服务的数量不断的增加,简单的密码保护已经不能很好的对我们进行基本的保护了。在现代社会中,我们在日常生活中经常会遇到的基本问题就是对身份的识别。在很多场合都需要通过鉴别别人的身份或是证明自己的身份,传统的一些身份识别方法主要是基于身份标识物和身份标识知识来识别或者证明身份,如证件、卡片、用户名、密码。但是自从出现了人脸识别技术之后,人们对身份的识别有了突破性的发展。人脸识别具有安全性、可靠性、准确和实用性等的优点,而与其他的生物识别技术相比较又有这样的几个优点1、人脸识别是不需要一些人为的行动上的配合,但是其他生物技术识别方法都是需要的。2、在远距离的监控当中,人脸识别技术仍然可以应用
9、。3、由于现在有的是第一代有的是第二代身份证,而每一个身份证都具有人脸正面的照片,所以说我们拥有的人脸库必须是最完善的,包括所有人的人脸图片,然后我们才可以利用这个库为基础又直观又方便的来核查每个人的身份资料。4、与其他的基于生物特征的识别技术相比较,人脸识别技术还有信息又丰富,特征记录更加方便,使用面相当广泛等的优点。总的来说人脸识别系统在使用上更加方便、快捷,更适用于我们现代人的日常生活。基于神经网络的人脸识别系统设计113人脸识别的综述131发展和应用人脸的识别是基于生物特征识别技术的一种主要方法。早在1888年和1910年,高尔顿在NATURE杂志内发表了两篇关于通过人脸进行身份识别的
10、文章,而且对人类自身的人脸识别能力也进行了分析1。自1990年之后,人脸识别得到了空前的发展,许多理工科大学和IT产业公司都开始对此进行了研究,通过对人脸图像的检测标准化,然后进一步分析人脸的表征,提取人脸的特征,识别人脸,最后输出相应的符号。人脸识别其实是基于光学的人脸图像的身份识别和验证,通过属性分离、特征提取、分类判断得到最后的结果。由于近年来人类生物特征已经越来越广泛地用于身份的识别,而且生物特征也可以更好的进行安全控制,世界上许多的国家政府都在大力推动生物识别技术的发展与应用。与原来的人类身份识别技术,例如个人密码、磁卡、智能卡等,相比,人类生物特征的识别技术就具有安全可靠、不易伪造
11、、特征唯一、不可窃取等的优点2。人类本身就具有很多相对独特的特征是其他生物所没有的,就如虹膜、语音、DNA、指纹、人脸等。就是出于这些相对独特的人类特征,并结合现有的计算机技术,发展了许多的基于人类的生物特征而进行人类身份识别的技术,例如DNA识别技术、语音识别技术、指纹识别技术、虹膜识别技术、人脸识别技术等。从应用的角度来看人脸识别主要有两大类的作用1、人脸身份识别就是根据人脸的图像识别出人物的身份,从而解决了这个人脸是谁的问题3;2、人脸的身份确认或者说是验证判断其图像中的人脸是否是所指定的人,就是解决了是不是某个人的问题。但是人脸识别技术却是具有广泛的应用前景,此技术是生物识别技术的其中
12、一种,由于其特有的唯一性、稳足性、方便性等特点被越来越多地应用于除了安全问题以外的其他各种身份识别的领域3。人脸识别技术主要应用在以下方面1在安全防范领域当中的应用社会上有很多重要的部门,例如军事、金融、保密等的部门都需要对出入的人员进行对其的身份识别,用来防止信息外泄和不法现象的产生。使用人脸技术可以更加方便的进行身份识别,但也不能使被识别对象感到不舒服。2在犯罪刑侦领域当中的应用在很多刑侦工作中,对罪犯的抓捕是非常重要的一个环节。应用了人脸识别技术可以根据犯罪的人脸图像在机场、港口、车站等重要的交通场所进行必要的监控,从而大大的帮助了警察对罪犯抓捕工作的开展。毕业设计23在公共事业领域当中
13、的应用在现代的社会中,许多领域都需要对我们进行身份验证,比如交通、银行、保险、等的公共事业部门。可以采用传统的密码、IC卡等的手段和技术对人进行其身份的验证,但却具有安全性差、易遗失、易伪造等缺点,一旦采用人脸识别技术可以进行身份验证就能够更很好地克服传统的身份验证手段与技术的缺点4。此外人脸识别的研究还具有很重要的理论研究的价值。由于人脸的模式具有特殊性,人脸识别的研究涉及到图像处理、模式识别、神经网络、计算机视觉、认知科学、心理学、生理学等许多学科领域,所以说对人脸识别技术的深入研究也能够推动这些基础研究的更快发展。132主要内容人脸识别的主要内容包括这样三个步骤人脸检测、人脸表征、人脸识
14、别。在这几个步骤中,每一个多少相辅相成,缺一不可A首先人脸检测是判断输入的图像中是否有人脸的存在,如果存在则给出相应人脸的位置和大小;B然后是面部特征的定位就是对找到的人脸检测,检测它主要器官位置和形状等各种信息;C最后是进行人脸比对根据在面部特征定位的结果,与已知库中人脸进行对比判断出该人脸的身份信息;这就是人类检测的作用。人脸识别的研究方向主要有人脸检测与跟踪技术、面部关键特征定位及人脸2D形状检测技术、人脸确认与识别技术,而这些研究中又有一些关键的问题,一直影响着人脸识别的结果,也是我们一直想解决的主要问题,例如人脸识别中的光照问题、姿态问题、人脸的特征提取问题,其中这光照的变化是影响人
15、脸识别性能好坏的最关键因素,对光照问题的解决程度直接关系着人脸识别实用化进程的成败5。所以一般在对其进行系统分析的基础上也会考虑对其进行一些量化研究的可能性,包括对光照强度和方向的量化、对人脸反射属性的量化、面部阴影照度分析等。而人脸识别中的姿态问题也在整个过程中有比较大的影响,姿态问题会涉及头部在三维坐标系中绕三个相互垂直的轴的旋转造成的面部变化。人脸识别的难点不见包括光线、距离、角度、表情等对于人脸的图片的影响,而且在人脸的规范化过程中队精确度也有要求,越精确对于特征提取的帮助越大6。另外在人脸的特征提取上,到目前为止,也没有完全完美的提取方法可以完全无误差,怎么样可以更加快而准确的让系统
16、识别出人脸,更需要设计者对特征的提取有更加新的理解和突破。基于神经网络的人脸识别系统设计3133基本流程在人脸识别的过程主要由软件进行,MATLAB主要所需要完成的步骤包括人脸检测和跟踪、特征提取、特征降维、匹配识别(FACEDETECTIONANDTRACKING、FACEEXTRACTION、FACEDIMENSIONALITYREDUCTION、MATCHINGANDCLASSIFICATION)。人脸检测/跟踪是人脸检测是人脸识别系统的第一个步骤。这个步骤的主要目的是要在输入的图像中寻找出人脸区域。具体的来说就是随便给定一幅人脸图像,人脸检测的目的是确定该图像中是否有人脸定的存在,如果
17、有人脸存在,那么就给出每个人脸的具体位置、范围。实际的应用中人脸图像的采集和获取在非受控的条件下进行,这样所得到的图像的人脸在尺寸、明暗、遮挡、朝向、分辨率等方面都有很多不一样,使同一人脸出现各种的变形,并有可能导致各种误识漏识等的失败情况6。为校正人脸在光照和旋转等方面的变化需要采用一些包括几何归一化和光照归一化等手段来调整不同的人脸图像,以利于用统一的算法进行识别。特征提取是为了区分出不同的人脸而提取各种人脸的独特性质,也就是要从人脸图像中映射出提取一组能反映人脸特征的数值用以表示样本。那就首先需要某种表示方式来表示检测出的人脸和数据库中已知的人脸。通常的表示方法主要包括几何特征(欧氏距离
18、、曲率、角度)、代数特征(矩阵或特征向量)、固定特征模板和特征脸等。特征降维是指从人脸图像中提取很多不同的特征,所以表征人脸的原始特征对应高维空间的数据,例如对应一幅MN的图像,空间维数就可以达到MN。直接利用这样的高维数据进行识别除了需要很多的匹配计算量外,很难对各高维数据的描述能力进行有效的判断,所以也不能保证基于这么多数据进行的识别结果的正确性7。在特征提取之后,需要采用紧凑的人脸表征的方式,可将原始的特征进行筛选组合,之后再进行集中信息、降低维数,可以使这些低维空间的有效性得到一定的提高,有利于接下来的匹配分类。匹配识别是指在特征提取的基础上,选择恰当的匹配策略,可以把待识别的人脸与数
19、据库中已知的人脸进行匹配比较并且建立它们之间的相关关系,输出所作出的判断决策或者说识别结果。与人脸检测不同的是,这里所利用的主要是人脸个体的差异信息。通过对人脸检测和人脸表征可以达到人脸识别的目的。但是过程中主要就是人脸检测/跟踪,特征提取,特征降维,匹配识别。在这几个主要过程中,又有训练和识别的过程。在下面的图21人脸识别总体设计结构流程图中毕业设计4已有人脸库人脸检测定位图像预处理特征提取与选择训练获取图像人脸检测定位图像预处理特征提取与选择识别给出身份图11人脸识别总体设计结构从图11中可以看出,其主要的功能模块有以下几个部分(1)图像获取人脸图像数据源一般主要包括运动图像和静止图像,通
20、过数码照相机、手机、摄像头等的数字输入设备获取,或者是直接从现有的图片库中取得。在本次的研究中采用的图像,是直接使用现有的人脸库。(2)人脸检测定位该模块是用来分析输入的图像,判断其是否有人脸,如果有则找出人脸的相应位置,然后把人脸图像从整个图片中分离出来。也就是对图片的删选,在本次研究中,不需要对人脸检测定位。(3)图像预处理预处理是要尽可能的使得人脸图像处于同一尺度和标准,可为后续处理提供出高质量的输入人脸图像。这部分包括对于抽取图像的尺度归一化、灰度归一化、去光照、降噪、白平衡等8。本次研究直接采用已经预处理好的图片,不需要此步骤。(4)特征提取和选择对于处理之后的人脸图像按照某种方法抽
21、取出能够用于识别的特征,把原始的人脸图片映射到新的特征空间。本次研究中,这个步骤非常重要,在下面会有具体方法的讲解。(5)训练也就是分类器的设计。这个过程主要是生成可用于识别的参数。一般,在已有的样本训练集的基础上确定一定的判定规则,然后要按这个规则对被识别的对象进行分类所得到的结果错误识别率最小,即结果期望最大。基于神经网络的人脸识别系统设计5训练在本次研究中也有用到。(6)识别通过比较获得的未知人脸参数与训练所得的参数完成人脸的分类和判断并且给出识别的结果。本次研究成功的对人脸进行了识别。14人脸识别的难点每个技术都是由不成熟慢慢发展的,人脸识别技术从发展到现在,已经克服了重重困难,但是如
22、今仍有许多问题和难点需要我们努力。目前,人脸识别技术的主要难点有A影响人脸识别技术性能的最关键因素就是光照的变化,对这个问题的研究程度和解决方法直接关系到人脸识别实用化进程的是否可以取得成功,在人脸图像预处理中,主要是归一化阶段,应该尽可能地补偿或者消除光照对识别性能的影响。B成像角度和像距离因素对人脸识别性能的影响,也就是指人脸的姿态的变化,会垂直于现有图像平面的两个相对的方向进行深度旋转,便会造成人脸的面部信息的部分丢失,直接影响图片预处理。C人脸在不同的年龄阶段,会有明显的差别。如果身份证是很久之前照的,在逃犯的照片也就是很久以前的,那么在公安部门的实际的应用当中,年龄问题就成了一个最突
23、出的问题。D现在采集图像的设备种类也很多,主要用到的就有扫描仪、摄像机、数码相机等。由于成像的机理是互不相同的,那么会导致形成的同类的人脸图像的识别率相对较高,而对于不同类间的人脸图像的识别率就相对较低了。随着现在人脸识别技术的不断发展,这一问题已经逐步得到了解决。E人脸图像的数据量很多。由于考虑到目前的计算量,现在在人脸定位与识别算法研究中大多数是使用尺寸比较小的灰度图像。例如一幅6464像素的256级的灰度人脸图像就会有4096个数据,而每一个数据就会有256可能出现的取值9。定位与识别的算法一般都比较复杂,如果是在人脸库很大的情况之下,计算量肯定也会很大,那么这样个时候速度是很难以让人忍
24、受的。而灰度的数据事实上就是去除了色彩和运动等有用信息。若是使用全部的信息,计算量就会变得更大。本次研究是直接采用已有的图片库的,这样的难点处理并没有遇到,但是对于系统性的了解人脸识别是很有必要知道这些基本知识的。毕业设计62特征提取21特征提取的简述人脸特征提取,即人脸表述是指对人脸进行特征建模的过程,其目的是为了提取出在高维的人脸模式下的低维特征,这样可以更好的为后续的人脸识别进行服务。人脸的特征提取技术起源于人脸识别技术的发展。因为受到许多技术水平上的限制,以前人们都是用几何特征来描述人脸的模式并对人脸进行分类。但是很明显人脸几何特征表述的是人脸各个部位之间的关系和联系,事实上更加适合用
25、在人脸检测的任务上。近十几年来,人脸的特征提取随着人脸识别技术的发展也越来越受到人们的关注,并在安全和监控上有着广泛的应用。人脸特征提取的过程在本质上来说比分类过程更加具有决定性的特征。从人类自身的识别方法上来看,很难从表面想象上把特征提取和识别过程完全分开来说,因为这两个过程是互相反馈、互相启发、互相协作的关系。在系统的实现过程中,特征提取的过程所具有的有效性相对于识别过程来说更加不容易定量。很多因素影响着人脸特征提取的多变性和系统的复杂性,例如说光照、表情、视角等各方面因素的变化10。22人脸特征提取分类特征提取技术根据其采用的准则不同主要可以分成两种基于类别可分离准则监督法和基于描述准则
26、非监督法。在人脸识别的应用技术中根据所提取特征的不同,也可以分成两种基于局部特征的方法(LOCALFEATUREBASED)和基于整体的方法(HOLISTICBASED)。基于局部特征的方法是利用人脸局部的一些几何特征的相对位置和相对距离描述人脸特征,例如眼睛、鼻子、嘴巴等之间的相对位置和距离。基于整体的方法是对于整个人脸是整体考虑,在此次研究中不进行深入研究。而对于局部特征的方法,又可以分成基于局部特征法和人脸器官定位法11。下面主要对这两个进行介绍221基于局部特征法在人脸识别过程中,基于局部特征法是把人脸重要器官的几何关系和几何形状作为所要提取的人脸特征,重要器官主要是指嘴、鼻、眼;一般
27、的特征分量主要包括特征点之间角度、欧氏距离、曲率等。由于这个方法可以实现对人基于神经网络的人脸识别系统设计7脸主要特征的一个高效的描述,所以说具有很明确的物理意义。基于局部特征法也具有明显的缺点特征点提取与定位难度大,稳定性比较差,只描述了人脸器官的基本形状和结构关系。所以说通过这个方法提取人脸特征更加适用于人脸的检测任务。BLEDSOE最早研究人脸识别是通过人工来标定人脸的特征点,并且用特征点之间的距离和比率参数来描述人脸的主要信息,然后建立成一个半自动的人脸识别的系统。这个方法因为是人工提取的,所以说这个方法允许较大范围的光照变化、头部转动和倾斜。之后KELLY在这个基础上进行了改进,采用
28、自顶向下的图像分析的方法来自动提取身体轮廓和头部信息,并且检测眼睛、鼻子、嘴巴的位置,然后又把身高、头、脖子、肩膀等的宽度和两眼间距、眼鼻间距、眼嘴间距等作为特征来进行进一步的分类12。在这个基础上,LAM与YAN提出一种在视角变化的情况下提取几何特征的方法,又使得特征提取有了更大的进行。经过BRUNELL和POGGIO的研究表明,人脸的脸部特征定位的准确性越高,那么基于局部特征的人脸识别正确率也就越高。总的来看,基于局部特征的方法主要就是通过准确测量人脸器官和器官之间的几何特征,来简约的描述出人脸信息的模式。222人脸器官定位法人脸器官定位的方法根据其现在所依据的基本信息类型不同,又可以分为
29、基于几何形状信息定位方法、基于先验规则定位方法、基于外观信息定位方法这三大类。1基于几何形状信息的方法的基本思路是根据人脸的脸部器官形状特点来构造出一个几何模型,里面含有一个可变的参数,并且设置一个能够评价函数来说明被检测区域和模型之间的匹配程度。搜索过程中不断的调整参数的大小使得评价函数值最小化,这样就使得模型收敛在待定位的脸部主要特征上。这个方法是很具有逻辑思想的,但是模型初始位置对最后定位准确性的影响很大,而且算法比较复杂,计算量也很大。基于几何形状信息方法又主要可分成主动轮廓模型法、点分布模型法、变形模板法、2基于先验规则的方法是一种对于人脸的脸部特征进行一般特点的经验描述。一般来说,
30、人脸图像中会有一些明显的基本特征,比如脸部区域(主要指眼睛、鼻子、嘴巴等脸部特征)亮度一般会比周边区域低,两个眼睛是大致上对称的,鼻子和嘴巴都是分布在对称轴上的。为了能够利用这些基本的特征对人脸进行定位,首先要对输入的图像做一些变化和处理,使得要使用的那些特征得到强化,之后再根据一定的规则从图片中选出特征点或特征区域。这个方毕业设计8法的难点是怎么样表述规则,怎么样处理规则的准确性和普遍适应性之间的矛盾。基于先验规则法代表性的方法主要又有镶嵌图方法和投影分析法。其中投影分析法的计算量比较小,要求背景简单。3基于外观信息定位法是把一定区域中的子图像看成是在高维空间当中的一个点,这样一来在同一类型
31、当中的脸部的特征就可以描述成一个在高维空间中的点集合。那么也就可以用统计的方法对我们所用到的目标人脸分布规律进行建模。在搜索过程中是通过计算待测区域和模板的匹配程度来判断在此之中是否包含目标人脸的脸部特征。PENTLAND和TURK用主成分分析法模型重新构造了检测区域,并求出了重构图和原来图片之间的距离,当此距离小于一定值时,就被认为是候选区域。为了实现尺度的无关性,COOTES等采用一种金字塔搜索策略,先对目标图片进行了多级采样以便得到一系列分辨率不一样的图片,然后在保持所扫描的窗口大小不变,在这些图像上分别做遍历搜索13。总的来说,人脸器官定位法最主要的是对人脸部的器官位置的确定从而进一步
32、对人脸特征进行表述,通过更加科学的方法使得接下去的人脸识别能够更加顺利的进行。不管是使用哪种的特征提取方法对人脸进行特征的提取,很明显的可以看出在整个人脸识别的过程中,特征提取对整个人脸识别的结果具有很大的影响,如果不能对人脸的特征进行准确的提取和信息的处理,最后出现的人脸识别结果很有可能是错误,为了能够达到人脸识别的目的,不断提高人脸特征提取的准确性是必须的,需要我们对此进行更加深入的研究和探索。23主成分分析主成分分析法(PRINCIPALCOMPONENTANALYSIS,PCA)是模式识别和判断分析中最常用到的一种线性的映射方法,也是当前使用最为广泛的特征提取的方法。研究表明主成分分析
33、提取出来的图片特征和人们在视觉上感知的特征具有很大的相似性,所以一直以来是信号恢复的一种经典算法。主成分分析法是根据样本点在多维空间中的位置分布,依据样本点在空间中所变化的最大方向(方差最大的方向),作为判断矢量用以实现数据的特征提取和数据压缩。从概率统计的观点可以知道若某个随机变量的方差越大也就是代表这个随机变量所包含着的信息量越多;若该变量的方差为零,则说明该变量此时为零,也就不包含任何的信息量。所谓的主成分就是指原始数据的若干个变量经过映射或者线性组合之后就可以得到变量,而这个变化使得变换之后的变量的方差达到最大值,这个就是为第一主成分。其各个主成分之间都是基于神经网络的人脸识别系统设计
34、9互相独立没有线性关系的,即不正交。从第一主成分之后,其他各个主成分之间就按照方差的大学进行排序,即根据其所对应的特征值大小进行排序。在主成分中若某个主成分方差比较小就会被认为是噪声,在分析的时候是不会把这样的主成分引入整个模块的,这样可以使得分析所得到的主成分有了一定的减少,也就达到了降低维数的目的。主成分中的任何两个都可以构成判别的分析平面,也就可以实现高维空间向其他维数的平面映射的目的。通常取方差相对比较大的几个主成分用来构成判别的分析平面。下面我们主要讨论下主成分分析法的原理若在N维的空间中有随机向量用表示,在利用公式把进行零均值的处理,则。若是对X用一组完备的正交基,J1,2,N展开
35、,可以得到假设只用前面的K项进行重新的构造,就可以得到那么在这情况下的均方误差由于且(24)所以可以得到(21)(22)(23)(25)毕业设计10其中是和X是总体协方差矩阵。为了使得重新构造的均方差达到最小值,并且可以满足正交的条件,采用拉格朗日,把函数对(J1,2,N)求导,则得到0,JK1,K2,N(27)设K1,那么U1,U2,UN为C(总体协方差矩阵)的本质向量,而里面的,分别是其所对应的特征值,然后这些向量经过一定的正交处理变化就可以形成一个空间成为特征空间。将U1,U2,UN按照其特征值进行从大到小的排序,那么就可以得到结果对于任何一个随机变量,若应用C的前面K个最大的非零的特征
36、值所对应的特征向量就通过坐标轴来展开,可以在相等截断长度的情况下得到所有的正交展开式当中最小的截断均方误差在人脸识别过程中,PCA的算法和应用主要有1训练过程1确定训练样本集从ORL人脸库TESTDATABASE中选取几幅人脸图像到训练样本集之中,构造出矩阵X为训练样本集;2计算所选取的人脸图像的平均值;3计算人脸图像的平均值的协方差矩阵CEXXT;4计算协方差矩阵的特征值和特征向量V,DEIGC5将特征值按照从大到小顺序进行排序,并且选择前面几个最大的特征值所对应着的UI用作变换矩阵W;(26)(28)基于神经网络的人脸识别系统设计116把所选取的训练样本做YWTX的变化,并且保留上式中的系
37、数Y。2识别过程1读取一幅等待识别的图像;2求取此待识别图像相对于平均的人脸差值的图像;3求人脸差值的图像在各个特征向量上有的投影,对新的样本也做出对应的变换,在计算出欧式距离后看出其与哪个Y是最接近的,然后与之最近的那个就被判为那一类;4与实际的人脸图像比较从而确定系统的识别是否是正确的,统计出识别效率。在本次的研究中,我们主要应用到的方法就是PCA,在人脸识别过程中起到很重要的作用。毕业设计123BP神经网络31BP神经网络简介BACKPROPAGATION网络是在1986年由RUMELHART与MCCELLAND为首的科学家小组提出的,简称BP神经网络14。这是一种单向传播的多层向前的网
38、络。这样的网络除了输入节点和输出节点之外还有一层或者多层的隐含节点,然后再传递到输出节点,这样一来每层的输入都只会影响到下一层的输出。BP网络具有能够学习与存贮大量的输入和输出模式之间的映射关系,可以不需要事前先揭示出描述这些映射关系的数学方程。BP网络的学习规则是通过使用最速下降的方法并由反方向的传播来进行对网络的权值和阈值调整,最后使得网络的误差平方和变到最小。BP神经网络是用输入层、输出层、一个隐含层和非线性兴奋的函数组成的三层感知网络。BP神经网络适合于多层的神经网络的一种训练,建立于梯度算法的基础上,这样的网络对于输入的信息要先向前传播到隐含节点之上,通过每个单元的非线性兴奋函数运算
39、后,再把隐含节点的输出信息传递到所要输出的节点上,最后输出结果。BP神经网络主要用于下面几个方面1数据压缩减少输出矢量的维数以便传输或者存储。2模式的识别和分类用一个特定的输出的矢量把它和输入的矢量联系在一起,把输入矢量用定义好的合适的方式进行分类。3函数逼近用输入的矢量和相应的输出的矢量结合训练一个网络来逼近一个函数。一般的BP神经网络还具有其特有的网络特定A输入量和输出量是并行的模拟量。B网络的输入和输出关系的各个层之间连接的权因子来决定的,没有特定的算法。C权因子是通过学习信号来调节的,学习的越多网络也就越聪明。D隐含的层越多那么网络输出的精度也就越高,这样就算有个别的权因子有损坏也不会
40、对网络的输出产生大的影响。E在一般的情况下,都是在隐含层采用S型的激活函数但是在输出层是采用线性的激活函数的。F可以对网络的输出进行一定的限制,例如要把值限制在01之间,那么在输出层应当包含有S型的激活函数。基于神经网络的人脸识别系统设计1332BP神经网络算法BP神经网络是目前应用最为广泛的神经网络的其中一个。BP算法是由UCSDPDP小组在1986年独立给出的一种非循环的多级网络的训练算法,具有应用广泛、适应性强、有效性高的特点,但是也具有训练速度慢、算法不一定收敛、局部极小点逃离的问题。是误差反向传播(ERRORBACKPROPAGATIONBP)算法而训练出来的多层前馈网络15。BP网
41、络不需要事前揭示出描述映射关系的数学方程,却能学习和存贮大量的输入输出模式映射出来的关系。而BP从另外一方面说,也就是方向传播,传播的东西其实就是误差。这样进行反向传播可以使得每一层都有误差,从而根据误差修正权值和阈值进行算法的练习。但是具有训练速度慢、局部极小点的逃离问题、所设计的神经网络的能力不能保险的缺点16。所以有改进的BP算法,一个是启发式的学习算法对于表现函数梯度加以分析,从而改进算法;另一种是采用更有效的优化算法基于数值最优化理论的改进。之后则可以根据A学习所需要的时间B泛化的能力C神经网络结构复杂性D鲁棒性。这4个指标来判断神经网络学习算法的好坏。BP神经网络模型拓扑结构主要包
42、括输入层、隐层、输出层。BP网络主要用于函数逼近、模式识别、分类、数据压缩这几个方面。下面我们从数学的角度对基本的BP算法进行了解,假设BP算法的样本集为(31)基本的思路就是1根据样本集当中的样本逐一的计算出实际的输出和误差测试,对其所对应的,,都分别做一次对应的调整,一直重复这个调整,一直到。2根据是由信号的正向传播和误差的反向传播两个过程进行对函数的进一步调整。相当于一个反馈系统。正向传播时,输入信号从输入层输入,经过各隐层的逐层处理后,传到输出层,由输出层的实际输出17。首先我们了解一下主要环境隐节点输出模型(32)毕业设计14输出接点输出模型(33)误差计算的模型(34)自学习模型为
43、(35)在(32)中F是非线性作用函数,在(33)中Q是神经单元阀值,在中H是学习因子;中的I是节点的期望输出值;在(34)中中的I节点计算输出值。在(35)中是输出节点I的计算误差;是输出节点J的计算输出;A是动量因子。正向传播输入样本输入层各隐层(处理)输出层若此实际输出与期望输出不相符,那么就转入误差的反向传播过程即将输出误差以某种形式通过隐层后向输入层逐层反向传递过去,此过程中也将误差分摊给各层的所有单元,也就获得了各层单元的误差信号,那么这个误差信号就可以作为修正各单元权值的依据。即误差反向传播输出误差(某种形式)隐层(逐层)输入层这种各层权值调整是通过信号正向传与误差反向传播周而复
44、始进行调节的过程。图2中是对整个BP算法的网络结构示意图,更加具体的说明了信号输入节点之后,通过隐性节点,最后由输出节点的过程。权值不断调整的过程也就达到了网络的学习训练过程的目的。训练完成之后,才可以更好的完成识别。网络学习训练的过程一直会进行到网络输出的误差很小,小到可接受的程度范围内或进行到预先设定的学习次数为止。这样完全了训基于神经网络的人脸识别系统设计15练过程,也就可以进行更深入的实验了。另外网络结构的选择也有讲究输入层和输出层节点数选择决定于应用要求,输入节点的个数一般要等于训练的样本的矢量维数(可以是原始数据的维数或者提取的特征维数),网络的规模与网络性能密切相关,网络的隐层数
45、和隐节点数决定网络的规模。神经网络的规模与网络中自由参数成正比,网络规模太小时,神经网络逼近的能力就会不足,就会产生欠拟合,而反之则会产生过拟合18。所以说,网络规模的确定是神经网络设计中很重要的内容之一。图31BP算法的网络结构示意图BP算法的本质是梯度算法,比较容易陷入局部最小点。网络初始权值不相同会导致每次训练的结果也不一样,所以要求网络的初始权值取最小的随机值,这样才可以保证各个神经元的输入值都比较小,可以工作在激励函数斜率辨别最大的范围之内,也可以防止连续多次学习之后,某些权值的绝对值的不合理的无限增长。应用BP网络的几个关键问题(A)训练算法要根据目标要求、网络规模、系统性能等各种
46、要求而定。(B)学习率训练速度和稳定性的矛盾。(C)避免局部最优问题一般是神经元的非线性导致的。(D)神经元个数具有不适应性和过适应性。对于误差量和训练速度有三种方法可以改进可以提高待模拟函数频率,隐层神经元数量则不改变;或者是待模拟函数频率不变,减少隐藏层神经元的毕业设计16数量;或者是同步提高待模拟函数频率和神经元个数19。通过总结和理解,最终我们可以发现一个BP算法的基本流程图初始化权值矩阵输入训练对集合计算输出计算末层修正因子修正末层权值阀值计算隐层修正因子修正隐层权值阀值样本训练完计算网络误差小于设定值输出权值阀值矩阵下一个样本下一轮训练否否是是图32BP算法的程序流程图基于神经网络
47、的人脸识别系统设计174实验分析和结果41程序分析通过人工神经网络系统、人脸识别技术与MATLAB软件三者相结合,来完成神经网络的人脸识别系统。人脸识别是实现的内容,神经网络则是实现这个任务的具体技术,通过MATLAB软件的综合实现完成最终的识别。现在编辑的程序的功能是指若给定一张测试的图像TESTIMAGE,则测试的系统就可以从本身的训练库TRAINDATABASE中找到能够和所选中的测试图像相同或近似度比较高的图像,并以图片和文字形式将之输出。我们通过使用MATLAB软件可以实现对人脸库中人脸的识别,实验程序在附件当中,主要有一个MAIN主函数,用来结合和调用另外三个辅助子函数,子函数CR
48、EATDATABASE能把训练样本中的二维图片转化成一维的向量,并且把一维向量构造到二维向量中去让每个单元信息都是一幅图片;子函数EIGENFACECORE能帮助得到二维数组,不仅包括训练样本的所有向量,而且还从中返回出三个输出量;子函数RECOGNITION可以从图片之中提取出特征脸,之后就可以比较其欧几里德距离。这次的毕业设计中采用的是ORL人脸库,里面一共有40个人,每个人从不同角度拍下了10张人脸图片,也就是一共有400幅人脸图片。在这其中,我选择每一个人的前2幅图用来作为TESTDATABASE文件夹进行人脸的识别,然后把剩下的后面8幅图片作为TRAINDATABASE文件夹,TRA
49、INDATABASE是测试文件夹,TESTDATABASE则是识别文件夹。在测试库的文件夹中一共用408幅人脸图像,而在识别库的文件夹中一共有402幅人脸图像通过对程序的大致了解和设计,主要的程序步骤设计如下毕业设计18开始选择测试图像TESTIMAGE创建标准匹配函数CREATEDATEBASE提取特征脸EIGENFACECORE读入测试图像,匹配识别RECOGNITION输出匹配结果结束图41程序系统流程图我们进行的实验的系统流程有下面几个主要的步骤A在程序中输入想进行测试的图像文件名;B在CREATEDATABASE(数据准备)函数中所能实现的功能为,可以将训练库TRAINDATABASE中的图像(840)文件都读入到矩阵内,并创建好相应的图像数据库T;C在EIGENFACECORE(样本训练)函数中的所能实现的功能为,运用主成分分析算法PRINCIPLECOMPONENTANALYSISPCA来提取相应的图像数据库T的特征,并且得到相应特征脸矩阵,即EIGENFACES;D在RECOGNITION(图像识别)函数中所能实现的功能为,导入所要测试的图像文件TESTIMGE,我们在相应的提示中输入图像文件名,然后获取所测试图像的特征向量,然后和之前的特征脸进行比较,就可以得到欧几里得距离矩阵,从而找到最佳匹配对象;E