function [imgRow,imgCol,FaceContainer,faceLabel]=ReadFaces(nFacesPerPerson, nPerson, bTest)
% 读入ORL人脸库的指定数目的人脸前前五张(训练)
%
% 输入:nFacesPerPerson --- 每个人需要读入的样本数,默认值为 5
% nPerson --- 需要读入的人数,默认为全部 40 个人
% bTest --- bool型的参数。默认为0,表示读入训练样本(前5张);如果为1,表示读入测试样本(后5张)
%
% 输出:FaceContainer --- 向量化人脸容器,nPerson * 10304 的 2 维矩阵,每行对应一个人脸向量
if nargin==0 %default value 简单理解nargin为输入变量的个数
nFacesPerPerson=5;%前5张用于训练
nPerson=40;%要读入的人数(每人共10张,前5张用于训练)
bTest = 0;
elseif nargin < 3
bTest = 0;
end
img=imread('C:\Users\wanglin\Desktop\Visual C++_Matlab\chapter13\code\PCA_ORL\Data\ORL\s1\1.pgm');%为计算尺寸先读入一张
[imgRow,imgCol]=size(img);
FaceContainer = zeros(nFacesPerPerson*nPerson, imgRow*imgCol);
faceLabel = zeros(nFacesPerPerson*nPerson, 1);
% 读入训练数据
for i=1:nPerson
i1=mod(i,10); % 个位
i0=char(i/10);
strPath='C:\Users\wanglin\Desktop\Visual C++_Matlab\chapter13\code\PCA_ORL\Data\ORL\s';
if( i0~=0 )
strPath=strcat(strPath,'0'+i0);
end
strPath=strcat(strPath,'0'+i1);
strPath=strcat(strPath,'\');
tempStrPath=strPath;
for j=1:nFacesPerPerson
strPath=tempStrPath;
if bTest == 0 % 读入训练数据
strPath = strcat(strPath, '0'+j);
else
strPath = strcat(strPath, num2str(5+j));
end
strPath=strcat(strPath,'.pgm');
img=imread(strPath);
%把读入的图像按列存储为行向量放入向量化人脸容器faceContainer的对应行中
FaceContainer((i-1)*nFacesPerPerson+j, :) = img(:)';
faceLabel((i-1)*nFacesPerPerson+j) = i;
end % j
end % i
% 保存人脸样本矩阵
save('FaceMat.mat', 'FaceContainer')
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
基于ORL库和PCA方法的人脸识别系统matlab源码 (413个子文件)
ReadFaces.m 2KB
main.m 911B
vetor2image.m 755B
fastPCA.m 611B
visualize_pc.m 346B
approx.m 214B
PCA.mat 15.14MB
FaceMat.mat 1.82MB
FaceMat.mat 1.82MB
PCA.mat 1.54MB
LowDimFaces.mat 300KB
5.pgm 10KB
10.pgm 10KB
2.pgm 10KB
1.pgm 10KB
4.pgm 10KB
6.pgm 10KB
3.pgm 10KB
9.pgm 10KB
8.pgm 10KB
7.pgm 10KB
5.pgm 10KB
10.pgm 10KB
2.pgm 10KB
1.pgm 10KB
4.pgm 10KB
6.pgm 10KB
3.pgm 10KB
9.pgm 10KB
8.pgm 10KB
7.pgm 10KB
5.pgm 10KB
10.pgm 10KB
2.pgm 10KB
1.pgm 10KB
4.pgm 10KB
6.pgm 10KB
3.pgm 10KB
9.pgm 10KB
8.pgm 10KB
7.pgm 10KB
5.pgm 10KB
10.pgm 10KB
2.pgm 10KB
1.pgm 10KB
4.pgm 10KB
6.pgm 10KB
3.pgm 10KB
9.pgm 10KB
8.pgm 10KB
7.pgm 10KB
5.pgm 10KB
10.pgm 10KB
2.pgm 10KB
1.pgm 10KB
4.pgm 10KB
6.pgm 10KB
3.pgm 10KB
9.pgm 10KB
8.pgm 10KB
7.pgm 10KB
5.pgm 10KB
10.pgm 10KB
2.pgm 10KB
1.pgm 10KB
4.pgm 10KB
6.pgm 10KB
3.pgm 10KB
9.pgm 10KB
8.pgm 10KB
7.pgm 10KB
5.pgm 10KB
10.pgm 10KB
2.pgm 10KB
1.pgm 10KB
4.pgm 10KB
6.pgm 10KB
3.pgm 10KB
9.pgm 10KB
8.pgm 10KB
7.pgm 10KB
5.pgm 10KB
10.pgm 10KB
2.pgm 10KB
1.pgm 10KB
4.pgm 10KB
6.pgm 10KB
3.pgm 10KB
9.pgm 10KB
8.pgm 10KB
7.pgm 10KB
5.pgm 10KB
10.pgm 10KB
2.pgm 10KB
1.pgm 10KB
4.pgm 10KB
6.pgm 10KB
3.pgm 10KB
9.pgm 10KB
8.pgm 10KB
共 413 条
- 1
- 2
- 3
- 4
- 5
资源评论
每天进步一点点daydayup
- 粉丝: 1
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 老飞飞搭建基础通用数据库V19数据库.rar
- jquery.js
- 机械设计多工位ACF贴胶带&预压设备sw18可编辑非常好的设计图纸100%好用.zip
- 基于Pytorch复现Point-Transformer,用于ShapeNet数据集点云分割
- 【医学影像分析】2D超声图像的分割检测(Ultrasound Nerve Segmentation - Kaggle数据集)
- 嘎嘎香的五款神仙谷歌插件
- .arch书源导入教程.mp4
- 贪心算法介绍及代码示例讲解
- CR13SP35MSI64 Crystal 水晶报表运行组件最后版本64位
- 图像分类数据集:玉米叶是否感染分类数据集(2分类,包含训练集、验证集)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功