基于PCA的人脸识别算法AlenFielding摘要:文章具体讨论了主成分分析(PCA)人脸识别算法的原理及实现。它具有简单、快速和易行等特点,能从整体上反映人脸图像的灰度相关性具有一定的实用价值。关键词:人脸识别;PCA;生物特征;识别技术中图分类号:TP302文献标识码:AFacerecognitionmethodbasedonPCAZhangjinhua(Informationengineeringcollege,Southwestuniversityofscienceandtechnology,Sichuan,621010,China)Abstract:Thepaperdiscussedtheprincipalcomponentanalysis(PCA)facerecognitionalgorithmofprincipleandrealization.Itissimple,rapidandeasywaitforacharacteristic,canreflectfromwholefaceimagegraycorrelationhascertainpracticalvalue.Keywords:Facerecognition;PCA;Biologicalcharacteristics;Recognitiontechnology1引言PCA,即PrincipalComponentAnalysis,主成分分析方法,是一种得到广泛应用的事实上的标准人脸识别方法。传统主成分分析方法的基本原理是:利用K-L变换抽取人脸的主要成分,构成特征脸空间,识别时将测试图像投影到此空间,得到一组投影系数,通过与各个人脸图像比较进行识别。这种方法使得压缩前后的均方误差最小,且变换后的低维空间有很好的分辨能力。2K-L变换PCA方法是由Turk和Pentlad提出来的,它的基础就是Karhunen-Loeve变换(简称K-L变换),是一种常用的正交变换。首先对K-L变换作一个简单介绍:假设X为n维的随机变量,X可以用n个基向量的加权和来表示:X=iφi式中:αi是加权系数,φi是基向量,此式可以用矩阵的形式表示:X=(φ1,φ2,φ3,……,φn)(α1,α2,……αn)=Φα系数向量为:α=ΦTX综上所述,K-L展开式的系数可用下列步骤求出:步骤一求随机向量X的自相关矩阵R=E[XTX],由于没有类别信息的样本集的μ均值向量,常常没有意义,所以也可以把数据的协方差矩阵=E[(x-μ)(x-μ)T]作为K-L坐标系的产生矩阵,这里μ是总体均值向量。步骤二求出自相关矩阵或者协方差矩阵R的本征值λi和本征向量φi,Φ=(φ1,φ2,φ3,……,φn)步骤三展开式系数即为α=ΦTXK-L变换的实质是建立一个新的坐标系,将一个物体主轴沿特征矢量对齐的转变换,这个变换解除了原有数据向量的各个分量之间相关性,从而有可能去掉那些带有较少信息的坐标系以达到降低特征空间维数的目的。3PCA方法PCA方法,也被叫做特征脸方法(eigenfaces),是一种基于整幅人脸图像的识别算法,被广泛用于降维,在人脸识别领域也表现突出。一个N×N的二维脸部图片可以看成是N的一个一维向量,一张112×92的图片可以看成是一个10,304维的向量,同时也可以看成是一个10,304维空间中一点。图片映射到这个巨大的空间后,由于人脸的构造相对来说比较接近,因此,可以用一个相应的低维子空间来表示。我们把这个子空间叫做“脸空间”。PCA的主要思想就是找到能够最好地说明图片在图片空间中的分布情况的那些向量。这些向量能够定义“脸空间”,每个向量的长度为N,描述一张N×N的图片,并且是原始脸部图片的一个线性组合。对于一副M*N的人脸图像,将其每列相连构成一个大小为D=M*N维的列向量。D就是人脸图像的维数,也即是图像空间的维数。设n是训练样本的数目;Xj表示第j幅人脸图像形成的人脸向量,则所需样本的协方差矩阵为:Sr=(1)其中u为训练样本的平均图像向量:u=(2)令A=[x1-ux2-u……xn-u],则有Sr=AAT,其维数为D*D。根据K-L变换原理,需要求得的新坐标系由矩阵AAT的非零特征值所对应得特征向量组成。直接计算的计算量比较大,所以采用奇异值分解(SVD)定理,通过求解ATA的特征值和特征向量来获得AAT的特征值和特征向量。依据SVD定理,令li(i=1,2,……,r)为矩阵ATA的r个非零特征值,vi为ATA对应于li的特征向量,则AAT的正交归一特征向量ui为:(i=1,2,……r)(3)则特征脸空间为:w=(u1,u2……ur,)。将训练样本投影到“特征脸”空间,得到一组投影向量Ω=wTu,构成人脸识别的数据库。在识别时,先将每一幅待是识别的人脸图像投影到“特征脸”空间,再利用最近邻分类器的比较其与库中人脸的位置,从而识别出该图像是否是库中的人脸,如果是,是哪一个人脸。4利用PCA进行人脸识别完...