基于PCA和SVM的人脸识别技术研究

2015-12-11 02:47梅文兰孔祥聪廖红华
关键词:支持向量机主成分分析人脸识别

郭 黎,冷 洁,梅文兰,孔祥聪,廖 宇,廖红华

(1.湖北民族学院 信息工程学院,湖北 恩施 445000;

2.四川省成都市地铁运营有限公司,四川 成都 610081;

3.恩施州电力总公司,湖北 恩施 445000)



基于PCA和SVM的人脸识别技术研究

郭黎1,冷洁1,梅文兰2,孔祥聪3,廖宇1,廖红华1

(1.湖北民族学院 信息工程学院,湖北 恩施 445000;

2.四川省成都市地铁运营有限公司,四川 成都 610081;

3.恩施州电力总公司,湖北 恩施 445000)

摘要:从人脸图像特征提取和分类器构建两方面分析了人脸识别系统设计的关键点,提出了以主成分分析技术和支持向量机技术相结合构建人脸识别系统的策略,同时在主成分分析技术的理论基础上提出了一种快速PCA算法.通过实验系统在ORL人脸库上的测试结果,分析了该系统的相关参数和特征向量维度的选取对系统识别率的影响,并得到了其最优解.同时,通过实验证明了所提出方法在小训练集下的识别率优于其它一般方法,其识别率比一般的人工神经网络法提高了7%~10%左右.

关键词:人脸识别;主成分分析;快速PCA;支持向量机

随着近几年生物特征识别技术的蓬勃发展,人脸识别技术作为主要研究方面之一,也得到了极大提升.人脸识别技术作为一种非接触、对象已获取的简便识别手段,在安保、刑侦、考勤、金融等领域有着巨大的应用前景.

人脸识别技术的关键在于人脸图像特征的提取以及最优分类器的构建.基于这两点,国内外研究人员提出了多种算法策略,例如子空间分析法[1]、弹性匹配法[2]、主成分分析法[3]、人工神经网络法[4]以及多种方法的结合等,其中人工神经网络法的使用最为广泛.这些方法各有优缺点,但总体呈现一个问题:过于依赖训练集.它们需要利用含样本数较多的训练集进行训练后,才能保证较高的识别率,且易出现过度拟合现象[5].

人脸图像作为原始输入信息,一般含有大量冗余信息.为了降低识别系统的计算量以及确保分类器的分类准确性,在识别前期需要对预处理后的人脸图像进行特征提取,以获取对识别操作最有用的特征信息,排除次要信息对识别结果的干扰.主成分分析(PCA)方法作为一种经典的多变量分析技术,它将高维空间数据向低维空间映射并以在最小均方差意义下最能代表原始数据为原则[6],这样既保留了原始数据的独特性利于分类,又降低了数据维度便于计算处理.

分类器一般是依据训练集生成最优分类函数的,而训练集的容量有限,不能包含较多的类别信息.因此,分类器最好能在小训练集的基础上兼顾训练误差和测试误差最小化.支持向量机(SVM)正是以结构化风险最小化为原则,以获得能正确区分不同样本且具有最大分类余地的最优分类超平面为目的.这样既有效地防止过度拟合现象发生,又降低了寻求最优分类函数的计算量[7].

基于以上原因,文中提出了一种快速主成分分析算法,并与支持向量机技术相结合实现了用于实验的人脸识别系统.通过实验,分析了维度选择与参数选择对整个系统的具体影响,以及验证了本文方法优于传统的人工神经网络法.

1 主成分分析

主成分分析所要解决的问题可以描述成:对于d维空间中的n个样本向量x1,x2,…,xn,如何将它们映射到维数较低的h维空间中使所得到的像能最好代表它们[7].

1.1d维空间到h维空间的映射

在h维空间中的向量可以表示为:

(1)

其中:

(2)

另n代表样本个数,ek代表空间的基向量,ak为坐标参数.

在h维空间中的平方误差函数表达式为:

