资源简介
此方法采用经典的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
评论
共有 条评论