📄 recog_test_vote.m
字号:
function [correct]=Recog_Test2(pclu,pcld,pcru,pcrd,pcfu,ClassMeanLU,ClassMeanLD,ClassMeanRU,ClassMeanRD,ClassMeanFU,TotalMeanLU,TotalMeanLD,TotalMeanRU,TotalMeanRD,TotalMeanFU,map,nbcol)
projectLU=pclu(545:644,:);
projectLD=pcld(545:644,:);
projectRU=pcru(545:644,:);
projectRD=pcrd(545:644,:);
projectFU=pcfu(545:644,:);
people=15;
withinsample=6;
FinalLU=[];
FinalLD=[];
FinalRU=[];
FinalRD=[];
FinalFU=[];
correct=0;
for i=1:1:15
for j=2:2:10
tempLU=[];
tempLD=[];
tempRU=[];
tempRD=[];
tempFU=[];
%s=['orl' '\' num2str(i) '\' num2str(j) '.bmp'];
s=['yale11292' '\' num2str(i) '\' num2str(j) '.bmp'];
%---------------------------------------------------------
test=imread(s);
[row,col]=size(test);
%imshow(test)
test=double(test);
[LL1,T,T,T]=mdwt(test,'db1');
coef1=wcodemat(LL1,nbcol);
[LL2,T,T,T]=mdwt(LL1,'db1');
coef2=wcodemat(LL2,nbcol);
lu=coef1(1:(row/4),1:(col)/4);
ld=coef1(((row)/4)+1:row/2,1:(col)/4);
ru=coef1(1:(row/4),((col)/4)+1:col/2);
rd=coef1(((row)/4)+1:row/2,((col)/4)+1:col/2);
fu=coef2;
imshow(test,map)
for k=1:row/4
tempLU=[tempLU,lu(k,:)];
tempLD=[tempLD,ld(k,:)];
tempRU=[tempRU,ru(k,:)];
tempRD=[tempRD,rd(k,:)];
tempFU=[tempFU,fu(k,:)];
end
tempLU=tempLU-TotalMeanLU;
tempLD=tempLD-TotalMeanLD;
tempRU=tempRU-TotalMeanRU;
tempRD=tempRD-TotalMeanRD;
tempFU=tempFU-TotalMeanFU;
resultLU=projectLU*tempLU';
resultLD=projectLD*tempLD';
resultRU=projectRU*tempRU';
resultRD=projectRD*tempRD';
resultFU=projectFU*tempFU'; % col
resultLU=resultLU';
resultLD=resultLD';
resultRU=resultRU';
resultRD=resultRD';
resultFU=resultFU';
mindistanceLU=Inf;
mindistanceLD=Inf;
mindistanceRU=Inf;
mindistanceRD=Inf;
mindistanceFU=Inf;
vote=zeros(1,people);
%++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
for k=1:1:people
LUFACE=[];
LDFACE=[];
RUFACE=[];
RDFACE=[];
FUFACE=[];
% !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
for m=1:2:11 % YALE
matchstring=['yale11292' '\' num2str(k) '\' num2str(m) '.bmp'];
matchX=imread(matchstring);
matchX=double(matchX);
[matchrow,matchcol]=size(matchX);
[LL1,T,T,T]=mdwt(matchX,'db1');
coef1=wcodemat(LL1,nbcol);
[LL2,T,T,T]=mdwt(LL1,'db1');
coef2=wcodemat(LL2,nbcol);
matchlu=coef1(1:(matchrow/4),1:(matchcol)/4);
matchld=coef1(((matchrow)/4)+1:matchrow/2,1:(matchcol)/4);
matchru=coef1(1:(matchrow/4),((matchcol)/4)+1:matchcol/2);
matchrd=coef1(((matchrow)/4)+1:matchrow/2,((matchcol)/4)+1:matchcol/2);
matchfu=coef2;
matchtempLU=[];
matchtempLD=[];
matchtempRU=[];
matchtempRD=[];
matchtempFU=[];
%--逼Θ
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -