当前位置:文档之家› 基于PCA的人脸识别

基于PCA的人脸识别

基于PCA的人脸识别
基于PCA的人脸识别

基于PCA的人脸识别

哲盼

(华北电力大学自动化系, 071003)

摘要:人脸识别技术,作为目前模式识别领域研究的热点也是难点之一,其最早提出可以追溯到1888年[1]。然而,到目前为止,由于人脸识别问题自身的复杂性,使得虽然有众多科学研究人员潜心研究多年,也做出了许多的成果,但离彻底解决并达到实用,仍旧有很多关键性的问题需要解决。本文结合研究生阶段参与教研室的科研项目,对人脸识别做了一定的研究。论文首先介绍了人脸识别的背景、研究围以及方法,对人脸识别领域的一些理论方法作了总体的介绍。本文中所采用的人脸识别方法是比较经典的PCA(Principle Component Analysis,主成分分析)[2-6]。

关键词:人脸识别,主成分分析,PCA,特征脸

PCA-based face recognition

CHEN Zhe-pan

(Department of Automation North China Electric Power University, Baoding 071003 China) Abstract:Techniques for face recognition were proposed by Francis Galton as early as 1888[1]In recent years considerable progress has been made in the area of face recognition:Through the development of techniques like Eigenfaces computers can now outperform humans in many face recognition tasks,particularly those in which large databases of faces must be searched.Whilst these methods performs extremely well under constrained conditions,the problem of face recognition under gross variations remains largely unsolved.This thesis details the PCA(Principle Component Analysis)algorithm and the development of a real-time face recognition system aimed to operate in constrained environments

Keywords:face recognition,principle component analysis,PCA, Eigenfaces

0 引言

随着社会的不断发展进步以及各方面对快速有效的身份识别技术的迫切需求,生物特征识别技术在最近十年中得到了很快的发展。生物特征识别技术是为了验证身份而采用自动测量技术对身体的特征或个人行为特点进行采集处理,并将采集的特征或特点与模板进行比较,从而完成身份验证的一种解决方案。由于生物特征识别技术利用人本身所具有的特征(如指纹、虹膜、人脸等)进行身份认证,因而它比传统的根据人所携带物品(如)和你所记忆的容(如账号和密码)更加安全和可靠。我们有理由相信生物特征识别技术将使人们的生活方式产生重大的变化[7]。

人脸识别是生物特征识别技术的一种,它也是人们生活中最常用的一种身份认证手段,同时它也是当前最热门的模式识别研究课题之一。通过人脸我们可以判定许多信息:性别、种族、大致年龄及表情等。与其它的生物特征识别技术相比,人脸识别在采

集特征时不需要与采集对象进行直接接触,因此人们不会产生排斥的心理,所以人脸识别可以成为一种最友好的身份认证技术。

人脸识别应用前景广泛,可用于公安机关罪犯身份的认证,档案管理,银行的监控系统,入口控制等。人脸识别对于我们人类而言是一件非常简单的问题,但人脸识别的机制实际上是非常复杂的。人脸识别的课题涉及到计算机视觉、图像处理、机器学习、模式识别等很多方面的知识[8]。近年来人脸识别技术己经取得了很大发展,产生了很多新颖的方法,一些人脸识别系统也己经投入市场。但还有很多的因素制约着它的发展,人脸识别的鲁棒性受人脸自身和环境的复杂性,如表情、姿态、光照变化的影响很大。所以它仍是目前一项非常具有挑战性的研究课题。

1 人脸特征提取与识别方法

人脸识别本质上是三维塑性物体二维投影图像的匹配问题,它的困难体现在:(1)人脸塑性交形(如表情等)的不确定性;(2)人脸模式的多样性(如胡须,发型,眼镜,化妆等);(3)图像获取过程中的不确定性(如光照的强度,光源方向等)。识别人脸主要依据人脸上的特征,也就是说依据那些在不同个体之间存在较大差异而对于同一个人则比较稳定的度量。由于人脸变化复杂,因此特征表述和特征提取十分困难。

在对人脸图像进行特征提取和分类之前一般需要做几何归一化和灰度归一化。几何归一化是指根据人脸定位结果将图像中人脸变换到同一位置和同样大小,灰度归一化是指对图像进行光照补偿等处理,光照补偿能够一定程度地克服光照变换的影响而提高识别率[9]。关于人脸特征提取和识别的方法可概述如下:

基于几何特征的方法:人脸由眼睛,鼻子,嘴巴,下巴等部件构成,正因为这些部件的形状,大小和结构上的各种差异才使得世界上由这些每个人脸千差万别,因此对这些部件的形状和结构关系的几何描述,可以做为人脸识别的重要特征。基于参数的人脸表示可以实现对人脸显著特征的一个高效描述,但它需要大量的前处理和精细的参数选择。同时,采用一般几何特征只描述了部件的基本形状与结构关系,忽略了局部细微特征,造成部分信息的丢失,更适合于做粗分类,而且目前已有的特征点检测技术在精确率上还远不能满足要求,计算量也较大。

基于特征脸的方法:Turk和Pontland[2,3]提出特征脸的方法,它根据一组人脸训练图像构造主元子空间,由于主元具有脸的形状,也称为特征脸。识别时将测试图像投影到主元子空间上,得到一组投影系数,和各个已知人的人脸图像进行比较进行识别。特征脸方法是一种简单,快速,实用的基于变换系数特征的算法,但由于它本质上依赖于训练集和测试集

图像的灰度相关性,而且要求测试图像与训练集比较像,所以它有着很大的局限性。

基于弹性模型的方法:Lades等人针对畸变不变性的物体识别提出了动态模型(DLA),将物体用稀疏图形来描述,其顶点用局部能量谱的多尺度描述来标记,边则表示拓扑连接关系并用几何距离标记,然后应用塑性图形匹配技术来寻找最近的已知图形[10,11]。Wiscott等人在此基础上作了改进,用FERET图像库做实验,用300幅人脸图像和另外300幅图像做比较,准确率达到97.3%[12]。此方法的缺点是计算量非常巨大。

神经网络方法:神经网络方法在人脸识别上的应用比起前述几类方法来有一定的优势,因为对人脸识别的许多规律或规则进行显性的描述还是相当困难的,而神经网络方法则可以通过学习的过程获得对这些规律和规则的隐性表达,它的适应性更强,一般也比较容易实现。

其他方法:Brunelli等对模板匹配方法作了大量实验,结果表明在尺度,光照,旋转角度等各种条件稳定的情况下,模板匹配的效果优于其他方法[13],但它对光照,旋转和表情变化比较敏感,影响了它的直接使用。Goudail等人采用局部自相关性作为人脸识别的判断依据,它具有平移不变性,在脸部表情变化时比较稳定[14]。

在最近的一些工作中[15],Benarie 等提出VFR的表示框架并将它用于人脸识别的工作中,Lam等人研究了不同视点下的人脸匹配和识别问题闭,Vetter等人讨论了由单幅人脸图像生成其他视点的人脸图像的可能性,Mirhosseini等则探讨了多种信息融合的人脸识别方法。

本文主要从基于代数特征的主成分分析(PCA)方法着手,在大量实验的基础上对影响人脸识别的因素进行了研究和探讨。

2 基于PCA的人脸识别

2.1 概述

主成分分析(Principal Components Analysis。即PCA,也称为K-L变换),是图像压缩中的一种最优正交变换。PCA用于统计特征提取构成了子空间法模式识别的基础。它从图像整体代数特征出发,基于图像的总体信息进行分类识别。Simvich和Kirby首先将K-L变换用于人脸图像的最优表示。Turk和Pentland进一步提出了“特征脸”(Eigcnface)这个概念.下文首先介绍了PCA算法的原理和实现过程,然后给出了在ORL库上的实验结果。

将PCA方法用于人脸识别,其实是假设所有的人脸都处于一个低维线形空间,而且不同的人脸在这个空间中具有可分性。其具体做法是由高维图像空间经KL变换后得到一组新的正交基,对这些正交基作一定的取舍,保留其中的一部分生成低维的人脸空间,也即人脸的特征子空间。完整的PCA人脸识别算法步骤包括:

(1)、人脸图像预处理。

(2)、读入人脸库。训练形成特征子空间。

(3)、把训练图像和测试图像投影到上一步骤中得到的子空间上。

(4)、选择一定的距离函数进行识别。

2.2 人脸图像预处理

人脸图像的预处理主要处理旧照片或扫描照片因拍摄环境不同产生的光照干扰和角度倾斜。常用的处理有:

(1)、图像噪声滤波

输入图像一般在人脸定位、特征提取等方面都会受到噪声问题的影响,一般来说,去除噪声的算法主要是平滑滤波:平滑滤波算法首先需要选择一定的图像区域,在这个区域,选取一个像素作为中心,进而在区域选择一个小的区间,该区间的像素作为该像素区间的基数,然后讲过一种公式化的预算变化推导出该中心像素的新值。一般通过卷积的方法实现平滑滤波。

(2)、图像旋转

在有些情况下,人脸的正面图像会因为坐姿,摄像机倾斜等问题产生不同角度的偏差和倾斜现象,这些偏差数值不一,有大有小,但是在图像识别过程中,细微的、小角度的偏差也会对图像的视觉效果造成一定程度的影响,由此,对这些小角度的处理是也是人脸预处理的必要步骤。调整人脸角度的原理一般是依据常识情况下,图像中,在正常无倾斜的情况下,人物两眼处于同一个水平线上,对人物两眼间的夹角进行计算,如果夹角为0,则图像是水平的,如果夹角不为零,则说明两眼存在一定程度的倾斜。具体计算时,将两眼夹角设为θ,将θ的数值计算出后,反向旋转θ角度,就可以得出校正后的图像。具体计算方法如下:

设两眼的瞳孔坐标分别为(x1,Y1)和(x2,Y2),则θ的求取公式如下:

设图像中任意点的坐标为(x,y),旋转后该点的坐标为(X,Y),则

在进行具体操作时,需要注意我们通常对数据图像进行存储时,存储方式一般是矩阵方式,如果仅仅是将处理图像进行扩大存放,就会导致图像位移。因此,在调整图片角度时,所应进行的预备步骤是首先将图像四个顶点进行旋转,然后取得这些坐标的最值,进而在确定旋转后图像应有的高度和宽度,然后依次对矩阵进行扩展。

(3)、图像姿态归一化处理

在进行图像识别过程中,还会遇

到人物姿态存在一定深度的偏转现象,对这种图像,一般我们都会将其调整到图片正面视图以保证图片的质量,在图像旋转中,两眼间的角度是进行图片旋转的基准,而在此,两眼间的中点和鼻、鼻尖的角度为计算的基准。两眼的中点与鼻、鼻尖处于同一条垂直线上为正面视图,如果不在一条垂直线上,则视为姿态偏转视图。其计算原理是将双眼、鼻尖三个点作

为特征点,进而求出两幅图像间的仿射变化关系,进而将输入的图像进行校准,从而补偿由姿态深度偏转带来的影响。

2.3 PCA人脸识别流程

(1)、读入人脸库。读入每一个二维的人脸图像数据并转化为一维的向量。每人选择一定数量的图像构成训练集,其余构成测试集。假设图像的大小是W×h(w和h分别为图像的宽度和高度),整个人脸库中图像个数是n,用于训练的人脸图像个数是n1,测试的图像个数是n2,令m=w×h,则训练集是一个m×n1的矩阵,测试集是m×n2的矩阵。第i幅人脸可以表示为(m为一位向量维数):

(2)、计算KL变换的生成矩阵Σ,进行KL变换。KL变换的生成矩阵可以是训练样本的总体散布矩阵S。,也可以是训练样本的类问散布矩阵Sb等。散布矩阵由训练集生成。总体散布矩阵可表示为(忽略系数):

若取总体散布矩阵St作为生成矩阵Σ。记

则Σ可写成:

若将类散布矩阵Sb(忽略系数)作为KL 交换的生成矩阵Σ,即:

这里c为训练样本集中模式类别数,两(i=l,?,c)是训I练样本集中各类模式样本的均值矢量,且记:则生成矩阵Σ为:

此时产生矩阵的秩r一般为c。

(3)、计算生成矩阵Σ的特征值和特征向量,构造子空间。首先把特征值从大到小进行排序,同样的,其对应的特征向量的顺序也作相应的调整。然后选择其中的一部分构造特征子空间。

(4)、把训练图像和测试图像投影到特征空间中。每一幅人脸图像投影到子空间后,就对应于子空间中的一个点,同样,子空间中的任一点也对应于一幅图像。这些子空间中的点在重构以后的图像很像“人脸”,所以它们被称为“特征脸”(见图2-1),这也是Eigneice名称的由来,而通过K·L 变换进行人脸识别的方法被称为“特征脸”方法。有了这样一个由“特征脸”组成的降维子空间,任何一幅人脸图像都可以向其做投影并获得一组坐标系数,这组系数表明了该图像在予空间中的位置,这样原来的人脸图像的识别问题就转化为依据子空间中的训练样本点进行分类的问题。下一步就可以运用模式分类的理论进行识别。

(5)、把投影到子空间中的所有测试图像和训练图像进行比较,确定待识样本所属的类别。这里可以采用多种不同的分类器进行方式:如曼哈顿距离、最近邻分类器、最小距离分类器、贝叶斯分类器等。

图2-1“特征脸”图像

(依次为分别取第1、2、3、4、5、10、30、

80、130、180个特征向量所得)

2.4 特征向量的选取

虽然协方差矩阵z最多有对应于非零特征值的k(k≤n1且k远小于m)个特征向量,但是通常情况下,k仍然很大,而事实上,根据应用的要求,并非所有的特征向量都有需要保留,而特征空间投影的计算速度是直接与创建子空间所用的特征向量的数目相关,若考虑到计算时间的因素,可以适当的减去一些信息量少的特征向量,而且,去掉这些特征向量之后不一定不利于分类结果,有的情况下反而能够提高识别性能。下面讨论五种不同的特征值选择方法:

(1)、标准的特征空间投影:所有k 个对应于非零特征值的特征向量均被用于创建特征脸子空间;该方法在七值比较大的时候,计算速度比较慢,而且不利于分类,没有达到降维人脸空间维数的效果。

(2)、丢弃最后40%的特征向量:因为特征向量是按照特征值降序来排列的,该方法丢弃了反映最少的40%图像间差异的特征向量。

(3)、保持前面的C一1个特征向量:将特征值按照降序排列,同时只保留最前面的c一1个特征向量。其中C为训练图像的类别数。

(4)、按照计算信息量来确定维数:不同于前面固定的丢弃一些特征向量,该方法采用保证剩余的特征向量说包含的信息与总的信息量相比大于一定的阈值e的值通常取为0.9。可以依照下列公式计算:

(5)、丢弃最前面的三个特征向量:同样将特征值按照降序排列。文献[16]提到对应于最大三个特征值的特征向量有可能反应了图像间由于光线不同而造成的差异,可以丢弃前面的三个特征向量会提高识别率。

3 实验结果与分析

以上详细讨论了PCA人脸识别的方法及一些需要注意的问题。针对上面提出的问题,本文进行了一系列的实验。所有的实验都在MATLAB7.6下进行。机器配置为Intel(R)Core(TM)i3-2130

CPU3.40GHz,2.84GB存。考虑到ORL是较为通用的人脸库,国的文章大多都采用这个库作为实验的人脸库,下文的主要分析是基于在ORL库上的实验数据进行的。

3.1 子空间维数与识别率的关系:

由上面的讨论可以知道,如果训练集人脸个数为n,则总体散布矩阵的特征向量维数最多只能为n,远小于图像的大小。但所有这些特征向量是否都需要?如果需要,需要多少个?选择不同个数的特征向量对识别率有什么影响?这些都是值得探讨的问题。在图2.1中的“特征脸”可以发现,前面的特征向量,反映了较多的信息,越往后,各“特征脸”之间的差异不是很大,虽然也能够看出是一个人脸形状,但是包含的信息少了。

为了更有效的说明子空间维数与识别率的关系,本文在取训练样本数

为240时分别取子空间维数为1到100,绘出了识别率的曲线图如图3-1所示。由图可以很明显的看出,随着子空间维数的增加,识别率也响应的提高。在子空间维数较小时,识别率的变化特别明显。基本上子空间维数从30开始,识别率就趋于稳定了。所以选择合适的子空间维数不但可以提高识别率还可以减少运算时间。

图3-1不同子空间维数下的识别曲线线图横坐标为子空间维数,纵坐标为识别率3.2 训练样本数与识别率的关系:

在相同的子空间维数下,取不同的

训练样本数识别率

1 0.678

2 0.750

3 0.789

4 0.846

5 0.880

6 0.906

7 0.941

8 0.938

9 0.925

表3-1不同训练样本数下的识别率

(训练样本数3表示3个

人训练7个人测试)

由表3-1可知训练样本少的情况下的整体识别率要比训练样本多的情况低,其识别率曲线趋向平稳的过程也越慢。当然从直观上来讲,这也符合我们的认识:用于训练的人越多,训练也就越充分,其能识别的情况就越多。但这种结论并不能推广到一般的情况,尤其并不是子空间的维数越多越好。观察识别率曲线可以发现,识别率并不是平稳增加的。观察大量的实验数据可以发现,存在一个极值点,之后子空间维数的增加识别率就再也不会超过那个极值点了。对也就说明并不是所有的特征向量都代表了有效的人脸信息,有的特征向量所代表的可能是和人脸信息无关的噪声、背景等无效信息,把这些特征向量加入作为构成子空间的基,会导致识别率的下降。

4 总结

随着计算机技术的迅猛发展,人们期望着计算机能具有人的视觉功能,然而除了一些专用的视觉系统外,迄今为止,还没有较为成功的通用视觉系统。人脸识别是计算机视觉领域中一个相当困难而又极富挑战性的前沿课题,还处于探索阶段,离实用还有很长的一段路要走。除了个人身份验证外,安全监控如罪犯跟踪、反恐怖活动等对高技术的要求,人机智能界面的需要,特别是因特网上包含人脸图像的大型数据库日益增多,对此类数据库的大量查询和检索等等,对人

基于PCA算法的人脸识别毕业设计论文

太原科技大学 毕业设计(论文) 设计(论文)题目:基于PCA算法的人脸识别

毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作者签名:日期: 指导教师签名:日期: 使用授权说明 本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:日期: Ⅰ

学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。 作者签名:日期:年月日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 涉密论文按学校规定处理。 作者签名:日期:年月日 导师签名:日期:年月日 Ⅰ

基于PCA的人脸识别系统设计

1 HUNAN UNIVERSITY 毕业设计(论文) 设计论文题目基于PCA的人脸 识别系统 学生姓名李涛 学生学号20080810410 专业班级08级计科四班 学院名称信息科学与工程学院 指导老师潘华伟 学院院长章兢 20012 年 5 月18 日

摘要 随着计算机视觉技术的发展,以及社会的各个领域的需要,根据人固有的生物特征对人进行身份验证的课题吸引了一批研究人员,比较常见的有语音识别,指纹识别,人脸识别等技术。其中人脸识别因为识别率高、主动性强、使用方便等因素,在身份验证的各类方法中有独特的优势及相关的应用,成为了人体特征识别中的比较热门的研究课题。 本文首先阐述了人脸识别研究的历史,现状以及发展趋势,并说明了人脸识别的优势和难点。然后详细地说明人脸识别的两个部分:人脸检测和人脸识别。在人脸检测部分,本文主要介绍了基于haar分类器的检测方法,并详细说明了haar分类器的训练过程,讲述了分类器检测人脸的原理。在人脸识别部分,首先获取人的个人信息的,对人脸图像的采集并进行灰度化、归一化等预处理,然后采用PCA(主成分分析法)对采集到的图像进行特征提取,并存储相关的特征信息,最后对待识别的图像进行特征提取和分析,与训练的人脸图像数据计算欧式距离,最终识别出人的身份。在本文的最后,对实现的系统各项功能进行实验,对影响识别率的维数、采集图像数因素进行实验分析,并提出了主成分分析法人脸识别的优点和缺点。最后总结毕业设计中的不足,自己的心得体会,并对未来学习进行展望。 关键词:人脸检测,haar分类器,PCA,人脸识别

Abstract With the development of computer vision technology, and social needs in many areas, the subject of authentication according to the inherent biological characteristics attracted a group of researchers ,Voice recognition, fingerprint recognition, face recognition technology are common。Face recognition with the recognition rate, motivated, easy to use and other factors,has unique advantages in all kinds of authentication methods and related applications,has become a popular research topic in the human feature recognition。 This paper first describes the history, current situation and development trend of face recognition research, and describes the advantages and difficulties of face recognition。And then detail the recognition of two parts: face detection and face recognition。In the face detection part, the paper mainly describes the detection method based on haar classifier, and details of haar classifier training process, about the principle of the classification of the detected face。In face recognition part, it first obtains personal information the acquisition of face images and graying, owned by a pretreatment。And then using PCA (Principal Component Analysis) collected image feature extraction, and storage characteristics of information,int the last ,identifiable image feature extraction and analysis, and training of the face image data to calculate the Euclidean distance, and ultimately identify the identity of the person。In the last experiment, the dimension of the recognition rate, number of images collected factors experimental analysis, and the advantages and disadvantages of the principal component analysis for face recognition system implemented various functions. The final summary of graduate design deficiencies, and their own feelings and experiences and future learning prospects。 Keywords: face detection, Haar classifier, PCA, face recognition

基于matlab的人脸识别算法(PCA)

3.基于matlab的人脸识别算法 3.1 问题描述 对于一幅图像可以看作一个由像素值组成的矩阵,也可以扩展开,看成一个矢量,如一幅 N*N 象素的图像可以视为长度为N2 的矢量,这样就认为这幅图像是位于N2 维空间中的一个点,这种图像的矢量表示就是原始的图像空间,但是这个空间仅是可以表示或者检测图像的许多个空间中的一个。不管子空间的具体形式如何,这种方法用于图像识别的基本思想都是一样的,首先选择一个合适的子空间,图像将被投影到这个子空间上,然后利用对图像的这种投影间的某种度量来确定图像间的相似度,最常见的就是各种距离度量。因此,本次试题采用PCA算法并利用GUI实现。 对同一个体进行多项观察时,必定涉及多个随机变量X1,X2,…,Xp,它们都是的相关性, 一时难以综合。这时就需要借助主成分分析来概括诸多信息的主要方面。我们希望有一个或几个较好的综合指标来概括信息,而且希望综合指标互相独立地各代表某一方面的性质。 任何一个度量指标的好坏除了可靠、真实之外,还必须能充分反映个体间的变异。如果有一项指标,不同个体的取值都大同小异,那么该指标不能用来区分不同的个体。由这一点来看,一项指标在个体间的变异越大越好。因此我们把“变异大”作为“好”的标准来寻求综合指标。3.1.1 主成分的一般定义 设有随机变量X1,X2,…,Xp,其样本均数记为,,…,,样本标准差记为S1,S2,…,Sp。首先作标准化变换,我们有如下的定义: (1) 若C1=a11x1+a12x2+ … +a1pxp,…,且使 Var(C1)最大,则称C1为第一主成分; (2) 若C2=a21x1+a22x2+…+a2pxp,…,(a21,a22,…,a2p)垂直于(a11,a12,…,a1p),且使Var(C2)最大,则称C2为第二主成分; (3) 类似地,可有第三、四、五…主成分,至多有p个。 3.1.2 主成分的性质 主成分C1,C2,…,Cp具有如下几个性质: (1) 主成分间互不相关,即对任意i和j,Ci 和Cj的相关系数 Corr(Ci,Cj)=0 i j (2) 组合系数(ai1,ai2,…,aip)构成的向量为单位向量, (3) 各主成分的方差是依次递减的,即 Var(C1)≥Var(C2)≥…≥Var(Cp)

基于PCA的人脸识别算法实现毕业论文

基于PCA的人脸识别算法实现毕业论文 目录 前言 (1) 第一章人脸识别系统概述 (2) 第一节人脸识别的研究概况 (2) 第二节人脸识别的发展趋势 (3) 一、多数据融合与方法综合 (4) 二、动态跟踪人脸识别系统 (4) 三、基于小波神经网络的人脸识别 (4) 四、三维人脸识别 (4) 五、适应各种复杂背景的人脸分割技术 (4) 六、全自动人脸识别技术 (4) 第三节人脸识别技术的主要难点 (4) 一、复杂条件下人脸的检测和关键点定位 (5) 二、光照问题 (5) 三、资态问题 (5) 四、表情问题 (5) 五、遮挡问题 (5) 第四节人脸识别流程 (5) 一、人脸图像采集 (6) 二、预处理 (6) 三、特征提取 (6) 第五节本章小结 (7) 第二章人脸图像的获取 (9) 第一节人脸图像获取 (9) 第二节人脸分割 (9) 第三节人脸数据库 (10) 第四节本章小结 (11) 第三章人脸图像的预处理 (12)

第一节人脸图像格式 (12) 一、JPEG格式 (12) 二、JPEG2000格式 (12) 三、BMP格式 (13) 四、GIF格式 (13) 五、PNG格式 (13) 第二节人脸图像常用预处理方法 (14) 一、灰度变化 (14) 二、二值化 (15) 三、直方图均衡 (15) 四、图像滤波 (15) 五、图像锐化 (17) 六、图像归一化 (18) 第三节本章小结 (19) 第四章人脸识别 (20) 第一节主成分分析基本理论 (20) 一、什么是主成分分析? (20) 二、例子 (20) 三、基变换 (21) 四、方差 (23) 五、PCA求解:特征根分解 (27) 六、PCA的假设 (28) 七、总结: (28) 八、在计算机视觉领域的应用 (30) 第二节基于PCA人脸识别算法的实现 (31) 一、创建数据库 (32) 二、计算特征脸 (32) 三、人脸识别 (34) 第三节本章小结 (36) 结论 (37) 致谢 (38) 参考文献 (39) 附录 (40) 一、英文原文 (40) 二、英文翻译 (53)

基于PCA的人脸识别

基于PCA的人脸识别 哲盼 (华北电力大学自动化系, 071003) 摘要:人脸识别技术,作为目前模式识别领域研究的热点也是难点之一,其最早提出可以追溯到1888年[1]。然而,到目前为止,由于人脸识别问题自身的复杂性,使得虽然有众多科学研究人员潜心研究多年,也做出了许多的成果,但离彻底解决并达到实用,仍旧有很多关键性的问题需要解决。本文结合研究生阶段参与教研室的科研项目,对人脸识别做了一定的研究。论文首先介绍了人脸识别的背景、研究围以及方法,对人脸识别领域的一些理论方法作了总体的介绍。本文中所采用的人脸识别方法是比较经典的PCA(Principle Component Analysis,主成分分析)[2-6]。 关键词:人脸识别,主成分分析,PCA,特征脸 PCA-based face recognition CHEN Zhe-pan (Department of Automation North China Electric Power University, Baoding 071003 China) Abstract:Techniques for face recognition were proposed by Francis Galton as early as 1888[1]In recent years considerable progress has been made in the area of face recognition:Through the development of techniques like Eigenfaces computers can now outperform humans in many face recognition tasks,particularly those in which large databases of faces must be searched.Whilst these methods performs extremely well under constrained conditions,the problem of face recognition under gross variations remains largely unsolved.This thesis details the PCA(Principle Component Analysis)algorithm and the development of a real-time face recognition system aimed to operate in constrained environments Keywords:face recognition,principle component analysis,PCA, Eigenfaces 0 引言 随着社会的不断发展进步以及各方面对快速有效的身份识别技术的迫切需求,生物特征识别技术在最近十年中得到了很快的发展。生物特征识别技术是为了验证身份而采用自动测量技术对身体的特征或个人行为特点进行采集处理,并将采集的特征或特点与模板进行比较,从而完成身份验证的一种解决方案。由于生物特征识别技术利用人本身所具有的特征(如指纹、虹膜、人脸等)进行身份认证,因而它比传统的根据人所携带物品(如)和你所记忆的容(如账号和密码)更加安全和可靠。我们有理由相信生物特征识别技术将使人们的生活方式产生重大的变化[7]。 人脸识别是生物特征识别技术的一种,它也是人们生活中最常用的一种身份认证手段,同时它也是当前最热门的模式识别研究课题之一。通过人脸我们可以判定许多信息:性别、种族、大致年龄及表情等。与其它的生物特征识别技术相比,人脸识别在采

基于PCA的人脸识别研究报告

项目名称:基于PCA的人脸识别算法研究

摘要 随着人类社会的进步,以及科技水平的提高,一些传统的身份认证的方法逐渐暴露出各种问题,因此人们需要采用一种更加可靠安全的身份认证方法。毫无疑问人体的生物特征的独一无二的,特别是其不容易丢失及复制的特性很好满足了身份识别的需要。并且随着计算机科学技术和生物医学的发展使得利用生物特征识别成为了可能。因此基于指纹、人脸、视网膜等生物特征的识别方法也越来越多。由于人脸识别的操作快速简单,结果直观,准确可靠,不需要人的配合等优点已成为人们关注的焦点。主成分分析(PCA)法通过提取高维度的人脸图像的主元,使得图像在低维度空间中被处理来降低了图像处理的难度。由于其有效的解决了图像空间维数过高的问题,已经成为人脸识别领域非常重要的理论。此次研究的就是基于PCA的人脸识别算法的实现。 本文按照完整人脸识别流程来分析基于PCA的人脸识别算法实现的性能。首先使用常用的人脸图像的获取方法获取人脸图像。本文为了更好的分析基于PCA人脸识别系统的性能分别选用了Essex人脸数据库和ORL人脸库,并在后期采用了自建的人脸库。接下来是人脸图像预处理方法。由于采用的人脸图像质量较好,而且已经做过相应的预处理,所以本文试验中只使用灰度处理。接着使用PCA提取人脸特征,使用奇异值分解定理计算协方差矩阵的特征值和特征向量以及使用最近邻法分类器欧几里得距离来进行人脸判别分类。在实验中我们发现基于PCA的人脸识别系统的识别率很高,而且具有一定鲁棒性,所以基于PCA的人脸识别算法的实现的研究还是有意义。 【关键词】人脸识别 PCA算法奇异值分解定理欧几里得距离

人脸识别PCA算法matlab实现及详细步骤讲解

% FaceRec.m % PCA 人脸识别修订版,识别率88% % calc xmean,sigma and its eigen decomposition allsamples=[];%所有训练图像 for i=1:40 for j=1:5 a=imread(strcat('e:\ORL\s',num2str(i),'\',num2str(j),'.jpg')); % imshow(a); b=a(1:112*92); % b 是行矢量1×N,其中N=10304,提取顺序是先列后行,即从上 到下,从左到右 b=double(b); allsamples=[allsamples; b]; % allsamples 是一个M * N 矩阵,allsamples 中每一行数 据代表一张图片,其中M=200 end end samplemean=mean(allsamples); % 平均图片,1 × N for i=1:200 xmean(i,:)=allsamples(i,:)-samplemean; % xmean 是一个M × N 矩阵,xmean 每一行保存的数据是“每个图片数据-平均图片” end; % 获取特征值及特征向量 sigma=xmean*xmean'; % M * M 阶矩阵 [v d]=eig(sigma); d1=diag(d); % 按特征值大小以降序排列 dsort = flipud(d1); vsort = fliplr(v); %以下选择90%的能量 dsum = sum(dsort); dsum_extract = 0; p = 0; while( dsum_extract/dsum < 0.9) p = p + 1; dsum_extract = sum(dsort(1:p)); end i=1; % (训练阶段)计算特征脸形成的坐标系 base = xmean' * vsort(:,1:p) * diag(dsort(1:p).^(-1/2)); % base 是N×p 阶矩阵,除以dsort(i)^(1/2)是对人脸图像的标准化(使其方差为1) % 详见《基于PCA 的人脸识别算法研究》p31 % xmean' * vsort(:,i)是小矩阵的特征向量向大矩阵特征向量转换的过程 %while (i<=p && dsort(i)>0) % base(:,i) = dsort(i)^(-1/2) * xmean' * vsort(:,i); % base 是N×p 阶矩阵,除以dsort(i)^(1/2) 是对人脸图像的标准化(使其方差为1) % 详见《基于PCA 的人脸识别算法研究》p31 % i = i + 1; % xmean' * vsort(:,i)是小矩阵的特征向量向大矩阵特 征向量转换的过程 %end % 以下两行add by gongxun 将训练样本对坐标系上进行投影,得到一个M*p 阶矩阵allcoor allcoor = allsamples * base; % allcoor 里面是每张训练人脸图片在M*p 子空间中的一个点,即在子空间中的组合系数, accu = 0; % 下面的人脸识别过程中就是利用这些组合系数来进行识别

基于PCA和SVM的人脸识别方法

基于PCA 和SVM 的人脸识别方法 一、PCA 算法 1 计算特征脸 设人脸图像f(x,y)为二维m n ?灰度图像,用nm 维向量R 表示。人脸图像训练集为 {}p i R i ,,2,1 =,其中p 为训练集中图像总数。这p 幅图像的平均向量为: ∑==p i i R p R 1 1 对训练样本规范化,即每个人脸i R 与平均人脸R 的差值向量: R R A i i -= p i ,,2,1 = 其中列向量i A 表示一个训练样本。 训练图像由协方差矩阵可表示为: T AA C = 其中训练样本p nm ?维矩阵],,,[21p A A A A = 特征脸由协方差矩阵C 的正交特征向量组成。对于nm 维人脸图像,协方差矩阵C 的大小为nm ×nm ,对它求解特征值和特征向量是很困难的,由此引入奇异值分解定理来解决维数过高的问题。 2 奇异值分解定理 奇异值分解定理( Singular Value Decomposition 简称SVD 定理)原理表述如下: 其中A 是一个秩为r 的r n ?维矩阵,则存在两个正交矩阵: r n r R u u u U ?-∈=],,,[110 I U U T = r r r R v v v V ?-∈=],,,[110 I V V T = 以及对角矩阵 r r r R diag ?-∈=Λ],,,[110λλλ 且110-≥≥≥r λλλ 满足下试: T V U A 2 1Λ= 其中: )1,,1,0(-=r i i λ为矩阵T AA 和A A T 的非零特征值, i u 与i v 分别为T AA 和A A T

对应于i λ的特征向量。上述分解称为矩阵A 的奇异值分解(简称SVD ),i λ为A 的奇异值。 由上述定理可以得到一个推论: 1 Λ=AV U 由于协方差矩阵T AA C =,故构造矩阵: p p T R A A L ?∈= ,容易求出其特征值i λ及相应的 正交归一特征向量),,2,1(p i v i =。有上述推论可知,C 的正交归一特征向量i u 为: i i i Av u λ1 = p i ,,2,1 = 这就是图像的特征向量,它是计算p p ?低维矩阵L 的特征值和特征向量而间接求出来的。实际上l )(p l <个特征值足够用于人脸识别。因此仅取L 的前l 个最大特征值的特征向量计算特征脸。 3 特征向量的选取 我们总共得到了p (训练样本数目)个特征向量。虽然p 比nm 小很多。但通常情况下,p 仍然会太大。根据应用的要求,并不是所有的i u 都有很大的保留意义。 考虑到使用L K -变换做为对人脸图像的压缩手段,可以选取最大的前l 个特征向量,使得: αλ λ≥∑∑==p i i l i i 11 在实际中,可以选择90.0=α,或者自定义的其他值。这说明样本集在前l 个轴上的能量占到整个能量的90%以上。 4 基于特征脸的人脸识别 基于特征脸的人脸识别过程由训练阶段和识别阶段两个阶段组成。在训练阶段,每个已知规范化后的人脸i A 映射到由特征脸张成的子空间上,得到l 维向量: i T i A U C = p i ,,2,1 = 其中T l i c c c C ],,,[21 =,],,,[21l u u u U =,p 为人脸数目。 在识别阶段,首先把待识别的图像规范化后的人脸R R A i -'='映射到特征脸空间,得到

基于PCA进行人脸识别的Matlab代码

%一个修改后的PCA进行人脸识别的Matlab代码 % calc xmean,sigma and its eigen decomposition allsamples=[];%所有训练图像 for i=1:40 for j=1:5 a=imread(strcat('D:\rawdata\ORL\s',num2str(i),'\',num2str(j),'.pgm')); % imshow(a); b=a(1:112*92); % b是行矢量1×N,其中N=10304,提取顺序是先列后行,即从上到下,从左到右 b=double(b); allsamples=[allsamples; b]; % allsamples 是一个M * N 矩阵,allsamples 中每一行数据代表一张图片,其中M=200 end end samplemean=mean(allsamples); % 平均图片,1 × N for i=1:200 xmean(i,:)=allsamples(i,:)-samplemean; % xmean是一个M × N矩阵,xmean每一行保存的数据是“每个图片数据-平均图片” end; sigma=xmean*xmean'; % M * M 阶矩阵 [v d]=eig(sigma); d1=diag(d); [d2 index]=sort(d1); %以升序排序 cols=size(v,2);% 特征向量矩阵的列数 for i=1:cols vsort(:,i) = v(:, index(cols-i+1) ); % vsort 是一个M*col(注:col一般等于M)阶矩阵,保存的是按降序排列的特征向量,每一列构成一个特征向量dsort(i) = d1( index(cols-i+1) ); % dsort 保存的是按降序排列的特征值,是一维行向量 end %完成降序排列 %以下选择90%的能量 dsum = sum(dsort); dsum_extract = 0; p = 0; while( dsum_extract/dsum < 0.9) p = p + 1; dsum_extract = sum(dsort(1:p)); end i=1; % (训练阶段)计算特征脸形成的坐标系 while (i<=p && dsort(i)>0)

基于SVM的人脸识别

基于SVM的人脸识别 摘要:主成分分析(PCA)是人脸识别中特征提取的主要方法,支持向量机(SVM)具有适合处理小样本、非线性和高维数问题,利用核函数且泛化能力强等多方面的优点。文章将两者结合,先用快速PCA算法进行人脸图像特征提取和选择,用所选择的人脸特征向量训练多个支持向量机(SVM),最后用训练好的支持向量机(SVM)进行人脸识别的分类。在ORL人脸数据库上进行了实验,取得了满意的识别效果。 关键词:人脸识别;主成分分析(PCA);奇异值分解(SVD);支持向量机(SVM)引言 人脸识别[1]是计算机视觉和图像模式识别领域的一个重要研究课题,它在生物领域、安全领域、商贸领域及经济领域都有着广泛的应用前景,诸如身份验证、指纹识别、监控系统等。但由于人脸表情丰富,人脸随年龄增长而不断变化,人脸受光照、成像角度及成像距离等影响,这诸多因素使得人脸识别成为一项极富挑战性的课题。人脸识别技术主要包括人脸检测阶段、特征提取阶段和人脸识别阶段,特征提取和人脸识别是研究的重中之重,当前主要的特征提取方法有主成分分析、小波分析、奇异值特征向量等,这些提取方法都是在光照变化不大的前提下才能取得良好的效果,但是光照变化比较大时,计算就会比较复杂,容易获得带噪声的人脸特征向量,导致人脸识别的精度低。人脸分类器主要有:判别分析、贝叶斯分类器、最近邻分类器和K近邻分类器等,这些方法是基于线性的分类器,对于人脸这种高维的特征向量的分类识别率不高,由于面部表情之间差别比较大,因此识别率比较低。神经网络分类识别能力强,但由于其是一种大样本方法,且存在过拟合和局部最优的缺陷等也不是一种非常理想的分类器。支持向量机是一种专门针对小样本、非线性高维的模式识别问题,解决了神经网络的存在的缺陷,因此备受研究人士的亲睐[2]-[5]。 1.人脸特征提取 图像识别中,常常用矩阵来表示人脸图像。然而,高维图像数据对整个识别系统的识别速度有限的,也不利于实时识别系统的实现。降维技术是解决这一问题的常用方法,使数据从原始图像高维空间转化为维数大大减小的特征空间,同时,又保留原始图像数据的绝大部分信息。 主成分分析利用K-L变换得到高维图像空间的一组正交基,保留其中较大的特征值对应的正交基,组成特征脸空间。将PCA用于人脸图像的最优表示,应用主分量重构人脸,提出特征脸(Eigenface)的概念,用PCA实现人脸图像的紧致表示,认为任何一幅图像都可以用一组特征脸的线性加权和来近似重构,其权重系数可以通过将人脸图像在本征脸空间投影得到,然后用投影到低维空间中基函数上的系数来表示人脸并进行识别,并采用奇异值分解(SVD)算法简化了

相关主题
文本预览
相关文档 最新文档