(3)

根据主成分分析理论,可知当h维空间中的向量e1,e2,…,eh为散布矩阵S的前h个本征值所对应的本征向量时,Eh(e1,e2,…,eh)取得最小值.又因为散布矩阵S为实数对数矩阵,所以其本征向量都是相互正交的.于是,这些本征向量自然就构成了h维空间中的一组基向量,任一个属于该h维空间的向量xi′都能表示为:

(4)

其中:

(5)

式(4)中基向量e1,e2,…,eh所对应的系数ai1,ai2,…,aih便是d维空间样本xi的主成分.这样得到的h维向量xih=(ai1,ai2,…,aih)便是原样本xi在以e1,e2,…,eh为基向量的h维空间中的近似表示,随着维度h的增加其近似程度也增大,即保留的原样本的信息越完整.这样便可以顺利将人脸图像转化为低维的特征向量,通过选择合适的维度便可以比完整地保留人脸信息并增强人脸样本的区分度[8-13].

1.2 快速PCA算法

从上述分析中可以看出,主成分分析方法的主要计算量来自样本散布矩阵的本征值以及本征向量的计算.当样本向量的维数较大时,若直接使用上述方法计算,时间消耗会很巨大,还有可能面临内存耗尽的问题.因此,本文提出一种改进的快速PCA算法.

假设矩阵Zn×d是由样本矩阵X中的每个样本值减去样本均值m后得到的,于是得散布矩阵S为(ZTZ)d×d.对于矩阵R=(ZZT)n×n,在通常情况下由于样本个数n远小于样本维数d,但矩阵R与散布矩阵S有相同的非零本征值.令n维列向量v为矩阵R的本征向量,则有:

(6)

将式(6)两边同时左乘ZT,则可得:

(7)

式(7)表明散布矩阵S的本征向量为ZTv.由此看出可以通过先计算小尺寸矩阵R的本征向量v,再利用左乘ZT得出散布矩阵S的本征向量ZTv.如此,将大大降低PCA处理的计算量.如图1所示,这是利用快速PCA算法对ORL人脸库提取主成分脸的结果.这表明该算法可以成功提取主成分脸,关于该算法快速性的验证将在本文的第4节中说明.

图1 快速PCA提取的主成分脸Fig.1 Principle component face extracted by Fast PCA

图2 识别率与特征向量维度的关系Fig.2 Relation of recognition rate and feature vector dimenscon

2 基于PCA和SVM的人脸识别算法

人脸识别问题实质是一个复杂的非线性分类问题.因此,采用SVM分类器时需利用核函数将非线性问题转换成高维空间的线性分类问题,同时还需引入一个错误代价参数C以兼顾训练误差和测试误差最小化,然后寻求高维空间中的最优分类超平面.

本文结合主成分分析技术和支持向量机技术提出了如下人脸识别策略:

1)将载入的人脸图像进行预处理后再向量化,然后利用快速PCA算法对其进行特征提取及降维处理;

2)将步骤(1)处理得到的数据传输给SVM分类器,进行识别测试.

步骤(2)中,分类器需要经过训练后才能正常工作,对于传输来的训练集数据分类器进入学习模式,训练完成后分类器转为识别模式进行识别测试.

这一策略相对于传统的人工神经网络法,其可以在小训练集情况下保持高识别率,避免了局部极值问题,具有更好的实用性.

基于上述策略,利用MATLAB平台,对本文所提算法进行了实验.在实验中,SVM分类器采用径向基核函数生成,其具体定义如下:

(8)

在SVM分类器中存在两个需要事先给定的参数:错误代价参数C、径向基核函数参数γ.这两个参数直接影响着分类器的识别率.另外,PCA所提取特征的维数也间接影响着分类器的识别率.如图2所示,识别率与特征向量维度的关系中存在一个维度最大值,当所选取的图像特征向量维度超过这个最大值时,识别系统的识别率会降低,即出现维度灾难.因此,参数C、γ以及维度的确定也至关重要,后续会对这些参数的选取作说明.

3 实验结果与分析

本文采用ORL人脸数据库进行实验.ORL人脸库由剑桥大学AT&T实验室创建,包含40个人的共400幅正向面部图像,其中某些被采集者的人脸图像包括了形态、表情和装饰品的改变,每幅图像的光照方向以及强度相似.该人脸数据库共包含400幅人脸图像,每人10幅,图像大小为112×92.如图3所示,为ORL人脸库中部分人脸图像.

图3 ORL人脸库中部分人脸图像Fig.3 Face image in ORL face data base

利用LibSVM工具箱中的grid.py应用对整个人脸库进行了搜索,得到了错误代价参数C和径向基核函数参数γ的一组最优参数值:参数C取128,参数γ取0.0078125.在系统中,PCA提取特征向量的维度值可调,其默认值为20.

本文实验均在MATLAB2010b软件平台上运行,计算机配置为:Intel2.5GHz双核处理器、4G内存、32位操作系统.

表1 两种PCA算法的时间效率

表2 参数C和γ最优值的验证结果

图4 特征向量维数对系统识别率的影响Fig.4 Recongnition rate affected by feature vector dimension

人脸识别方法识别率/%PCA+SVM97.4ANN80.3PCA+ANN91.0

为了验证快速PCA算法的时间效率,本文以ORL人脸库作为测试数据,分别用一般PCA算法和快速PCA算法进行10组测试实验,最后求取两种算法的时间效率平均值.实验中原始人脸图像经向量化后维度数为10304维,提取的特征向量维数取20维.实验结果见表1.表中O-PCA指代一般PCA算法,F-PCA指代本文的快速PCA算法.从表中可以看出本文的快速PCA算法的时间效率比一般PCA算法要高,其效率几乎提高12倍,达到了本文的预期效果.

为了获得对应于系统最高识别率的最优特征向量维度值,并验证经应用工具搜索所得的参数C和γ最优值,本文将ORL人脸库中的人脸图像分为两组:训练集、测试集.训练集和测试集各含有200幅人脸图像.先验证参数C和γ的最优值,此时特征向量维度取默认的20,使SVM分类器取得最优参数值以达到最佳状态;在此基础上排除了其它干扰,再测试经PCA提取的不同维度的特征向量对系统识别率的影响.

对于验证参数C和γ最优值,本文选取了五组参数值加以测试,验证结果如表2所示.经搜索所得的最优参数值对应的系统识别率确实是最高的,表明参数C和γ的最优值选取正确.

提取的特征向量维度数对系统影响的实验结果如图4所示.从实验结果可以看出,提取的特征向量维数会对系统的识别率造成影响,且在本文所设计系统的识别率最高值落在特征向量维数为14的邻域空间中.另由实验结果可看出,当本系统采用参数C和γ的最优值以及选择合适的特征向量维数时,识别率可达到97%左右.

从实验结果可以看出,采用PCA和SVM技术的人脸识别系统对小训练集(训练样本200个)的识别率可以达到90%以上,有效地避免了过度拟合问题,兼顾了训练误差和测试误差.

通过以上实验,得到了本文所设计人脸识别系统运行的最优参数组值以及特征维数.在此基础上本系统与用传统人工神经网络法实现的系统以及采用PCA和ANN技术结合实现的系统的测试结果见表3.测试所用的人脸库仍采用ORL人脸库.

从测试结果可以看出,本文所提出的PCA和SVM技术相结合方法的识别率要优于一般的人工神经网络方法以及结合了PCA技术的人工神经网络方法.由此可见,本文所提出的方法较人工神经网络法有更强的实用性.

4结语

