⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 readimage.m

📁 使用Fisher线性鉴别分析(FLDA)方法在ORL人脸数据库上进行人脸识别试验。ORL标准人脸库共包含40人
💻 M
字号:
function [Train_Sample,Test_Sample,Total_Sample]=ReadImage(Train_Num)
%读图函数
%选择图片库ORL,根据训练样本数目Train_Num选取每一类样本的前Train_Num个为训练样本
%输出为总样本矩阵Total_Sample,训练样本矩阵Train_Sample,测试样本矩阵Test_Sample
%样本矩阵为一三维矩阵,每一列代表一幅BMP图片的数据

Path = uigetdir('', '请在当前文件夹下选择人脸识别图片库' );
T=40;     %共40类
TN=10;    %每类10幅图像
Total_Sample = [];
for i = 1:T
    Total_Sample_t= [];
    for j=1:TN
    string=strcat(Path,'\',int2str(j+(i-1)*10));
    img = imread(string,'BMP');        
    [irow icol] = size(img);   
    temp = reshape(img,irow*icol,1);  
    Total_Sample_t = [Total_Sample_t temp];
    end
    Total_Sample(:,:,i)=Total_Sample_t;
end
Total_Sample = double(Total_Sample);

%初始化训练样本集和测试样本集
[dim,sn,cn]=size(Total_Sample);
Train_Sample=zeros(dim,Train_Num,cn);
Test_Sample=zeros(dim,sn-Train_Num,cn);
%取前Train_Num个作为训练样本
for c=1:cn
    s=1;
    for s=1:sn
        if s<=Train_Num
            Train_Sample(:,s,c)=Total_Sample(:,s,c);      
        else
            Test_Sample(:,s-Train_Num,c)=Total_Sample(:,s,c);   
        end
        s=s+1;
    end
end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -