Python机器学习:PCA与梯度上升:009人脸识别与特征脸(lfw_people数据集)
将w的每一行想成一个样本,则第一行是最重要的样本。。第二行次重要。。(Wk特征engen face)
CODE
我们使用lfw_people数据集
#人脸识别与特征脸
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import fetch_lfw_people
这个数据集很大有200多m直接用fetch命令下载却失败了,手动下载数据
链接:https://pan.baidu.com/s/11ebeCTH7E24XAgYVL7y_-A
提取码:3gut
复制这段内容后打开百度网盘手机App,操作更方便哦
放在这个目录下面,解压(job本来没有,重新启动一下jupyter运行一下就ok了)
也是一个字典结构
faces.keys()
dict_keys(['data', 'images', 'target', 'target_names', 'DESCR'])
看看data的大小
print(faces.data.shape)
(13233, 2914)
print(faces.images.shape)
62*47 = 2914
(13233, 62, 47)
打乱索引
random_indexs = np.random.permutation(len(faces.data))
X = faces.data[random_indexs]
example_faces = X[:36,:]
print(example_faces.shape)
(36,2914)
绘制36幅图片
#cmap 改变绘制风格,cmaps['Sequential'] = [# 'Greys', 'Purples', 'Blues', 'Greens', 'Oranges', 'Reds',# 'YlOrBr', 'YlOrRd', 'OrRd', 'PuRd', 'RdPu', 'BuPu',# 'GnBu', 'PuBu', 'YlGnBu', 'PuBuGn', 'BuGn', 'YlGn']
def plot_faces(faces):fig,axes = plt.subplots(6,6,figsize = (10,10),subplot_kw = {'xticks':[],'yticks':[]},gridspec_kw =dict(hspace = 0.1,wspace = 0.1))for i ,ax in enumerate(axes.flat):ax.imshow(faces[i].reshape(62,47),cmap='bone')
plot_faces(example_faces)
特征脸
使用随机方式求PCA,数据量较大
#特征脸
from sklearn.decomposition import PCA
pca = PCA(svd_solver='randomized')#使用随机的方式求pca,数据较大
%time pca.fit(X)
Wall time: 32.3 s
特征脸矩阵大小
print(pca.components_.shape)
(2914, 2914)
还可以绘制36-73
绘制特征脸
plot_faces(pca.components_[:36,:])#绘制特征脸,第一张就很简单只有轮廓,越往后细节越多
Python机器学习:PCA与梯度上升:009人脸识别与特征脸(lfw_people数据集)相关推荐
- 人脸识别之特征脸方法(Eigenface)
人脸识别之特征脸方法(Eigenface) zouxy09@qq.com http://blog.csdn.net/zouxy09 因为需要,花了一点时间写了下经典的基于特征脸(EigenFace)的 ...
- python机器学习库keras——CNN卷积神经网络人脸识别
全栈工程师开发手册 (作者:栾鹏) python教程全解 github地址:https://github.com/626626cdllp/kears/tree/master/Face_Recognit ...
- 人脸识别之特征脸方法
特征脸技术是近期发展起来的用于人脸或者一般性刚体识别以及其它涉及到人脸处理的一种方法.首先把一批人脸图像转换成一个特征向量集,称为"Eigenfaces",即"特征脸&q ...
- 机器学习——SVM(支持向量机)与人脸识别
目录 系列文章目录 一.SVM的概念与原理 1.SVM简介 2.SVM基本流程 3.SVM在多分类中的推广 二.经典SVM运用于图像识别分类 三.SVM运用于人脸识别 1.预处理 1.1 数据导入与处 ...
- 【毕业设计/Matlab系列】基于PCA和BP神经网络的人脸识别系统(附matlab代码)
Date: 2022.4.26 文章目录 前言 1.总体介绍 2.详细分析 2.1.训练程序 2.2.测试程序 3.测试效果图 4.测试部分matlab代码 前言 在毕业设计中实现了基于PCA和BP神 ...
- PCA+SVM实现基础的人脸识别
PCA+SVM实现基础的人脸识别 人工智能课程作业,顺便上传一下 PCA+SVM实现基础的人脸识别 本实验采用python编程实现,使用Olivette实验室的ORL人脸库作为数据集.ORL人脸库共有 ...
- 【毕业设计/Matlab系列】基于PCA和BP神经网络的人脸识别系统(基于AR人脸库)
Date: 2022.5.30 文章目录 前言 1.算法原理 2.实现效果 3.测试matlab代码 前言 在大学毕业设计的时候,在毕业设计中实现了基于PCA和BP神经网络的人脸识别系统,采用matl ...
- 人工智能行业:人脸识别报告,“刷脸”时代到来
https://www.toutiao.com/a6665970984035549708/ 人工智能行业:人脸识别报告,"刷脸"时代到来,看好掌握核心技术与应用场景深耕的企业 类别 ...
- 重磅!GroupFace 人脸识别,刷新 9 个数据集SOTA
来自韩国Kakao公司的研究人员,在论文 GroupFace: Learning Latent Groups and Constructing Group-based Representations ...
最新文章
- iOS 提高tableView 性能的优化
- 《Groovy语言规范》-语法
- java filter注入_如何使用Filter过滤请求中的SQL注入攻击
- Oracle笔记 十四、查询XML操作、操作系统文件
- 编译器错误消息: CS0006: 未能找到元数据文件 System.EnterpriseServices
- 【图精】徐克镜头里的十大美人
- rabbitmq添加自启动 centos7环境
- php文件目录教程,php文件目录操作的开发过程与示例分享
- Ajax提交表单数据(包含文件)
- ssh无密码登录设置
- next_permutation()
- 产品经理 - 路漫漫其修远兮
- 《穿普拉达的女王》-观后感
- JavaWeb - 仿小米商城(5):商品详情展示
- 视频压缩在线网站,视频压缩在线压缩,视频压缩在线使用,在线压缩视频大小
- tui.editor所见即所得编辑器的使用
- 安装MySQL报错:[Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defau
- Pycharm中利用arcpy实现灯光遥感数据的建成区批量提取
- linux qq 提示错误,linux QQ使用实践兼wine QQ2013版本太低无法使用解决办法
- sketch八个高效的快捷方式(上)
热门文章
- 【Tyvj1783】【codevs2418】【BZOJ1856】字符串,厉害的组合数与模型转换
- english 2012020602
- 2017.9.26 货币兑换 失败总结
- conda不是内部文件或外部命令_Fastqc文件数据质量质检
- 用GDB调试Segmentation Fault错误
- python post 远程主机强迫关闭了一个现有的连接_Python最强动态可视化库!
- 如何修改select默认option数量多余显示滚动条查看_Chameleon for Mac(mac界面颜色修改工具)...
- Unity Shader:Waveform波形(3)-复合波
- Predicate函数式接口
- 《算法技术手册》一3.5.5 算法分析