APP下载

基于混合核函数的快速KPCA人脸识别算法

2015-12-20穆新亮

电子科技 2015年2期
关键词:协方差特征向量识别率

穆新亮

(西安电子科技大学数学与统计学院,陕西西安 710126)

目前,人脸识别算法中较为主流的是Turk等[1]提出了一种较为经典的特征人脸法,其利用主成分分析法(PCA)进行人脸特征提取,而且取得了较好的效果,且有众多研究者对该方法进行了改进[2-5]。由于图像像素之间存在非线性相关性,而PCA只对图像数据线性关系处理的效果较好,PCA对非线性相关性的数据信息却得不到良好的处理。

针对此问题,Vpink等人根据统计学习理论的相关知识提出了一种基于支持向量机(SVM)学习方法,同时引入了核空间。Scholkopf[6]首先提出了作为PCA的非线性推广KPCA,由于核主成分分析(KPCA)考虑了非线性信息,使得识别效果比PCA更好。目前,KPCA已广泛应用于人脸识别中。对未来人脸识别技术发展奠定了基础。其中利用KPCA方法把输入空间不可线性分类问题变换到特征空间实现线性分类。此方法的识别效果明显高于主成分分析方法。同样对于采用KPCA法进行人脸特征提取,利用线性支持向量机(SVM)设计分类器,使得人脸识别率也明显得到提高。但单一使用核函数会使得特征提取的数据有一定的缺陷和不足。针对此问题,本文首先通过提出的快速的KPCA方法的详细推导过程,使得研究者更加具体的从原理上得到理解,然后再利用基于混合核函数KPCA进行特征提取与分类识别

1 传统核主成分分析(KPCA)

1.1 主成分分析

PCA[7-9]已广泛应用于人脸识别中,其主要特点是将每一张人脸图像按列拉成一列向量,即随机向量x,在保证重建误差最小的情形下,寻找一个投影方向v,使这些随机向量在该方向上投影后的方差最大。对于给定 N 张训练图像 x1,x2,…,xN,xi∈Rn,i=1,2,…,N,N·n,C为训练图像的协方差矩阵

问题转化为求协方差矩阵最大特征值所对应的特征向量,但是由于C的维数是n×n,维数较大,所以计算特征值分解时相当费时,通常采用奇异值分解(SVD)[10]进行转换,最终得到协方差矩阵的主特征向量,从而可方便地求出经过线性降维后的数据。

1.2 核主成分分析

首先一个非线性Φ被用来将输入数据空间Rn映射到特征空间 F∶Φ∶Rn→F,xi|→Φ(xi),i=1,2,…,N,设M=[Φ(x1),Φ(x2),…,Φ(xN)],随机向量Φ(x)协方差矩阵为,其中,然而在特征空间中中心化数据较为困难,因此可首先考虑非中心化的协方差矩阵,在高维的特征空间中计算协方差矩阵C的特征向量几乎不可能,因此使用核技巧来处理。设kij=k(xi,xj)=(Φ(xi)·Φ(xj)),则核矩阵K=MTM,而核矩阵的维数远小于协方差矩阵的维数,因此可先计算核矩阵K的特征向量,然后由奇异值分解定理可推导出协方差矩阵C的特征值,但要求的是中心化的协方差矩阵CΦ的特征向量,可知当核矩阵K通过下面的公式中心化

只要求K出的前m个最大特征值σ1≥σ2≥…≥σm所对应的特征向量 μ1,μ2,…,μm,也可推到出 CΦ相应的m个特征向量v1,v2,…,vm,则样本Φ(xj)经非线性降维后变为 y=[y1,y2,…,ym],其中

2 快速核主成分分析

根据KPCA的计算过程可知:假设有个训练样本,构成了N个样本矢量,每个矢量的维数为n,则核矩阵K为N×N方阵,对于大样本集识别问题,训练和识别会占用较长的时间。

针对上述问题及文献[11],本文提出一种用样本的均值矢量代替所有样本来生成核矩阵的方法。基本思想是假设这些样本分为C类,每个类别的样本数为L个,称之为有L组训练样本,如果从中提取T(T<L)组样本进行计算核矩阵,当T·L时,计算时间将会大幅缩减,从而将KPCA应用于实时的人脸识别系统成为可能,均值矢量可表示为

定理 1[12]ke)T],其中 e=[1,1,…,1]。

定理2[13]设 K1和 K2是 χ× χ上核函数,x∈Rn。设常数a≥0,则下面的函数均是核函数:

(1)K(x,x')=K1(x,x')+K2(x,x')

(2)K(x,x')=aK1(x,x')

(3)K(x,x')=aK1(x,x')K2(x,x')所以本文使用的混合核函数为

本文提出基于混合核函数的FKPCA进行人脸识别。

FKPCA算法:

步骤1 首先要确定使用的核函数,且需给核函数中的参数以确定的值。

步骤2 计算训练样本的均值矢量,然后建立核矩阵 K=MTM,M:=K+δI

步骤3 根据(MTM)-1CIα=λα,可求出矩阵的前m个特征值和特征向量

步骤 4 特征提取:记 U=[α1,α2,…,αm],V=[v1,v2,…,vm]则

Y=[y1,y2,…,yN],其中 yi∈Rm×N表示第 i张图片经非线性降维后的图像向量

步骤5 分类识别:比较待识别的一张图片yc和训练集中的所有图片 ti的欧氏距离,若 d(yc,tl)=,则认为该测试图像 yc和 ti是同一类的

3 实验结果及分析

实验环境:Windows 7+Matlab 2009b,计算机的CPU:Dual Core Processor 2.4 GHz,1.87 GB 内存。在实验中,使用如下两个数据库:(1)ORL人脸数据库包含40个人,每个提供10种不同的图像。部分图像是在不同时间拍摄的,面部表情和面部细节各有所不同。所有灰度图像分辨率为112×92;(2)AR[14]人脸数据库(http://rvl1.ecn.purdue.edu/aleix/aleix face DB.html)是一个大型人脸图像数据集。部分图像由于存在太阳镜和围巾,可能会包含大面积遮挡,这增加了类内的差异和识别难度。本文使用AR的一个子集,包含40个人的200张人脸图像,灰度图像分辨率为40×50。

图1 ORL人脸数据库中一组人脸图像

3.1 在ORL数据库的比较

在本次实验中通过实验选取较优的参数σ2=1 000,在ORL数据库中比较传统的KPCA中核矩阵K=K-1NK-K1N+1NK1N与本文提出的K-INK的特征值,发现完全相等,且相应计算出的人脸图像识别率也几乎完全相等,如图2所示。

图2 两种方法的特征值与相应识别率比较图

因此,可使用本文推导出的方法计算协方差矩阵的特征向量,此方法计算复杂度明显减小。若要处理大数据的识别问题,为能提高识别率和运行时间采用混合核函数并用均值矢量构建核矩阵的方法。

3.2 在AR数据库的比较

传统的 KPCA采用高斯核,其中2σ2=188,在FKPCA算法中混合核函数,经多次实验最终选择较优的参数a=2,b=1,c=0,d=1/4,2σ2=188,然后在AR数据库中进行实验,取编号为奇数的图像作为训练集,选定均值矢量图像作为训练集,如图3所示。

图3 两种特征值贡献率与识别率的运行时间对比图

从图3可看出,在这种混合函数情况下,提出的方法比传统的KPCA方法拥有较高的识别率,且稳定性较好。此外,更重要的是时间成本节省较多,人脸的识别速度更快。

3.3 在ORL数据库的比较

3.3.1 多式核与高斯核之积的混合核函数

实验在ORL人脸数据库中进行,在FKPCA中混合核函数采用式(8),其中参数通过大量实验取最优为2σ2=200,a=6e-4,b=d=1,c=0,均值矢量只取所有训练样本的均值,传统KPC采用高斯核函数,其中2σ2=200,得到的实验结果如图3所示。

图4 两种特征值贡献率与识别率的运行时间比较

如图4所示,这两种算法在识别率方面接近,但运行时大幅降低,从而在处理大数据的人脸识别问题时就具有优势,为实时识别系统提供了便捷。

3.3.2 多项式核与高斯核加权和的混合核函数

实验在ORL人脸数据库中进行,在FKPCA中混合核函数采用式(7),选择最优的参数为a=4,b=1,c=0,d=1/4,2σ2=200,均值矢量只取所有训练样本的均值,传统KPC采用高斯核函数,其中2σ2=200,得到的实验结果如图5所示。

从图5也可明显看出,通过加权混合核函数的FKPCA算法在较大程度上提高了人脸识别率,而且随着特征值累积贡献率的增加,识别率保持稳中有升的态势,但传统的KPCA在这方面出现了摆动现象,因此还有FKPCA算法较为高效,识别时间短,且大幅减少了时间成本,从而在大数据时代具有一定的应用前景。

图5 两种特征值贡献率与识别率的运行时间比较图

4 结束语

提出了基于混合核函数的快递核主成分分析的人脸识别方法。该方法对人脸数据进行降维,删除图像固有的冗余,获得有效的人脸特征矩阵,再利用图像的相似性和NN分类器来进行分类识别。该方法的特点是用训练样本的均值矢量代替原有的训练样本,从而建立核矩阵,实验结果表明,本文方法获得较高的识别率;同时和其他现存的方法相比,本文的方法识别率比较稳定,且时间复杂度大幅降低,从而在大数据时代将发挥应有的作用。但是,必须认识到FKPCA算法的局限性,其主成分在一些实际问题中无法合理解释。因此,研究稀疏PCA是下一步要进行的任务,其主要思路是在原始的PCA的优化模型中增加一个约束条件≤k,k是一个常正整数,这个优化模型求解出来的方向向量是稀疏的,最多有k个非零元素,虽然这一问题是NP难问题,但其在新闻数据分类、选票统计和股票市场数据中应用广泛,目前常用的算法是将其转化为半定规划模型来解决,但是它的模型推导复杂并且解的精度并不理想,因此值得继续研究。

[1]Turk Pentland M.Eigenfaces for recognition[J].Cognitive Science,1991,1(3):71 -86 1991.

[2]Jolliffe I T.Principal component analysis[M].2nd Edition.Berlin:Springer,2002.

[3]Yang J,Yang JY.From image vector to matrix:A straightforward image projection technique-IMPCA versus PCA[J].Pattern Recognition,2002,35(9):1997 -1999.

[4]Chen S,Zhu Y.Subpattern - based principal component analysis[J].Pattern Recognition,2004,37(5):1081 -1083.

[5]Gottuumukkal R,Asari V K.An improved face recognition technique based on modular PCA approach [J].Pattern Recognition Letter,2004,25(4):429 -436.

[6]Scholkopf B,Smola A,Muller K R.Nonlinear component analysis as a kernel eigenvalue Problem[J].Neural Computer,2011(3):1299 -1319.

[7]Yang Minghsuan.Kernel eigenfaces vs.kernel fisherfaces:face recognition using kernel methods[C].In Proceedings of the Fifth IEEE International Confernce on Automatic Face and Gesture Recognition,2002:215 -220.

[8]Wang Yanmei,Zhang Yanzhu.Facial recognition base on kernel PCA[C].2010 Third International Conference on Intelligent Networks and Intelligent Systems,2010.

[9]Zhao Lihong,Zhang Xili,Xu Xinhe.Face recognition base on KPCA with polynomial krnel[C].Beijing,China:Proceedings of the 2007 International Conference on Wavelet Analysis and Pattern Recognition,2007.

[10]Du G,Zhu W J.Face recognition method based on singular value decomposition and fuzzy decision[J].Journal of Image and Graphics,2006,11(10):1456 -1459.

[11]吴成东,樊玉泉,张云洲,等.基于改进KPCA算法的车牌字符识别方法[J].东北大学学报:自然科学版,2008,29(5):629-632.

[12]Gopi ES,Palanisamy P.Fast computation of PCA bases of image subspace using its inner-product subspace[J].Applied Mathematics and Computation,2013,21(9):6729 -6732.

[13]邓乃扬,田英杰.数据挖掘中的新方法—支持向量机[M].北京:科学出版社,2004.

[14]Martinez A,Benavente R.The AR face database[R].MA USA:Technical Report Computer Vision Center,1998.

猜你喜欢

协方差特征向量识别率
二年制职教本科线性代数课程的几何化教学设计——以特征值和特征向量为例
克罗内克积的特征向量
基于类图像处理与向量化的大数据脚本攻击智能检测
基于真耳分析的助听器配戴者言语可懂度指数与言语识别率的关系
提升高速公路MTC二次抓拍车牌识别率方案研究
一类特殊矩阵特征向量的求法
用于检验散斑协方差矩阵估计性能的白化度评价方法
EXCEL表格计算判断矩阵近似特征向量在AHP法检验上的应用
多元线性模型中回归系数矩阵的可估函数和协方差阵的同时Bayes估计及优良性
二维随机变量边缘分布函数的教学探索