基于2DPCA的人脸识别人脸识别基本流程图人脸检测人脸图像预处理人脸检测人脸跟踪或姿态判别特征的选择与提取分类器分类动态视频输入静态图像输入识别结果输出第一步是进行人脸检测,检测出图像中人脸的位置,对视频输入,则还需一个人脸跟踪或者是姿态判别过程,这样就有利于选择最合适的姿态的人脸来进行识别,可以有效地提高识别率;第二步对人脸进行预处理,先后进行直方图均衡化、图像平滑、图像锐化等操作,以调整人脸图像的方向,统一人脸尺寸大小,去除噪声,获得更清晰的图像,这样,方便和与人脸数据库中人脸进行比对;第三步就是进行人脸特征提取,比较主成分分析法(PCA)、二维主成分分析法(2DPCA)和fisher线性鉴别分析法(FLDA)等多种特征提取方法,用最优的一种或几种特征提取法来选取能代表整个人脸的主要特征;第四步就是将人脸特征送入分类器进行分类,由于人脸数据库中已经存放了人脸的主要特征值,识别的目的就是根据待识别的人脸图像的相关特征与人脸数据库中的人脸图像的相关特征进行相应的匹配。人脸识别主要有两个任务:(1)人脸证实,验证身份是否属实,它的匹配过程是一对一;(2)人脸辨认,判断输入的人脸图像对应人脸库中的是哪一个人,它的匹配过程是一对多。完成识别过程后输出识别结果。预处理就是在图像识别过程中,抽取出不受其他干扰因素影响的待识别样本,就是对输入的图像进行主要特征的抽取、分割和匹配之前所进行的处理。输入的图像由于釆集环境不同,通常会有噪声等一些缺点。此外,还有距离远近、焦距大小等使人脸的大小和位置难以确定。为了使人脸位置处于正中心、尺寸大小合适以及有较好的图像质量,就要进行预处理操作。图像预处理的目的是消除图像中无关的信息,消除噪声和其他无用的干扰,以提高信噪比,加强有用的信息,让数据尽量地被简化,增强特征提取和识别等的可靠性。需要注意的是,没有一定的标准来衡量预处理的好坏,而是根据客观观察来评判。预处理釆用的方法有:直方图均衡化的方法进行灰度归一化提高图像整体对比度、消除光照不均等的影响、中值滤波进行图像平滑、同态滤波进行图像增强。可以较好地消除噪声,增强图像的有用信息。预处理过程灰度归一化(直方图均衡化)图像平滑(中值滤波)图像增强(同态滤波)输入图像输出图像特征提取是将能表征人脸的主要特征提取出来。由于在图像釆集过程中,为了能尽量更多地显示人脸的特征,保证模式的真实性,总是尽可能多地采集各项数据。这样就会使样本的维数非常大,导致处理时计算量非常大,也会影响到分类。另外,在进行模式区分时,并不是每一个特征都会对事物的描述有非常大的意义,因此,需要通过特征提取这一步提取出对识别有明显表现作用的特征,这样可以降低特征的维数,便于计算和处理。经过特征提取后得到的特征空间是用来进行下一步的分类的,因此要尽量使所提取的特征在某种规则下的分类错误达到最小。基于二维主成分分析(2DPCA)的方法2DPCA的介绍2DPCA算法是线性模型参数估计的一种常用方法,基本思想是对输入的图像矩阵进行规范化,求其协方差矩阵,进行特征值分解,选取其中较大特征值对应的特征向量作为方向进行投影,投影后的量称为主元,主元包含了识别所需要的主要信息。想要稳定地提取人脸的主要特征提出了2-D主成分分析(2-Dprincipalcomponentanalysis,2D-PCA)的方法(也被称为2-D主分量分析)。2D-PCA是对以往传统PCA方法的一种扩展,它可以不需要首先将图像矩阵转换成一维向量,而可以直接在图像矩阵上进行相关的处理,这样就避免了求特征值时的巨大计算量。2D-PCA的运算时间是PCA方法的1/20到1/4。2D-PCA方法是直接利用二维图像矩阵来构建协方差矩阵的,然后求出主成分的特征向量,再将二维图像投影到最优的方向上来获得人脸图像的特征表示。同PCA的协方差矩阵比较起来,2DPCA的协方差矩阵较小,所以,相对于PCA,2DPCA有两大主要的优点:一,能简单地评价协方差矩阵;二,找出特征向量所用的时间更少。2DPCA的基本原理设有n维归一化的列向量x,图像A是随机矩阵,大小为mxn,通过如下线性变换:y=Ax将图像A的矩阵向X向量上投影,这样就获得了维数为m的列向量y,y就是图像A的投影特征向量,这里的X向量就是投影向量。如何确定最优的投影向量X呢?可以通过投影后样本的总体散度来对投影向量X的鉴别能力进行衡量。因为用投影的特征向量的协方差矩阵的迹,可以来描述投影后的总体散度特性,所以,定义了下面的判别准则函数:J(x)=tr(Sx)2DPCA和PCA在原理上是一致的,唯一的区别就是主成分分析PCA方法需要将二维的矩阵变成一维的向量再进行处理,而二维主成分分析2DPCA方法不需要进行变换就可以直接对二维的图像进行处理了。在特征提取的时候,二者都需要构造一个协方差来得到投影矩阵,也正是由于这个协方差矩阵的不同,最后2DPCA和PCA处理之后的结果也不同。对于PCA,要处理的协方差矩阵,里面包含了人脸图像的任意两个像素间的相关信息。而对于2DPCA来说,它要处理的协方差矩阵,里面只包含了同列像素间的相关信息。由此可知,2DPCA的协方差矩阵所包含的信息,比起PCA中的协方差矩阵包含的信息要少很多,并且2DPCA提取的特征与PCA提取的特征的重建误差相同,即2DPCA丢失的信息对于重构人脸图像是没有影响的。只要2DPCA的协方差矩阵的特征值平方和比PCA的协方差矩阵的特征值平方和大的话,那么在重建误差意义下,2DPCA的人脸图像特征就会优于PCA的人脸图像特征。人脸图像分类器设计特征提取之后,要将提取的人脸特征送入分类器中进行识别。在这里选用支持向量机的方法为解决小样本问题的学习和分类,支持向量机(SVM)被提出了,它可以对神经网络等方法的过学习和欠学习问题进行解决,再者,它的非线性分类能力比较强。将支持向量机方法用来进行人脸识别,其系统框图如下所示:输入图像分类识别SVMnSVM2SVM1提取特征识别结果先提取每幅训练图像的特征,来训练支持向量机,在进行测试时,也是先将特征提取出来,然后送入SVM分类器中,最后得到分类结果。支持向量机的分类决策支持向量机要达到结构化风险最小,做到训练误差与测试误差的最小化,即兼顾经验风险与期望风险的最小化,这主要表现在分类模型上还有如何选择模型参数上。在选择模型参数时要考虑哪条分类直线是最优的选择,在直观上,和训练样本太近的分类线会对噪声很敏感,并且对训练样本以外的数据不能很好地进行归纳;而远离所有样本的分类线具有较好的归纳能力。如果分类线不仅能将两类正确的分开,并使分类间隔达到最大,那这样的分类线就是最优分类线。SVM是从线性可分下的最优分类面渐渐发展过来的,它的主要思想是寻找能将两类样本成功分开并且使得两类样本具有最大的分类间隔的这样一种最优的分类超平面。由于人脸识别分类是个多类问题,因为要从数据库中找出一幅与待测人脸最相似的人脸图像,以确定身份,所以需要有效地将SVM推广到多类分类。现今大致有两类SVM多类分类算法:一种是将两类SVM扩展成多类分类的SVM,但是这样就会导致在最优化问题求解过程中变量太多而有过高的计算复杂度;另一种是是用多个两类分类SVM来形成多类分类器。第二类分类算法是目前应用较广泛的,主要有一对多SVM算法、一对一SVM算法等。