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 个变量的影响,并且这些新变量是互不相关的,也是正交的。
pca人脸识别----kl变换相关推荐
- matlab 归一化_MATLAB主成分PCA人脸识别深度解析(一)
前言:人脸识别是一个很经典的课题,围绕它可以做成很多实际应用,比如教室人脸考勤,人脸门禁系统,无人超市购物系统,刷脸支付系统等等.可是,为什么这一切是靠什么进行匹配人脸的呢,怎么那么神奇呢.人脸识别的 ...
- 基于PCA 人脸识别/人脸识别算法/人脸检测程序源码MATLAB ELM+PCA人脸识别 PCA人脸识别matlab代码 基于PCA算法的人脸识别
1.基于PCA的人脸识别代码 2.MATLAB ELM+PCA人脸识别 2.基于PCA的人脸识别(matlab)(采用PCA算法进行人脸识别,通过抽取人脸的主要成 分,构成特征脸空间,识别时将测试图像 ...
- pca人脸识别个人理解及步骤
前言 pca,即主成分分析,是一种数据降维的方法,也是一种古老而经典的人脸识别的算法.理解pca算法的原理和步骤,对我们的思维启发还是很有帮助的.虽然说在众多的人脸识别中,pca是较简单的,但是要想清 ...
- pca人脸识别python_[机器学习] 用PCA进行人脸识别
本文会带你详细的分析PCA人脸识别的代码 PCA在人脸识别中有重要的应用,如果想详细了解PCA的原理,可以看我的这篇文章:任妍Carol:[机器学习] 人脸识别的重要方法--PCAzhuanlan. ...
- 基于MATLAB实现PCA人脸识别
文件大小:76M 代码行数:40行(主程序) 开发环境:Matlab2016.2018.2020 下载地址:点击下载 简要概述:基于MATLAB实现PCA人脸识别 PCA,即主成分分析,是一种数据降维 ...
- 机器学习算法之PCA(主成分分析)人脸识别,最小重构误差和最大化散度证明,PCA主成分分析原理剖析,PCA人脸识别matlab实现,PCA人脸识别python实现
目录 PCA介绍 PCA大致思路 PCA人脸识别(特征脸法) matlab代码实现 Python代码实现 PCA几何解释 PCA证明最小重构误差和最大散度等价 实验结果 PCA介绍 主成分分析(Pri ...
- 图像处理-PCA人脸识别
2019独角兽企业重金招聘Python工程师标准>>> 在OpenCV2.4.2中有一个FaceRecognizer类,该类用于完成人脸识别,目前其实现的方法有PCA,LDA,LBP ...
- 关于PCA主成分分析与KL变换
最近看了PCA主成分分析,其中KL变化是其中的一种方法 具体的原理我转载了以下文章 http://blog.csdn.net/kingskyleader/article/details/7734710 ...
- 基于opencv的pca人脸识别实现
orl人脸样本库 这里用到的ORL人脸库(Olivetti Research Laboratory人脸数据库),诞生于英国剑桥Olivetti实验室. ORL人脸数据库由该实验室从1992年4月到19 ...
最新文章
- retinaface 记录
- python是用什么语言开发的-python是什么语言?哪些人适合学习Python?
- Python 技巧篇 - 英文单词首字母大小写转换功能实例演示,字符串切片实现
- python怎么显示汉字_mac在matplotlib中显示中文的操作方法
- html中隐式转换成数字,详解JS中的隐式类型转换
- 四核网络机顶盒芯片局势分析(开放市场):rk3128将会成为四核主流
- TVB十大女星比美十大名花
- 高仿QQ发送语音界面
- python 自定义 计算向量投影 正交 函数
- MySQL8.0与SQL server 2016的技术区别(一)
- Map--HashMap实现分析
- 无源滤波器--低通滤波器(LPF)
- 笔记:宾大《Algebra, Topology, Differential Calculus, and Optimization Theory For CS and ML》——第三章第九节
- 面试时薪资要少了怎么办?
- IDEA 2021.1 的 Win 和 Mac 快捷键大全!!
- Linux Deploy安装配置Ubuntu使用教程
- 卫星过顶计算matlab,一种圆轨道低轨卫星过顶剩余可见时长预测方法
- 优秀大数据分析师必备8大技能
- 从零开始搭建一个操作系统(1):搭建工作模式和环境
- java rcp中lable设置透明_RCP界面美化技术(转)