PCA人脸识别及理论基础(附源码)_
时间:2025-04-18
时间:2025-04-18
里面讲述了PCA用于人脸识别,附带的源码能让我们更好的了解PCA的算法过程
1 PCA与人脸识别及其理论基础
龚 勋(2007-4-29)
1.1 问题描述[1]
对于一幅图像可以看作一个由像素值组成的矩阵,也可以扩展开,看成一个矢量,如一幅N*N象素的图像可以视为长度为N2的矢量,这样就认为这幅图像是位于N2维空间中的一个点,这种图像的矢量表示就是原始的图像空间,但是这个空间仅是可以表示或者检测图像的许多个空间中的一个。不管子空间的具体形式如何,这种方法用于图像识别的基本思想都是一样的,首先选择一个合适的子空间,图像将被投影到这个子空间上,然后利用对图像的这种投影间的某种度量来确定图像间的相似度,最常见的就是各种距离度量。
1.1.1 K-L变换[1]
PCA方法是由Turk和Pentlad提出来的,它的基础就是Karhunen-Loeve变换(简称KL变换),是一种常用的正交变换。下面我们首先对K-L变换作一个简单介绍:
假设X为n维的随机变量,X可以用n个基向量的加权和来表示:
X=∑αiφi
i=1n
式中: αi是加权系数,φi是基向量,此式还可以用矩阵的形式表示:
X=(φ1,φ2, ,φn)(α1,α2, ,αn)T=Φα
取基向量为正交向量,即
1 i=j
ΦTΦj= ΦTΦj=I
0 i≠j
则系数向量为:
α=ΦTX
综上所述,K-L展开式的系数可用下列步骤求出:
T
步骤一 求随即向量X的自相关矩阵R=E XX ,由于没有类别信息的样本集的µ均值向
T
量,常常没有意义,所以也可以把数据的协方差矩阵∑=E (x µ)(x µ) 作为
K_L坐标系的产生矩阵,这里µ是总体均值向量。
步骤二 求出自相关矩阵或协方差矩阵R的本征值λi和本征向量φi,Φ=(φ1,φi, ,φn)
步骤三 展开式系数即为α=ΦTX
K_L变换的实质是建立了一个新的坐标系,将一个物体主轴沿特征矢量对齐的旋转 变换,这个变换解除了原有数据向量的各个分量之间相关性,从而有可能去掉那些带 有较少信息的坐标系以达到降低特征空间维数的目的。
里面讲述了PCA用于人脸识别,附带的源码能让我们更好的了解PCA的算法过程
1.1.2 利用PCA进行人脸识别
完整的PCA人脸识别的应用包括几个步骤:人脸图像预处理;读入人脸库,训练形成特征子空间;把训练图像和测试图像投影到上一步骤中得到的子空间上;选择一定 的距离函数进行识别。下面详细描述整个过程(源码见’faceRec.m’)。 1. 读入人脸库
归一化人脸库后,将库中的每人选择一定数量的图像构成训练集,其余构成测试集。设归一化后的图像是n*m,按列相连就构成N=n*m维矢量,可视为N维空间中的一个点,可以通过K-L变换用一个低维子空间描述这个图像。 2. 计算K- L变换的生成矩阵
所有训练样本的协方差矩阵为(以下三个等价):
M
=1. C(xkixkT)/M mximxT∑A
k=1
T
(1) 2. CA=(AiA)/M
M
3.CA= ∑(xi mx)(xi mx)T i=1
A={φ1,φ2,...,φM}, φi=xi mx,mx是平均人脸, M 训练人脸数,协方差矩阵CA 是
一个N*N的矩阵, N 是xi的维数。
为了方便计算特征值和特征向量,一般选用第2个公式。根据K - L 变换原理,我们所求的新坐标系即由矩阵AiAT的非零特征值所对应的特征向量组成。直接求N*N大小矩阵CA的特征值和正交归一特征向量是很困难的, 根据奇异值分解原理(见段落1.2.5和1.2.6),可以通过求解ATiA的特征值和特征向量来获得ATiA的特征值和特征向量,。
在计算得到CA的所有非零特征值[λ0,λ1, ,λr 1](从大到小排序,1≤r<M)及其对应的单位正交特征向量[u0,u1, ,ur 1]后,可以得到特征空间U=[u0,u1, ,ur 1]∈ N*r,从而可以计算一张图片X在特征空间上的投影系数(也可以理解为X在空间U中的坐标):
Y=UT*X∈ r*1 (2)
3. 识别
利用公式(2),首先把所有训练图片进行投影,然后对于测试图片也进行同样的投影,采用判别函数对投影系数进行识别。
1.2 PCA的理论基础 1.2.1 投影[2]
设d维样本x1,x2, ,xn,以及一个d维基w,那么标量:
里面讲述了PCA用于人脸识别,附带的源码能让我们更好的了解PCA的算法过程
yi=wTxi
是相当于xi在基上的坐标值。如果w=1,yi就是把xi向方向为w的直线进行投影的结果,可以从图 1看到。推广之,如果有一组基(m个)组成的空间W=[w1,w2, ,wm],那么可以得到xi在空间W上的坐标为:Y=WTx∈ m*1。
证明:wTxi=w x cosθ
又∵x cosθ=y, w=1
wTxi=y
图 1 投影图
进一步,表达式w=m+ae表示w是一条通过点m,方向为e的直线。
1.2.2 PCA的作用及其统计特性[3]
采用PCA对原始数据的处理,通常有三个方面的作用—降维、相关性去除、概率估计。下面分别进行介绍:
去除原始数据相关性
从统计学上讲,E{[X E(X)][Y E(Y)]}称为随机变量X与Y协方差,记为
Cov(X,Y
)。令ρXY=
,称为随机变量X与Y的相关系数。ρXY=1则X与
Y是相关的,ρXY=0,则X与Y是不相关的。
命题 1对于矩阵A来说,如果AA是一个对角阵,那么A中的向量是非相关的。
T
由PCA处理的人脸库数据的非相关性可以从两点进行说明。 (1) 基底的非相关性
特征空间基U=[u0,u1, ,ur 1]是非相关的,即UUT=I。
…… 此处隐藏:7287字,全部文档内容请下载后查看。喜欢就下载吧 ……
上一篇:终端陈列标准文案
下一篇:依法治校领导小组及主要工作职责