《人脸识别matlab程序》由会员分享,可在线阅读,更多相关《人脸识别matlab程序(5页珍藏版)》请在人人文库网上搜索。

1、人脸识别% FaceRec.m% PCA 人脸识别修订版,识别率88% calc xmean,sigma and its eigen decompositionallsamples=;%所有训练图像for i=1:40for j=1:5a=imread(strcat(e:ORLs,num2str(i),num2str(j),.jpg);% imshow(a);b=a(1:112*92); % b 是行矢量 1N,其中N10304,提取顺序是先列后行,即从上到下,从左到右b=double(b);allsamples=allsamples; b; % allsamples 是一个M * N 矩阵,。

2、allsamples 中每一行数据代表一张图片,其中M200endendsamplemean=mean(allsamples); % 平均图片,1 Nfor i=1:200 xmean(i,:)=allsamples(i,:)-samplemean; % xmean 是一个M N 矩阵,xmean每一行保存的数据是“每个图片数据-平均图片”end;% 获取特征值及特征向量sigma=xmean*xmean; % M * M 阶矩阵v d=eig(sigma);d1=diag(d);% 按特征值大小以降序排列dsort = flipud(d1);vsort = fliplr(v);%以下选择90。

3、%的能量dsum = sum(dsort);dsum_extract = 0;p = 0;while( dsum_extract/dsum 0)% base(:,i) = dsort(i)(-1/2) * xmean * vsort(:,i); % base 是Np 阶矩阵,除以dsort(i)(1/2)是对人脸图像的标准化(使其方差为1)% 详见基于PCA 的人脸识别算法研究p31% i = i + 1; % xmean * vsort(:,i)是小矩阵的特征向量向大矩阵特征向量转换的过程%end% 以下两行add by gongxun 将训练样本对坐标系上进行投影,得到一个 M*p 阶矩阵。

4、allcoorallcoor = allsamples * base; % allcoor 里面是每张训练人脸图片在M*p 子空间中的一个点,即在子空间中的组合系数,accu = 0; % 下面的人脸识别过程中就是利用这些组合系数来进行识别% 测试过程for i=1:40for j=6:10 %读入40 x 5 副测试图像a=imread(strcat(e:ORLs,num2str(i),num2str(j),.jpg);b=a(1:10304);b=double(b);tcoor= b * base; %计算坐标,是1p 阶矩阵for k=1:200mdist(k)=norm(tcoor-a。

5、llcoor(k,:);end;%三阶近邻dist,index2=sort(mdist);class1=floor( (index2(1)-1)/5 )+1;class2=floor(index2(2)-1)/5)+1;class3=floor(index2(3)-1)/5)+1;if class1=class2 & class2=class3class=class1;elseif class1=class2class=class1;elseif class2=class3class=class2;end;if class=iaccu=accu+1;end;end;end;accuracy=a。

6、ccu/200 %输出识别率特征人脸% eigface.mfunction = eigface()% calc xmean,sigma and its eigen decompositionallsamples=;%所有训练图像for i=1:40for j=1:5a=imread(strcat(e:ORLs,num2str(i),num2str(j),.jpg);% imshow(a);b=a(1:112*92); % b 是行矢量 1N,其中N10304,提取顺序是先列后行,即从上到下,从左到右b=double(b);allsamples=allsamples; b; % allsampl。

7、es 是一个M * N 矩阵,allsamples 中每一行数据代表一张图片,其中M200endendsamplemean=mean(allsamples); % 平均图片,1 Nfor i=1:200 xmean(i,:)=allsamples(i,:)-samplemean; % xmean 是一个M N 矩阵,xmean每一行保存的数据是“每个图片数据-平均图片”end;% 获取特征值及特征向量sigma=xmean*xmean; % M * M 阶矩阵v d=eig(sigma);d1=diag(d);% 按特征值大小以降序排列dsort = flipud(d1);vsort = fl。

8、iplr(v);%以下选择90%的能量dsum = sum(dsort);dsum_extract = 0;p = 0;while( dsum_extract/dsum 0)% base(:,i) = dsort(i)(-1/2) * xmean * vsort(:,i); % base 是Np 阶矩阵,除以dsort(i)(1/2)是对人脸图像的标准化,详见基于PCA 的人脸识别算法研究p31% i = i + 1; % xmean * vsort(:,i)是小矩阵的特征向量向大矩阵特征向量转换的过程%endbase = xmean * vsort(:,1:p) * diag(dsort(1。

9、:p).(-1/2);% 生成特征脸for (k=1:p),temp = reshape(base(:,k), 112,92);newpath = d:test int2str(k) .jpg;imwrite(mat2gray(temp), newpath);endavg = reshape(samplemean, 112,92);imwrite(mat2gray(avg), d:testaverage.jpg);% 将模型保存save(e:ORLmodel.mat, base, samplemean);人脸重建% Reconstruct.mfunction = reconstruct()lo。

10、ad e:ORLmodel.mat;% 计算新图片在特征子空间中的系数img = D:test210.jpga=imread(img);b=a(1:112*92); % b 是行矢量 1N,其中N10304,提取顺序是先列后行,即从上到下,从左到右b=double(b);b=b-samplemean;c = b * base; % c 是图片a 在子空间中的系数, 是1*p 行矢量% 根据特征系数及特征脸重建图% 前15 个t = 15;temp = base(:,1:t) * c(1:t);temp = temp + samplemean;imwrite(mat2gray(reshape(t。

11、emp, 112,92),d:test2t1.jpg);% 前50 个t = 50;temp = base(:,1:t) * c(1:t);temp = temp + samplemean;imwrite(mat2gray(reshape(temp, 112,92),d:test2t2.jpg);% 前100 个t = 100;temp = base(:,1:t) * c(1:t);temp = temp + samplemean;imwrite(mat2gray(reshape(temp, 112,92),d:test2t3.jpg);% 前150 个t = 150;temp = base(:,1:t) * c(1:t);temp = temp + samplemean;imwrite(mat2gray(reshape(temp, 112,92),d:test2t4.jpg);% 前199 个t = 199;temp = base(:,1:t) * c(1:t);temp = temp + samplemean;imwrite(mat2gray(reshape(temp, 112,92),d:test2t5.jpg。

用matlab人脸识别,人脸识别matlab程序相关推荐

  1. 基于PCA 人脸识别/人脸识别算法/人脸检测程序源码MATLAB ELM+PCA人脸识别 PCA人脸识别matlab代码 基于PCA算法的人脸识别

    1.基于PCA的人脸识别代码 2.MATLAB ELM+PCA人脸识别 2.基于PCA的人脸识别(matlab)(采用PCA算法进行人脸识别,通过抽取人脸的主要成 分,构成特征脸空间,识别时将测试图像 ...

  2. 使用MATLAB控制笔记本电脑的摄像头,并进行实时人脸检测和识别

    FPGA教程目录 MATLAB教程目录 ----------------------------------------------------------------------- 目录 一.理论基 ...

  3. 【人脸识别】基于matlab GUI KL变换人脸识别【含Matlab源码 859期】

    ⛄一.KL变换人脸识别简介 人脸识别是指基于己知的人脸样本集,利用图像处理和模式识别的技术从静态或动态场景中,识别或验证一个或多个人脸.人脸识别技术跨越了图像处理.模式识别.计算机视觉.生物学.神经生 ...

  4. 人脸识别LBP的MATLAB实现

    人脸识别一般包括人脸检测.识别2大方面,其中有些还需要对人脸进行校正,定位以便达到更准确.本文主要在检测和识别2个方面,做个简单的实时的实现. 人脸图像文件夹分布格式 简单的人脸识别示例代码如下: % ...

  5. 基于MobileNet的人脸表情识别系统(MATLAB GUI版+原理详解)

    摘要:本篇博客介绍了基于MobileNet的人脸表情识别系统,支持图片识别.视频识别.摄像头识别等多种形式,通过GUI界面实现表情识别可视化展示.首先介绍了表情识别任务的背景与意义,总结近年来利用深度 ...

  6. 基于matlab的人脸美白,人脸识别SDK的使用会对美颜功能造成怎样的影响

    有很多开发者在开发APP时考虑到给用户提供更好的美颜体验,都会选择使用人脸识别SDK.说实话现在哪个玩社交的平台不是拥有高质量美颜特效的?但要是想实现高质量的美颜功能可不是件简单事儿.所以本文来给大家 ...

  7. 基于主要成分分析的人脸二维码识别系统-含Matlab代码

    目录 一.引言 二.人脸图像信息处理 2.1 主成分分析PCA 2.2 PCA人脸压缩与重构算法分析 三.二维码转换以及识别 3.1 QR码 3.2 将人脸图像生成二维码 3.3 二维码的识别与图像还 ...

  8. 人脸年龄估计matlab,基于人脸的年龄识别系统设计与实现

    内容介绍 原文档由会员 小丑88 发布 基于人脸的年龄识别系统设计与实现 1.36万字 自己原创的毕业论文,已经通过校内系统检测,重复率低,仅在本站独家出售,大家放心下载使用 摘 要 本文分析了年龄估 ...

  9. 基于matlab的自动人脸识别系统GUI设计

    基于matlab的自动人脸识别系统GUI设计 之前做的一个课设项目半成品,一边网上找资料一边自己瞎捣鼓,完成了GUI界面的设计,实时视频中的人脸检测和追踪,PCA算法训练,单张人脸识别.但是识别率比较 ...

  10. 【人脸识别】基于matlab GUI LPP人脸特征提取【含Matlab源码 1491期】

    ⛄一.简介 理论知识参考文献:基于局部特征提取人脸识别方法优化研究 ⛄二.部分源代码 function varargout = spectacles_lpp_classification(vararg ...

最新文章

  1. 子类如果不实例化则不会调用它自身的静态构造函数
  2. 初等数论--原根--阶的计算
  3. struts2的注入参数,获取值
  4. A - Greed CodeForces - 892A(水题)
  5. tomcat配置url跳转_web和tomcat的区别
  6. html+css+js实现登录页面
  7. 042_前端规范 2021-06-03
  8. CentOS下rsync数据同步备份
  9. deepin和UOS sunpinyin 皮肤添加
  10. screen命令详解
  11. PHP 编写接口并在header中进行简单的校验
  12. ADMM算法在神经网络模型剪枝方面的应用
  13. ORA-00932:数据类型不一致:应为NUMBER,但却获得CHAR
  14. 支付宝统一收单接口实现支付宝支付
  15. 会议室预定管理系统_如何灵活安排会议室,会议预约管理系统帮到你
  16. 马云研判当前经济形势,超震撼
  17. 分镜头故事板Toon Boom Storyboard Pro 6简体中文版完美激活版
  18. keytool 常用命令
  19. C语言蜗牛爬墙(个人练习)
  20. 南宁计算机职称考试网,南宁人事考试职称网

热门文章

  1. 山东计算机春考专科院校分数,2020年山东春季高考专科批第一次志愿录取分数线...
  2. uni-app使用腾讯IM即时通讯
  3. K-means聚类算法第1关:计算欧几里得距离
  4. 服务器体系和共享存储架构
  5. 第二十六讲项目1-投票表决器
  6. C语言--NULL和NUL
  7. getClass 方法
  8. 操作系统中常用的几种进程调度算法
  9. fatal error C1189: #error: Unknown architecture (x86, amd64, ia64, arm, arm64)
  10. 奇葩的java代码_聊聊我面试过的一个最奇葩的 Java 程序猿!