基于快速PCA―SVM的人脸识别研究

时间:2022-08-27 03:01:04

基于快速PCA―SVM的人脸识别研究

摘 要 为降低人脸识别的误差率,本文采用了快速主成分分析(快速PCA)和支持向量机(SVM)结合的算法。先用快速PCA算法进行人脸图像降维和特征选择,提高识别速率;然后用所选择的人脸特征向量训练多个SVM;最后用训练好的SVM进行识别分类。实验在训练的人脸库上进行,在速度和正确的识别率方面都取得了满意的效果。

关键词 人脸识别 快速PCA SVM

中图分类号:TP391.9 文献标识码:A

0引言

随着社会的不断进步以及各行业对于快速有效的自动身份验证的迫切要求,生物特征识别技术得到了飞速发展,人脸识别是当前生物特征识别的主要技术之一。

人脸识别技术与其他识别方法相比,具有直接、友好、方便等特点,易于被用户接受,从而得到了广泛的研究与应用。但人脸表情丰富,人脸会随年龄增长而不断变化以及受光照、成像角度诸多因素的影响下,人脸识别成为一项极富挑战性的课题。

主成分分析(PCA)作为经典的特征提取方法被广泛研究,但样本维数较大时,使用PCA进行降维和特征选择需要花费很长时间。为提高识别速率,文本使用了快速PCA算法。支持向量机(SVM)是一种专门针对小样本、非线性高维的模式识别问题的分类器,可以提高人脸识别的准确率。

1人脸识别系统

人脸识别系统在软件MATLAB上实现,系统流程如图1所示。

2 图像处理

2.1图像采集

使用小米手机获取20人,每人不同表情、角度的图像各10幅,组成200幅人脸库。

2.2图像预处理

在MATLAB的脚本文件编辑界面,对图像进行如下预处理:

(1)对200幅彩色图像进行灰度转化。

(2)增加灰度图像对比度。

(3)把灰度图像裁剪成112*92统一大小像素的图像,保存为.pgm格式。

(4)分割数据集。先将图像进行类别编号,编号即为每个人的所属类别;然后将每个人的10幅图像分成训练集和测试集两组,前5幅放入训练集,另外5幅放入测试集。

(5)读入训练图像。将每幅图像按列存储为1个10304维行向量,每行1个人脸样本。

2.3主成分分析(PCA)

2.3.1 PCA原理及目的

PCA的基本原理:利用K-L变换提取人脸的主要成分,构成特征脸空间,识别时将测试图像投影到特征脸空间,得到一组投影系数,然后与各个人脸图像比较进行识别。

PCA的目的是通过线性变换找一组最优的单位正交向量基,用它们的线性组合重构原样本,并使重构出来的样本和原样本的均方误差最小。

2.3.2 PCA快速算法

PCA计算中最主要是计算样本散布矩阵的特征值和特征向量。设样本矩阵X大小为nd(n个d维样本特征向量),则样本散布矩阵S将是一个dd的方阵。维数d较大时计算很困难,得到散布矩阵的全部特征值可能要用很长时间。针对这种情况,可采用快速PCA算法。

设Znd矩阵为样本矩阵X中每个样本减去样本均值后得到的矩阵,则散布矩阵S为(ZTZ)dd。现令矩阵R=(ZTZ)nn,一般情况下,样本n数目远小于样本维数d,由线性代数的知识,可得S和R有相同的非零特征值。

式(2)说明散布矩阵S的特征向量是。

因为矩阵R的维数远远小于矩阵S的维数,所以相对于传统PCA算法,快速PCA算法可大大减小计算量,提高运算速度。

2.3.3数据规格化

数据规格化指将特征的某个属性的取值范围投射到一个特定范围内,用以消除数值型属性因大小范围不一而影响基于距离的分类方法结果的公正性。数据规格(下转第157页)(上接第147页)化在模式识别问题中占据着举足轻重的地位,所以在训练之前,需要对训练集中的全体样本进行规格化。

本文用最大最小规格化方法对全体样本进行规格化,该方法对被初始数据进行一种线性转换。设minA和maxB分别为属性A的最大和最小值。该方法将属性A的一个值v映射为v'且v'∈[new_minA,new_maxA],计算公式为:

2.4 SVM分类器

在人脸识别过程中,分类器对最终类别判断起着至关重要的作用。支持向量机(SVM)是在以解决小样本机器学习问题为目标的统计学习理论的基础上发展起来的。与传统方法相比,SVM能够有效地避免过学习、欠学习、维数灾难等问题。其应用到人脸识别系统中,可以提高识别的准确率。

实验中,SVM分类器用径向基核函数生成,参数( ,c)采用林智仁博士提出的基于交叉验证和网格搜索的选择方法。

3 结论

本文结合快速PCA算法与SVM用于人脸识别。快速PCA算法将原始图像投影到特征空间中,去掉图像大量冗余信息的同时,保留了图像的有用信息;然后用SVM训练多个分类器解决多分类器问题,对于100幅人脸样本的测试集,识别率达到了96%。

参考文献

[1] 宋杰,姚家振.基于PCA和SVM的人脸识别系统研究[J].赤峰学院学报(自然科学版),2014(20):31-32.

[2] 孟繁特.人脸识别关键技术研究[D].哈尔滨工程大学,2012.

[3] 于真.基于支持向量机的人脸识别技术研究[J]. 计算机仿真,2011(12):296-299.

[4] 王国栋.基于MATLAB的人脸识别算法的研究[D].内蒙古大学,2014.

[5] 蔡静,尹绍宏.基于MATLAB的人脸识别研究[J].电子世界,2012(21):20-21.

[6] 张铮,王艳平,薛桂香,等.数字图像处理与机器视觉:Visual C++与Matlab实现[M].人民邮电出版社,2010.

[7] 王煜,刘敏.基于支持向量机的规则零件检测技术研究[J].电子测量技术,2012(01):80-84.

上一篇:武汉市生物育种知识产权保护状况分析 下一篇:论“研学后教”理念下的小学高年级语文作文教...