资源简介

此方法采用经典的PCA对人脸图像进行特征提取,用libsvm库函数的SVM分类器对图像分类。

资源截图

代码片段和文件信息

clear;
clc;
tic;
%%%%%%%%%%%%%%%%%%%%
addpath(‘E:\libsvm_mat_new‘);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%数据导入
filePath=‘E:\人脸识别\人脸库\orl‘;

%所有训练图像
train_data=[];   
for i=1:40
    for j=1:5
      filepath=strcat(filePath‘\s‘num2str(i)‘\‘num2str(j)‘.pgm‘);
      a=imread(filepath);    %strcat组合字符串   num2str数值转换成字符串
      [mn]=size(a);
      b=a(1:m*n); % b是行矢量 1×N,其中N=10304,提取顺序是先列后行,即从上到下,从左到右
      b=double(b);   %double
      
      train_data=[train_data; b];  % allsamples 是一个M * N 矩阵,allsamples 中每一行数据代表一张图片,其中M=200
    end
end
%所有测试图像
test_data=[];   
for i=1:40
    for j=6:10 %读入40 x 5 副测试图像
        a=imread(strcat(filePath‘\s‘num2str(i)‘\‘num2str(j)‘.pgm‘)); 
        [m1n1]=size(a);
        b=a(1:m1*n1);
        b=double(b);     %1×10

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       3949  2010-03-29 16:31  PCA_SVM\classifier_orl_svm.m

     文件        461  2009-12-06 17:50  PCA_SVM\norm_data.m

     文件       8127  2009-12-06 17:51  PCA_SVM\PCA.m

     文件       2748  2009-12-06 21:50  PCA_SVM\SVMcgForClass.m

     目录          0  2010-04-06 15:00  PCA_SVM

----------- ---------  ---------- -----  ----

                15285                    5


评论

共有 条评论