APP下载

基于FisherFace算法的人脸识别方案研究

2020-10-10王丽娟

机电信息 2020年27期
关键词:人脸矩阵投影

摘要:Fisherface算法是由Ronald Fisher发明的,是一种基于人的脸部特征信息进行身份识别的生物识别技术。现提出一种基于FisherFace算法的人脸识别方案,建立在人脸图像预处理的过程已经完成的基础之上,进行特征提取和匹配识别的操作。该方案基于LDA和PCA理论,是对原有数据进行整体降维进而映射到低维空间去的方法。

关键词:FisherFace算法;PCA(主成分分析);LDA(线性判别分析)

0    引言

近年来,随着科技的不断进步,人脸识别技术在日常生活中有了非常广泛的应用。Fisherface算法所基于的LDA理论和特征脸方法中用到的PCA理论有相似之处,都是对原有数据进行整体降维进而映射到低维空间的方法。然而,由于PCA这种方法存在着缺陷:图像中所有的像素都被赋予了同等的地位,光照、角度、尺寸以及表情等因素都会导致识别率的下降。而LDA方法的计算过程要反复做矩阵运算,计算量会非常大,而且还容易引起累计误差,非常影响计算的精度。因此,将PCA和LDA二者结合是一种值得期待的分类办法[1]。

1    原理

本次方案采用的是PCA和LDA相结合的方法。PCA,主要用于数据降维,对于一系列样本的特征所组成的多维向量,这些向量中的某些元素本身并没有区分性。例如:某个元素在所有的样本中都为1,或者与1的差距极小,那么这个元素本身就没有了区分性,如果用它做特征来区分的话,贡献就会非常小。因此,我们的目的就是要找出那些变化大的元素,也即方差大的那些维,从而筛除掉那些变化不大的维,使得留下来的那些特征都是“精品”,同时这也让计算量变小了。

Fisherface方法实际上涉及的是维数压缩的问题,如果能把多维特征空间上的点都投影到一条直线上,那么就能把特征空间压缩成一维。问题的关键就是如何找到这条直线的方向,如果找得好的话,就会分得好;如果找得不好的话,就会都混在一起。因此,Fisherface方法的主要目标就是:找到这个最好的直线方向以及实现向最好的方向投影的变换。这个投影变换恰恰就是所寻求的解向量W*,这就是Fisherface算法的基本问题[2]。

假设样品训练集和待测样品的特征数为n。为了找到最佳的投影方向,需要计算出各类均值、样品类内离散度矩阵Si、总类间离散度矩阵Sw以及样品类间离散度矩阵Sb。根据Fisherface准则,找出最佳的投影准则,将训练集内所有的样品进行投影,使其投影到一维Y空间。因为Y空间是一维的,所以需要找出Y空间的划分边界点,找到边界点以后,我们就可以对待测样品进行一维Y空间的投影,进而判断它的投影点与分界点的关系,从而将其归类[3]。

综上可知,Fisherface方法的核心就是投影,该方法的一维实现可描述为:

(1)计算各类样品均值向量mi,mi是各个类的均值,Ni是ωi类的样品个数。

mi=X    i=1,2,…,n

(2)计算样品类内离散度矩阵Si和总类间离散度矩阵Sw:

Si=(X-mi)(X-mi)T    i=1,2,…,n

Sw=Si

(3)计算样品类间离散度矩阵Sb:

Sb=(m1-m2)(m1-m2)T

(4)求向量W*。我们希望在投影后,一维Y空间中的各类样品能够尽可能地分开,也就是希望两类样品均值的差m1-m2越大越好,同时也希望各类样品内部能够尽量密集,也就是希望类内的离散度越小越好。因此,可以定义Fisherface准则函数:

JF(W)=

使得JF(W)取得最大值的W*为W*=Sw -1(m1-m2)。

(5)將训练集内所有样品进行投影:

y=(W*)TX

(6)计算在投影空间上的分割阈值y0:

在一维Y空间,各类样品均值i为:

i=y      i=1,2,…,n

样品类内离散度矩阵i2和总类间离散度矩阵w为:

i2=(y-i)2

w=i2

阈值y0的选取可以有不同的方案,较常见的一种是:

y0=

另一种是:

y0=+

(7)对于给定的X,计算出它在W*上的投影y。

(8)根据决策规则进行分类:

y>y0?X∈ω1

y

2    过程及结果

本次仿真方案使用ORL人脸数据库,共40个类别(人),每类10张人脸图像,其中9张用于训练,存于TrainDataBase目录下,另外1张用于测试,存于TestDataBase目录下。因而训练样本图像一共360个,测试样本图像一共40个。Matlab程序框图如图1所示。

3    操作过程及界面

输入:程序运行时,会提示用户输入测试图像的编号(40个人每人1张,共40张,打乱类别,随机编号),用户可根据提示输入1~40中的任意一个,如图2所示。

输出:程序运行后,会在命令窗口给出识别结果,同时显示测试图像及测试图像所属类别下任意一张图像,如图3所示。

准确率:在方案设置的训练样本数和测试样本数相同的情况下,本程序可实现完美识别,识别准确率100%,如图4所示。

4    结语

本次方案用ORL人脸数据库验证了基于LDA和PCA理论的FisherFace算法的有效性。人脸识别系统主要包括四部分:人脸图像采集及检测、人脸图像预处理、人脸图像特征提取以及匹配与识别。本方案建立在前两个过程已经完成的基础上,进行特征提取以及匹配识别的操作。

[参考文献]

[1] 张雨婷,陈军华,杨新凯,等.一种改进的PCA+LDA人脸识别算法[J].电脑知识与技术,2020,16(3):221-222.

[2] 刘亮.基于PCA和LDA改进算法的人脸识别技术研究[J].无线互联科技,2019,16(17):110-111.

[3] 马帅旗.改进PCA-

LDA的人脸识别算法研究[J].陕西理工大学学报(自然科学版),2019,35(2):62-66.

收稿日期:2020-07-31

作者简介:王丽娟(1990—),女,河南正阳人,讲师,研究方向:应用数学。

猜你喜欢

人脸矩阵投影
有关向量上的投影的概念解读
投影向量问题
玻璃窗上的人脸
找投影
智力考场:有趣的图片测试
多项式理论在矩阵求逆中的应用
《投影与视图》单元测试题
“领家系”可爱脸VS“高冷系”美人脸
矩阵
矩阵