pca人脸识别----kl变换

PCA--主成分分析

通过线性变换将原始数据变换为一组各维度线性无关的表示,可用于提取数据的主要特征分量,常用于高维数据的降维。可以用于特征提取。最常见的应用在人脸识别。

 pca并不是直接对原来的数据进行删减,而是把原来的数据映射到新的一个特征空间中继续表示,所有新的特征空间如果有29维,那么这29维足以能够表示非常非常多的数据,并没有对原来的数据进行删减,只是把原来的数据映射到新的空间中进行表示,所以你的测试样本也要同样的映射到这个空间中进行表示,这样就要求你保存住这个空间坐标转换矩阵,把测试样本同样的转换到相同的坐标空间中。

1)将原始数据按列组成n行m列矩阵X  ---n*m

2)将X的每一行(代表一个属性字段)进行零均值化,即减去这一行的均值

3)求出协方差矩阵C=\frac{1}{m}XX^\mathsf{T}---m*m

4)求出协方差矩阵的特征值及对应的特征向量

5)将特征向量按对应特征值大小从上到下按行排列成矩阵,取前k行组成矩阵P----m*k

6)Y=PX即为降维到k维后的数据 ,将数据投影到k个特征向量中,这样就得到m*k的矩阵

假设样本列数为 m ,特征数为 n ,减去均值后的样本矩阵为 DataAdjust(m*n),协方差矩阵为 n*n ,选取 k 个特征向量组成后的矩阵为 EigenVectors(n*k),则投影后的数据 FinalData 为:

FinalData (m*k) = DataAdjust(m*n) X EigenVectors(n*k)

这样就将数据1*m 维的数据, 乘以特征向量m*k ,就变成了1*k,这样每个特征的维数就降低了

 PCA 的目标是寻找 k ( k<n )个新变量,使它们反映事物的主要特征,压缩原有数据矩阵的规模。每个新变量是原有变量的线性组合,体现原有变量的综合效果,具有一定的实际含义。这 k个新变量称为“主成分”,它们可以在很大程度上反映原来 n 个变量的影响,并且这些新变量是互不相关的,也是正交的。

究竟如何确定 k呢?这需要进一步分析每个 主元素对信息的贡献。
贡献率表示所定义的主成分在整个数据分析中承担的主要意义占多大的比重,当取前 r 个主成分来代替原来全部变量时,累计贡献率的大小反应了这种取代的可靠性,累计贡献率越大,可靠性越大;反之,则可靠性越小。一般要求累计贡献率达到 70% 以上。

pca将训练集中的同一个人的多张照片pca降维,得到特征脸。然后带检测图像和不同人的特征脸求距离,得到最match的。
或者将训练集中 同一个人的多张照片pca降维后提取特征,然后将特征训练,利用分类器识别。
在opencv中训练好分xml文件,可以直接加载识别


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值