• 大小: 10KB
    文件类型: .rar
    金币: 2
    下载: 2 次
    发布日期: 2021-09-23
  • 语言: Matlab
  • 标签: 仿真技术  

资源简介

选用ORL_92x112人脸数据集,共包含了40张人脸,每张人脸有10张不同姿态图像。代码中人脸矩阵中每一行对应一个人脸,每一列对应一个属性。

资源截图

代码片段和文件信息


clc;
clear;
npersons=40;%选取40个人的脸
global imgrow;
global imgcol;%读取图像的列
global edit2
imgrow=112;
imgcol=92;%读取的图像为112*92

set(edit2‘string‘‘读取训练数据....‘)%显示在句柄为edit2的文本框里
drawnow  %更新窗口的内容,不然程序结束时才会显示,这样只能看到最后一句
f_matrix=ReadFace(npersons0);%读取训练数据
nfaces=size(f_matrix1);%样本人脸的数量

%低维空间的图像是(npersons*5)*k的矩阵,每行代表一个主成分脸,每个脸20维特征

set(edit2‘string‘‘训练数据PCA特征提取...‘)
drawnow
mA=mean(f_matrix);%求每个属性的均值
k=20;%降维至20维
[pcafaceV]=fastPCA(f_matrixkmA);%主成分分析法特征提取

set(edit2‘string‘‘训练特征数据规范化....‘)
drawnow %每次设置完之后要更新窗口内容
lowvec=min(pcaface);
upvec=max(pcaface);
scaledface=scaling(pcafacelowvecupvec)

set(edit2‘string‘‘SVM样本训练...‘)
drawnow %每次设置完之后要更新窗口内容
gamma=0.0078;
c=128;
multiSVMstruct=multiSVMtrain(scaledfacenpersonsgammac);
%save(‘recognize.mat‘‘multiSVMstruct‘‘npersons‘‘k‘‘mA‘‘V‘‘lowvec‘‘upvec‘);

set(edit2‘string‘‘读取测试数据...‘)
drawnow
[testfacerealclass]=ReadFace(npersons1);

set(edit2‘string‘‘测试数据降维...‘)
drawnow
m=size(testface1);
for i=1:m
    testface(i:)=testface(i:)-mA;
end
pcatestface=testface*V;

set(edit2‘string‘‘测试特征数据规范化...‘)
scaledtestface=scaling(pcatestfacelowvecupvec);

set(edit2‘string‘‘样本分类...‘)
drawnow
class=multiSVM(scaledtestfacemultiSVMstructnpersons);

set(edit2‘string‘‘测试完成!‘)
accuracy=sum(class==realclass)/length(class);
msgbox([‘识别准确率:‘num2str(accuracy*100)‘%。‘])



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

     文件       1626  2014-12-18 14:59  PCAface recognitionGUI\face.asv

     文件       1629  2014-12-18 15:26  PCAface recognitionGUI\face.m

     文件        974  2014-12-17 20:29  PCAface recognitionGUI\faceGUI.asv

     文件        988  2014-12-18 09:50  PCAface recognitionGUI\faceGUI.m

     文件        640  2014-12-17 11:49  PCAface recognitionGUI\fastPCA.m

     文件        264  2014-12-17 20:37  PCAface recognitionGUI\GUIopen.m

     文件       1221  2014-12-18 16:55  PCAface recognitionGUI\GUIrecg.asv

     文件       2346  2014-12-18 17:19  PCAface recognitionGUI\GUIrecg.m

     文件        702  2014-12-17 18:45  PCAface recognitionGUI\multiSVM.asv

     文件        726  2014-12-17 18:46  PCAface recognitionGUI\multiSVM.m

     文件       1023  2014-12-17 19:05  PCAface recognitionGUI\multiSVMtrain.asv

     文件       1023  2014-12-17 19:07  PCAface recognitionGUI\multiSVMtrain.m

     文件       1130  2014-12-17 11:50  PCAface recognitionGUI\ReadFace.m

     文件        359  2014-12-17 14:46  PCAface recognitionGUI\scaling.asv

     文件        392  2014-12-17 14:48  PCAface recognitionGUI\scaling.m

     目录          0  2014-12-24 15:08  PCAface recognitionGUI

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

                15043                    16


评论

共有 条评论