在原PCA理论的基础上,提出了一种快速PCA算法,并将PCA和SVM技术相结合实现新的人脸识别算法.通过实验验证了快速PCA算法的高时间效率及该系统的可用性,并分析了系统参数以及特征向量维数对系统的影响,找到了最优值.采用PCA技术一方面降低计算量,另一方面提取主成分提高了识别率;采用SVM技术,使得在小训练集的基础上也可以得到较高的识别率.通过实验比较,表明了本方法较之于一般方法有更高的识别率.

参考文献:

[1]葛微,程宇奇,刘春香,等.基于子空间分析的人脸识别方法研究[J].中国光学与应用光学,2009,05:377-387.

[2]张会森,王映辉.人脸识别技术[J].计算机工程与设计,2006,11:1923-1928.

[3]王正洪,邹凌.基于主成分分析方法的人脸识别研究[J].微计算机信息,2007,28:235-237.

[4]冯巧娟.人工神经网络在人脸识别中的应用[J].平顶山工学院学报,2008(2):19-20+26.

[5]张世波.人脸识别中的特征向量优化算法研究[D].济南:山东大学,2009.

[6]曾朝.基于BP神经网络的人脸识别系统研究[D].长沙:湖南大学,2007.

[7]田海军.基于支持向量机的人脸识别技术研究与实现[D].长沙:国防科学技术大学,2009.

[8]张铮,王艳平.数字图像处理与机器视觉[M].北京:人民邮电出版社,2010.

[9]刘嵩.基于特征融合的人脸识别[J].湖北民族学院学报:自然科学版,2011,29(2):188-190.

[10]谭乐平.基于LVQ神经网络的人脸朝向识别方法[J].湖北民族学院学报:自然科学版,2012,30(2):386-389.

责任编辑:时凌

Research on Human Face Recognition Technology

Based on PCA and SVM

GUO Li1,LENG Jie1,MEI Wenlan2,KONG Xiangsong3,LIAO Yu1,LIAO Honghua1

(1.School of Information Engineering,Hubei University for Nationalities,Enshi 445000,China;

2.Metro Railway Corporation Limited,Chendu 610081,China;

3.Enshi Electic Power Company,Enshi 445000,China)

Abstract:This paper analyzed the key points of face recognition system design by the extraction of face image feature and build of classifier, and it proposed a plot which built face recognition system by integrating principal component analysis and support vector machine technology. And a fast PCA algorithm had been proposed on the basis of the theory of principal component analysis technology. This paper analyzed the impact of the system parameters and dimensions of the selected feature vector on recognition rate of the experimental system and got the optimal solution on basis of the system test results on ORL face database.And experimental results have demonstrated that recognition rate of the method this paper proposed is superior to other general methods on the small training set, and its recognition rate increased about 7% to 10% higher than the average artificial neural network.

Key words:human face recognition technology;PCA; fast PCA;SVM

DOI:10.13501/j.cnki.42-1569/n.2015.06.025 10.13501/j.cnki.42-1569/n.2015.06.021

文章编号:1008-8423(2015)02-0215-03 1008-8423(2015)02-0197-03

作者简介:柳文述(1971- ),男,高级工程师,主要从事电网规划与设计的研究. 徐建(1982- ),男,硕士,讲师,主要从事嵌入式与智能控制方面的研究.

基金项目:湖北省自然科学基金计划项目(2013CFC125). 国家自然科学基金项目(6123030,61463014);湖北民族学院科技学院科研项目(KY20148);恩施州科技计划研究与开发项目(XYJ201500055).

收稿日期:2015-05-10. 2015-01-16.

中图分类号:TP391.9;TN911.73

文献标志码:A

猜你喜欢
支持向量机主成分分析人脸识别
人脸识别 等
揭开人脸识别的神秘面纱
人脸识别技术的基本原理与应用
动态场景中的视觉目标识别方法分析
论提高装备故障预测准确度的方法途径
主成分分析法在大学英语写作评价中的应用
江苏省客源市场影响因素研究
基于熵技术的公共事业费最优组合预测
SPSS在环境地球化学中的应用
基于支持向量机的金融数据分析研究