《基于PCA的人脸识别研究报告.doc》由会员分享,可在线阅读,更多相关《基于PCA的人脸识别研究报告.doc(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、.项目名称:基于PCA的人脸识别算法研究19 / 22.摘 要随着人类社会的进步,以与科技水平的提高,一些传统的身份认证的方法逐渐暴露出各种问题,因此人们需要采用一种更加可靠安全的身份认证方法。毫无疑问人体的生物特征的独一无二的,特别是其不容易丢失与复制的特性很好满足了身份识别的需要。并且随着计算机科学技术和生物医学的发展使得利用生物特征识别成为了可能。因此基于指纹、人脸、视网膜等生物特征的识别方法也越来越多。由于人脸识别的操作快速简单,结果直观,准确可靠,不需要人的配合等优点已成为人们关注的焦点。主成分分析(PCA)法通过提取高维度的人脸图像的主元,使得图像在低维度空间中被处理来降低了图像处
2、理的难度。由于其有效的解决了图像空间维数过高的问题,已经成为人脸识别领域非常重要的理论。此次研究的就是基于PCA的人脸识别算法的实现。本文按照完整人脸识别流程来分析基于PCA的人脸识别算法实现的性能。首先使用常用的人脸图像的获取方法获取人脸图像。本文为了更好的分析基于PCA人脸识别系统的性能分别选用了Essex人脸数据库和ORL人脸库,并在后期采用了自建的人脸库。接下来是人脸图像预处理方法。由于采用的人脸图像质量较好,而且已经做过相应的预处理,所以本文试验中只使用灰度处理。接着使用PCA提取人脸特征,使用奇异值分解定理计算协方差矩阵的特征值和特征向量以与使用最近邻法分类器欧几里得距离来进行人脸
3、判别分类。在实验中我们发现基于PCA的人脸识别系统的识别率很高,而且具有一定鲁棒性,所以基于PCA的人脸识别算法的实现的研究还是有意义。【关键词】人脸识别PCA算法 奇异值分解定理 欧几里得距离ABSTRACTWith the development of science and technology, the progress of human society, the traditional identification is easy to lose, easy to be cracked and it has not play an identifiable role. People
4、need a more secure and reliable identification technology. Biometric is unique, easy to lose and replication characteristics of good meet the needs of the identification. With the development of computer science and technology and biomedical makes use of biometric identification has become possible.
5、 In the field of biometric identification, face recognition with the advantages of operation is fast and simple, the results are intuitive, accurate and reliable,do not need co-ordination, has become the focus of attention. The principal component analysis (PCA) to extract high dimensional face imag
6、e of the main element, making the images are processed in low-dimensional space and it reduces the difficulty of image processing. PCA solves effectively the problem of high dimension image space and it has become a very important theory in face recognition field. This paper is in this context of wr
7、iting from. In accordance with the full recognition process to analyze the performance of PCA-based face recognition algorithm. The first to use the method of access to commonly used face images for face images. In order to better analysis is based on the performance of the PCA face recognition syst
8、em selected Essex face database. Next is the face image preprocessing methods. Essex face image quality is better, and have done the appropriate pretreatment, using only gray-scale processing of this trial. Then use the PCA for face feature extraction using singular value decomposition theorem to ca
9、lculate the covariance matrix of the eigenvalues and eigenvectors, and use the Euclidean distance of the nearest neighbor classifier to the classification of human face discrimination. In the experiment, we found that a high recognition rate of the PCA-based face recognition system, but with a certa
10、in robustness, the PCA-based face recognition algorithm to achieve meaningful.【Key words】face recognition PCA algorithm SVD Euclidean distance前 言随着社会和科技的发展,社会步伐的加快,人们对高效可靠的身份识别需求日益强烈。各种技术在科研和实际中都受到了很大的重视和发展。由于生物特征在的稳定性和唯一性使其成为了作为身份识别的理想依据。人脸特征作为典型的生物特征外,还有隐蔽性好,易于被用户接受,不需要人的配合等优点。现已成为了身份识别领域研究的热点。PCA
11、算法通过降低维度,提取主元素,减少了数据冗余,解决了图像纬度太高无法处理或处理很慢的特点,同时保持了原始图像的绝大部分信息。在人脸识别领域,很多先进的识别算法都是在其基础上的改进。所以研究基于PCA的人脸识别算法实现具有重要的理论和使用价值。本文主要介绍基于PCA的人脸识别算法的实现,先介绍了PCA算法的理论基础,其次介绍了其在数字图像领域的应用,最后结合具体研究详述了研究过程。第一节 主成分分析基本理论一、什么是主成分分析?主成分分析为Principle component analysis10,11,12的中文翻译,其英文简写为PCA。它是一种非常流行和实用的数据分析技术,最重要的应用是对
12、原有数据进行简化。主成分分析可以有效的找出数据中最“主要”的元素和结构,去除噪声和冗余,将原有的复杂数据降维处理,揭示出隐藏在复杂数据背后的简单结构。它的优点是简单,而且无参数限制,可以方便的应用与各个场合。因此应用极其广泛,从神经科学到计算机图形学都有它的身影。PCA被称为应用线形代数最有价值的结果之一。二、基变换从线形代数的角度来看,PCA的目标就是使用另一组基去重新描述得到的数据空间。而新的基要能尽量揭示原有的数据间的关系。在这个例子中,沿着某x轴上的运动是最重要的。这个维度即最重要的“主元”。PCA 的目标就是找到这样的“主元”,最大程度的去除冗余和噪音的干扰。1. 标准正交基标准正交
13、基表现了数据观测的一般方式。在线形代数中,这组基表示为行列向量线形无关的单位矩阵。 (4.2)2. 基变换从更严格的数学定义上来说,PCA回答的问题是:如何寻找到另一组正交基,它们是标准正交基的线性组合,而且能够最好的表示数据集?在PCA方法中有一个很关键的假设:线性。这是一个非常好的假设,它使问题得到了很大程度的简化,具体表现为数据被限制在一个向量空间中,能被一组基表示,并且还隐含的假设了数据间的连续性关系。这样一来数据就可以被表示为各种基的线性组合。令X表示原数据集。X是一个m*n的矩阵,它的每一个列向量都表示一个时间采样点上的数据。Y表示转换以后的新的数据集表示。P是他们之间的线性转换。
14、它们间的转换关系为 (4.3)有如下定义:pi表示P的行向量。xi表示X的列向量。yi表示Y的列向量。 上式(3)在线性代数中,它有如下的含义: P是从X到Y的转换矩阵。几何上来说,P对X进行旋转和拉伸得到Y。P的行向量,(p1,p2,pm)是一组新的基,而Y是原数据X在这组新的基表示下得到的重新表示。 下面是对最后一个含义的说明: (4.4) (4.5)注意到Y的列向量: (4.6)可见yi表示的是xi与P中对应列的点积,也就是相当于是在对应向量上的投影。所以,P的行向量事实上就是一组新的基。它对原数据X进行重新表示。3. 问题在线性的假设条件下,问题转化为寻找一组变换后的基,也就是P的行向
15、量(p1,p2,pm),这些向量就是PCA中所谓的“主元”。问题转化为如下的形式:怎样才能最好的表示原数据X?P的基怎样选择才是最好的?解决问题的关键是如何体现数据的特征。那么,什么是数据的特征,如何体现呢?三、协方差衡量如何选择最优的P基需要借助协方差来进行衡量和判断: (4.9)A,B分别表示不同的观测变量所记录的一组值,在统计学中,由协方差的性质可以得到:,且当且仅当观测变量A,B相互独立。,当A=B等价的,将A,B写成行向量的形式:,协方差可以表示为 (4.10)那么,对于一组具有m个观测变量,n个采样时间点的采样数据X,将每个观测变量的值写为行向量,可以得到一个m*n的矩阵: (4.
16、11)接下来定义协方差矩阵如下: (4.12) (4.13)容易发现协方差矩阵具有如下性质:CX是一个m*m的平方对称矩阵。Cx对角线上的元素是对应的观测变量的方差。非对角线上的元素是对应的观测变量之间的协方差。协方差矩阵CX包含了所有观测变量之间的相关性度量。更重要的是,根据前两部分的说明,这些相关性度量反映了数据的噪音和冗余的程度。在对角线上的元素越大,表明信号越强,变量的重要性越高;元素越小则表明可能是存在的噪音或是次要变量。在非对角线上的元素大小则对应于相关观测变量对之间冗余程度的大小。一般情况下,初始数据的协方差矩阵总是不太好的,表现为信噪比不高且变量间相关度大。PCA的目标就是通过
17、基变换对协方差矩阵进行优化,找到相关“主元”。那么,如何进行优化?矩阵的那些性质是需要注意的呢?协防差矩阵的对角化总结上面的部分可以发现主元分析以与协方差矩阵优化的原则是:1)最小化变量冗余即对应于协方差矩阵的非对角元素要尽量小;2)最大化信号即对应于要使协方差矩阵的对角线上的元素尽可能的大。因为协方差矩阵的每一项都是正值,最小值为0,所以优化的目标矩阵CY的非对角元素应该都是0,对应于冗余最小。所以优化的目标矩阵CY应该是一个对角阵。即只有对角线上的元素可能是非零值。同时,PCA假设P所对应的一组变换基必须是标准正交的,而优化矩阵CY对角线上的元素越大,就说明信号的成分越大,换句话就是对应于
18、越重要的“主元”。对于协方差矩阵进行对角化的方法很多。根据上面的分析,最简单最直接的算法就是在多维空间进行搜索:在m维空间中进行遍历,找到一个方差最大的向量,令作p1。在与p1垂直的向量空间中进行遍历,找出次大的方差对应的向量记作p2对以上过程循环,直到找出全部m的向量。它们生成的顺序也就是“主元”的排序。这个理论上成立的算法说明了PCA的主要思想和过程。在这中间,牵涉到两个重要的特性:1)转换基是一组标准正交基。这给PCA的求解带来了很大的好处,它可以运用线性代数的相关理论进行快速有效的分解。这些方法将在后面提到。2)在PCA的过程中,可以同时得到新的基向量所对应的“主元排序”,利用这个重要
19、性排序可以方便的对数据进行简化处理或是压缩。四、PCA求解:特征根分解在线形代数中,PCA问题可以描述成以下形式:寻找一组正交基组成的矩阵P,有Y=PX,使得是对角阵。则P的行向量(也就是一 组正交基),就是数据X的主元向量。对进行推导: (4.14) (4.15)定义,则A是一个对称阵。对A进行对角化求取特征向量得: (4.16)则D是一个对角阵而E则是对称阵A的特征向量排成的矩阵。这里要提出的一点是,A是一个m*m的矩阵,而它将有p(p=m)个特征向量。其中p是矩阵A的的秩。如果p=m,则A即为退化阵。此时分解出的特征向量不能覆盖整个m空间。此时只需要在保证基的正交性的前提下,在剩余的空间
20、中任意取得m-p维正交向量填充E的空格即可。它们将不对结果造成影响。因为此时对应于这些特征向量的特征值,也就是方差值为零求出特征向量矩阵后我们取,则,由线形代数知识可知矩阵P有性质,从而进行如下计算: (4.17) (4.18)可知此时的P就是我们需要求得变换基。至此我们可以得到PCA的结果:X的主元即是的特征向量也就是矩阵P的行向量。矩阵对角线上第i个元素是数据X在方向的方差。我们可以得到PCA求解的一般步骤:采集数据形成m*n的矩阵。m为观测变量个数,n为采样点个数。在每个观测变量(矩阵行向量)上减去该观测变量的平均值得到矩阵X。对进行特征分解,求取特征向量以与所对应的特征根。五、总结:P
21、CA技术的一大好处是对数据进行降维的处理。我们可以对新求出的“主元”向量的重要性进行排序,根据需要取前面最重要的部分,将后面的维数省去,可以达到降维从而简化模型或是对数据进行压缩的效果。同时最大程度的保持了原有数据的信息。PCA方法和线形代数中的奇异值分解(SVD)方法有在的联系,一定意义上来说,PCA的解法是SVD的一种变形和弱化。对于m*n的矩阵X,通过奇异值分解可以直接得到如下形式: (4.19)其中U是一个m*m的矩阵,V是一个n*n的矩阵,而是m*m的对角阵。形式如下: (4.20)其中,是原矩阵的奇异值。由简单推导可知,如果对奇异值分解加以约束:U的向量必须正交,则矩阵U即为PCA
22、的特征值分解中的E,则说明PCA并不一定需要求取,也可以直接对原数据矩阵X进行SVD奇异值分解即可得到特征向量矩阵,也就是主元向量。六、在数字图像处理中的应用PCA方法是一个具有很高普适性的方法,被广泛应用于多个领域。这里要特别介绍的是它在数字图像处理中的应用,包括如何对图像进行处理以与在人脸识别方面的特别作用。1. 数据表示如果要将PCA方法应用于视觉领域,最基本的问题就是图像的表达。如果是一幅N*N大小的图像,它的数据将被表达为一个维的向量: (4.21)在这里图像的结构将被打乱,每一个像素点被看作是一维,最直接的方法就是将图像的像素一行行的头尾相接成一个一维向量。还必须要注意的是,每一维
23、上的数据对应于对应像素的亮度、灰度或是色彩值,但是需要划归到同一纬度上。2. 模式识别假设数据源是一系列的20幅图像,每幅图像都是大小N*N,那么它们都可以表示为一个维的向量。 将它们排成一个矩阵: (4.22)然后对它们进行PCA处理,找出主元。为什么这样做呢?据人脸识别的例子来说,数据源是20幅不同的人脸图像,PCA方法的实质是寻找这些图像中的相似的维度,因为人脸的结构有极大的相似性(特别是同一个人的人脸图像),则使用PCA方法就可以很容易的提取出人脸的在结构,也就是所谓的“模式”,如果有新的图像需要与原有图像比较,就可以在变换后的主元维度上进行比较,衡量新图与原有数据集的相似度如何。对这
24、样的一组人脸图像进行处理,提取其中最重要的主元,可以大致描述人脸的结构信息,称作“特征脸”(EigenFace)。这就是人脸识别中的重要方法“特征脸方法”的理论根据。近些年来,基于对一般PCA 方法的改进,结合ICA、kernel-PCA等方法,在主元分析中加入关于人脸图像的先验知识,则能得到更好的效果。3. 图像信息压缩使用PCA方法进行图像压缩,又被称为Karhunen and Leove(KL)变换。这是视觉领域图像处理的经典算法之一。具体算法与上述过程相同,使用PCA方法处理一个图像序列,提取其中的主元。然后根据主元的排序去除其中次要的分量,然后变换回原空间,则图像序列因为维数降低得到
25、很大的压缩。例如上例中取出次要的5个维度,则图像就被压缩了1/4。但是这种有损的压缩方法同时又保持了其中最“重要”的信息,是一种非常重要且有效的算法。第二节人脸识别流程人脸识别系统处理流程一、人脸图像采集采集人脸图像是通过传感器采集人脸图像,并将其转换为计算机可以处理的数字信号。这是人脸识别的第一步。在采集人脸图像时,要注意用户人脸姿态,脸部有无遮挡,周围光照是否满足要求与设备采集图像的质量是否能满足要求。二、预处理预处理是为了除去噪声和对测量仪器或其他因素对人脸图像造成退化现象进行复原。从传感器采集到图像除了包含人脸特征信息,还包含背景信息,所以必须从原始人脸图像分割出我们要处理的部分。如何
26、分割就需要定位和分割算法。他们一般以人脸图像在图像结构和人脸信号分布的先验知识为依据。常用的人脸预处理有人脸图像灰度化,人脸图像二值化,人脸图像归一化,直方图修正,图像滤波和图像锐化。三、特征提取特征提取就是计算机通过提取人脸图像中能够凸显个性化差异的的本质特征,进而来实现身份识别。本文讲解如何使用PCA算法提取人脸特征,进而实现人脸识别。特征主要包括三种类型:物理特征,结构特征和数学特征。由于物理特征和结构特征容易被察觉,触觉以与其他感觉器官所感知,所以人类常常是利用这些特征来对对象进行识别。对于计算机而言,模拟人类的感觉器官是很难实现的,但计算机在处理数学特征的能力上要比人类强得多,因此我
27、们通过诸如协方差矩阵,统计平均值和相关系数等数学特征来构建人脸识别系统。特征提取和选择的根本任务就是从许多特征中找出那些最有效的特征。在样本数不是很多的情况下,可以利用这些特征进行分类器的设计,但是在大多数情况下,由于测量空间的维数很高,不能直接进行分类器的设计。因此,如何把高维测量空间压缩到低维特征空间,以便有效的设计分类器,便成为了一个值得思考的问题。为了获得有效的特征,一般需要经过特征形成,特征提取和特征选择等步骤。1. 特征形成特征形成是根据被识别对象产生出一组基本特征的过程,当被识别的对象是波形或数字图像时,这些特征可以通过计算得来;当被识别对象是实物或某种过程时,这些特征可以用仪表
28、或传感器测量来得到。通过上面方法获得特征被称为原始特征。2. 特征提取原始数据组成的空间被称为测量空间。由于测量空间的维数一般都很高,不易设计分类器,所以在分类器设计之前,需要从测量空间变换到维数很少的特征空间,由特征向量表示。通过映射或变换方法用低纬空间来表示样本的过程被称为特征提取。映射后的特征称为二次特征,它们是原始特征的某种组合,通常是线性组合。3. 特征选择从一组特征中挑出一些最有效的特征从而达到降低特征空间维数目的的过程称为特征选择。由于在许多实际问题中常常不容易找到那些最重要的特征,或者由于条件限制而不能对这些重要特征进行测量。从而使得特征选择和特征提取的任务复杂化。特征提取和特
29、征选择在有些情况下并不是截然分开的,因为从一定意义上来讲,二者都是要达到对数据进行降维的目的,只是实现的途径不同。特征提取是通过某种变换的方法组合原有的高维特征,从而得到一组低维的特征。而特征选择是根据专家的检验知识或评价准则来挑选对分类最有影响的特征。比如可以先将原始特征空间映射到维数较低的空间,在这个空间中在进一步选择特征来进一步降低维度;也可以先去除那些明显不含有分类信息的特征,而后再进行映射以降低维度。四、特征匹配特征匹配是计算两个人脸图像特征样本的特征模块间的相似度即将采集到的人脸图像的特征模版与系统中已存储的特征模版进行比对,并输出最佳匹配对象。在本文主要讲解使用最近邻法分类器欧几
30、里得距离来判别人脸图像,在实际广泛使用的还有基于SVM即支持向量机,基于神经网络和图匹配的方法。第三节基于PCA人脸识别算法的实现主成分分析为一种统计学中特征提取方法,在实际中应用的非常广泛。PCA是通过提取原始数据的主元来减少数据的冗余,使数据在低维度的空间中被处理,同时它还能很好保持了原始数据的绝大部分信息,有效的解决了由于空间维数过高而导致的一系列问题。如下将详细介绍如何使用PCA算法进行人脸识别。一、创建数据库在本环节中主要分为两个阶段,分别为:1. 读入系统人脸数据库,并将图像变换为相应的灰度图像 (a) (b)图 (a)图像为系统人脸数据库中的原始人脸图像,(b)图像为经过灰度转换
31、后的人脸图像2. 同时将变换后的二维人脸灰度图像变换为一维人脸向量矩阵一个大小为M*N的二维人脸图像可以看成长度为MN的人脸图像列向量。为了将二维人脸图像变为以为列向量,我们采取的措施为:首先计算出人脸图像的大小,然后将人脸图像经行转置,最后按列依次取出取出所有灰度值形成大小为MN的一维向量,其实整个阶段的效果相当于将图像的灰度值按行取出依次连接成一维图像向量。本环节完成后将会产生由一维图像向量组成的矩阵T。二、计算特征脸本环节主要包括三个阶段,分别为:1. 对图像矩阵T进行规化首先计算出图像矩阵中一维列向量的平均值m,然后对图像矩阵的每一列都减去平均值形成规化的图像矩阵A。2. 计算特征脸人
32、脸训练图像的协方差矩阵为,其中人脸训练样本为,维度为,则协方差矩阵C的维度为。这就出现问题,C的维度过高,在实际中直接计算它的特征值和特征向量非常困难。因此,本文使用奇异值分解定理来解决这个问题。奇异值分解定理:假设B为维秩为p的矩阵,则存在两个正交矩阵和一个对角矩阵:正交矩阵为 (4.23) (4.24)其中 (4.25) (4.26)对角矩阵为 则可以得到,而且和有共同的非零特征值,和分别为和对应特征值的正交特征向量。由上述定理可以得到 (4.27)则可以由协方差矩阵,构造出矩阵,从而容易求出L的特征值和特征向量,再根据上述(4-27)式可以求得协方差C的特征值和特征向量。实际上我们并不需
33、要协方差所有的特征值和特征向量, m个(mM,M为特征值的数目)个特征值足够用于人脸识别。所以,实际操作中,只取L的前m个最大特征值对应的特征向量用于计算特征脸。在本环节,本文通过直接构造,来计算出L的特征值,再挑选L特征值大于100的作为C的特征值,最后通过C的特征值计算出它的特征向量,从而形成特征脸。三、人脸识别人脸识别过程分为训练和测试两个阶段。在训练阶段,主要是提取数据库人脸图像的特征,并形成特征库。在测试阶段,主要是提取待识别图像的特征和计算提取的特征和特征库中特征之间的距离测度,并输出最小距离测度对应的人脸图像作为结果。 具体步骤如下:1. 训练阶段将规化的图像矩阵A中的每一列向量
34、投影到特征子空间,形成特征库。2. 测试阶段假设测试人脸图像为Y,在人脸识别前,先对其进行标准化,即。把标准化后的人脸图像向特征子空间进行投影得到向量。本文使用最近邻法分类器欧几里德距离14,15进行判决分类。测试图像与每个人脸图像间的距离为 (k=1,2,P),并将最小距离对应的训练图像作为测试图像的匹配图像。可以看出,在人脸姿态、表情有略微变化的情况下依旧可以成功识别出正确的人脸。人脸姿态发生变化下的人脸识别结果人脸表情变化下的人脸识别结果之后我们利用ORL人脸库和自建人脸库分别进行了测试。在ORL人脸库的识别过程中,我们选取了20个人,每人4照片作为训练样本。并对这20个人每人另取了一照
35、片作为测试样本。每个人测试后最终统计成功识别17个人,识别失败3人。因为我们采用的是最近邻法分类器欧几里德距离进行判决分类,因此对于识别失败的人同样会显示与其距离最小的照片。为了解决这个问题,我们决定在该判决分类的基础上加上阈值限制,当最小欧几里德距离高于某个值时,不再显示最近邻的照片,而是显示“无法识别”的提示。成功识别如下:当用训练集以外的人的图像进行测试时,欧几里德距离大于阈值,显示无法识别。接下来我们对欧几里得距离的阈值进行了一定的选取测试。如下图所示当阈值选取较大时(阈值取9*1015),图像可以更好的识别出来,但是此时不可避免的就是降低人脸识别的准确率,因此个别测试图像因为不标准而
36、与训练库中某些图像的距离更小,就造成了识别错误。如下图所示,此时由于两幅图像的欧几里得距离更小,因而系统显示识别正确,其实是错误的。以测试图像3.jpg为例。而当阈值设定比较小时(阈值取4.5*1015),可以看到上面的测试图像3.jpg无法再识别成功,因为没有足够近距离的训练样本。尽管17.jpg训练样本与3.jpg测试图像欧几里得距离最小,但因不在阈值围故表明不是匹配的图像。同样当阈值减小后,之前成功识别的11.jpg图像无法再成功识别出来。综上所述,再选定欧几里得最近距离判定距离时要考虑不能选取过大,降低成功率。因此我认为在建立人脸库时,尽量使所有的图像在相同的背景下进行采样,这样可以时
37、每个人的测试图像和训练图像间的欧几里得距离均处在较小的围,可以提高准确率。此外,我们尝试用稍微侧斜和表情夸的样本照片进行人脸识别。当侧脸和表情夸照片作为测试样本时,程序依旧可以成功识别出对应的人脸照片,然而当这些侧脸和表情夸的照片作为训练样本中的图像时,可能会影响其他测试图像的识别成功率,因为我们没有对侧脸进行研究,因此将问题放在后续工作中解决。结 论本文研究的是基于PCA的人脸识别算法的实现。在试验中采用的人脸数据库为Essex faces94人脸数据库和自建的人脸数据库,人脸特征提取算法为PCA算法,分类方法采用的是最小距离分类法。通过实验发现在无光照变换,正面姿态,少量遮挡情况下,基于P
38、CA的人脸识别系统的识别率很高,而且反应很迅速。当然也存在着一些问题,例如本文对图像的光照变化,其他姿态没有进行考虑,但实际中这是无法忽略的问题,有可能会导致人脸识别识别率减小。为了进一步提高基于PCA的人脸识别系统的性能和适应性,我们可以通过以下几个方面进行改进:改进图像获取方法:我们可以通过使用人脸检测和跟踪算法,在图像获取的时候,动态跟踪和检测人脸,只采集最佳姿态下的人脸图像。这在一定程度可以解决姿态所引起的问题,但也同时对系统的检测和跟踪人脸的反应时间提出较严格的要求。如果反应时间较长,对于快速移动的人脸可能错过采集最佳姿态的图像,而导致系统无法识别人脸。改进人脸识别特征提取算法:基于
39、PCA的人脸识别虽考虑了人脸图像间的差异,但是不能区分这种差异是由光照,发型变更或背景导致,还是人脸的在差异,因此特征脸的识别方法在理论上存在一定的缺陷。究其原因是人脸图像中所有像素都处于同等地位,在角度,光照,尺寸和表情变换可能会导致性能急剧恶化。采用同一个人的训练样本的平均来计算人脸图像类间散布矩阵可在一定程度上补偿这个缺点。同时也可以对输入的人脸图像做规化处理,主要包括对人脸图像做均值方差归一化,人脸尺寸归一化。另外还可以在计算特征脸的同时利用K-L变换计算特征眼睛和特征嘴,然后将这些局部特征向量加权进行匹配,也可以将人脸图像分块进行PCA算法的比较,使各块的欧几里得距离都小于一定阈值时
40、方可以成功识别人脸,这样可能会得到更好的结果。我们也可以将人脸进行差异化分类,可分为脸间差异和脸差异。脸差异表示同一个人脸的各种可能变形。脸间差异表示不同人的本质差异。在实际中,人脸图像的差异为两者之和。若脸差异大于脸间差异,则认为两个人脸图像属于一个人的可能性较大。改进人脸识别的分类器:最近邻法分类器属于一种线性分类器。在实际中可以利用神经网络这类学习能力强的非线性分类器对高维人脸识别可能会取得更好的效果。综合不同的人脸识别方法:在目前,仅仅单独采用一种现有的人脸识别方法一般都不会取得很好的识别效果。各种技术和方法都有自己不同的适应环境和各自的特点。如果我们想进一步提高人脸识别系统的识别率,
41、可以考虑使用数据融合理论,将不同的方法综合起来,相互补充,来取得很好的人脸识别效果。这也是为人脸识别的研究趋势之一。参考文献1 翠平,苏光大人脸识别技术综述J中国图像图形学报,2000,5 (11):56-582 龚勋PCA与人脸识别即其理论基础J 微计算机信息,2007,32(15):1-73 程自龙,雷秀玉基于K-L变换(PCA)的特征脸人脸识别方法综述J中国图像图形学报,2010,20(22):15-184 倪世贵,白宝刚基于PCA的人脸识别研究J现代计算机,2011,23(42):20-225 徐飞Matlab应用图像处理M. :电子科技大学,20056 王映辉人脸识别:原理,方法与技
42、术M. :科学,20107 高晓兴,仁睦,王文佳基于人脸分类和K-L变换的人脸识别新方法J微计算机信息,2010,26(3):3-68 田印中,董志学,黄建伟基于PCA的人脸识别算法研究与实现J科技与经济,2010,4(208):15-189 学胜基于PCA和SVM算法的人脸识别J计算机与数字工程,2011,14(3):56-5810 盛骤,谢式千,潘承毅概率论与数理统计 M:高等教育,200811 惠明图像欧氏距离在人脸识别中的应用研究J计算机工程与设计,2008,3(14):22-25附程序代码:main.mclear allclcclose allTrainDatabasePath =
43、(E:train);TestDatabasePath = (E:test);prompt = Enter test image name :;dlg_title = Input of PCA-Based Face Recognition System;num_lines= 1;def = 1;TestImage = inputdlg(prompt,dlg_title,num_lines,def);TestImage = strcat(TestDatabasePath,char(TestImage),.jpg);im = imread(TestImage);T = CreateDatabase(
44、TrainDatabasePath);m, A, Eigenfaces = EigenfaceCore(T);OutputName, Euc_dist_min = Recognition(TestImage, m, A, Eigenfaces);SelectedImage = strcat(TrainDatabasePath,OutputName);SelectedImage = imread(SelectedImage);if(Euc_dist_min4.5*1015) str = strcat(.,OutputName); disp(str) Euc_dist_minEndCreateDatabase.mfunction T = CreateDatabase(TrainDatabasePath)TrainFiles = dir(TrainDatabasePath);Train_Number = 0;for i = 1:size(TrainFiles,1)if not(strcmp(TrainFiles(i).name,.)|strcmp(TrainFiles(i)