資源簡介
基于KL變換的人臉識別 matlab程序

代碼片段和文件信息
clear;
clc;
N=40;%樣本大小為40人
X=zeros(92*112N);
i=1;
ADDR=‘F:\ORLrenlian104\‘;
for?im=1:N?
????img1=imread([ADDRnum2str(im)‘.bmp‘]);??
for?j=1:10304
????X(jim)=img1(j);
end
end?
SUM=sum(X‘);
XP=SUM/N;
XP=XP‘;
A=zeros(10304N);
for?i=1:N
????A(:i)=X(:i)-XP;
end
B=A‘*A;
[VV?p]=eig(B);%下面需要將vi和di重新排列,保證按從大到小
d=zeros(NN);
V=zeros(NN);
for?i=1:N
????d(ii)=p(N+1-iN+1-i);
????V(:i)=VV(:N+1-i);
end
dd=0;
for?j=1:N
????dd=dd+d(jj);%計算所有特征值之和
end
z=N;
for?a=1:N
????s=0;
????for?j=1:a
????????s=s+d(jj);
????end
????if?s/dd>=0.99&&a<=z%求出占特征值總和的前z個特征值
????????z=a;
????end
end
W=zeros(10304z);
for?j=1:z
????W(:j)=A*V(:j)*1/sqrt(d(jj));%此時的W是特征臉空間
end
P=zeros(zN);
for?i=1:N
????P(:i)=W‘*A(:i);%將每一幅人臉與平均臉的差值矢量投影到特征臉空間
end
sita1=0;
for?i=1:N
????for?j=1:N
???????ss=norm(P(:i)-P(:j));
???????if?ss>sita1
???????????sita1=ss;
???????end
????end
end
????sita=0.5*sita1;???
ADDR1=‘F:\ORLceshi\‘;
im=input(‘請輸入待識別圖像編號(1--10):‘);
????img01=imread([ADDR1num2str(im)‘.bmp‘]);?????
subplot(121);
imshow(img01);
title(‘待識別圖像‘)%輸出待識別圖像
?subplot(122);
I=zeros(103041);
for?j=1:10304
I(j1)=img01(j);
end
P01=W‘*(I-XP);
P02=W*P01+XP;%每幅圖可以用特征臉的加權來表示
sigma=norm(I-P02);
sigma1=zeros(z1);
for?k=1:N
????sigma1(k1)=norm(P01-P(:k));
end
[sigma2z0]=min(sigma1);
if?sigma>=sita
?????tit=sprintf(‘識別輸出:輸入圖像不是人臉圖像‘);
else
????if?sigma2>=sita
?????tit=sprintf(‘識別輸出:輸入圖像包含未知人臉最相似為第%d個‘z0);
????else
?????????tit=sprintf(‘識別輸出:輸入圖像為庫中的第%d個人臉‘z0);
?????end
end
???people1=zeros(103041);
????????for?i=1:z
????????????people1=people1+P(iz0)*W(:i);%每幅圖可以用特征臉的加權來表示
????????end?
????????people1=people1+XP;
????????aver=zeros(11292);
????????for?i=1:92
?????????for?y=1:112
????????????aver(yi)=people1((i-1)*112+y1);%將用加權值表示的圖像轉換為正常輸出格式
?????????end
????????end
????????imshow(aver/250);?
????????title(tit)%輸出識別結果????
figure;
for?x=1:z
subplot(57x);
???for?i=1:92
?????????for?y=1:112
????????????aver(yi)=W((i-1)*112+yx);%?輸出前z個特征臉
?????????end
???end????
????????imshow((aver+0.01)*50);
end
subplot(574)
????title(‘前34個特征臉主成份‘)
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????2386??2012-11-05?21:03??K-L人臉識別\e.m
?????文件??????11384??2010-03-24?19:45??K-L人臉識別\ORLceshi\1.bmp
?????文件??????11384??2010-03-25?19:23??K-L人臉識別\ORLceshi\10.bmp
?????文件??????11384??2010-03-25?18:54??K-L人臉識別\ORLceshi\2.bmp
?????文件??????11384??2010-03-25?18:57??K-L人臉識別\ORLceshi\3.bmp
?????文件??????11384??2010-03-25?19:01??K-L人臉識別\ORLceshi\4.bmp
?????文件??????11384??2010-03-25?19:04??K-L人臉識別\ORLceshi\5.bmp
?????文件??????11384??2010-03-25?19:06??K-L人臉識別\ORLceshi\6.bmp
?????文件??????11384??2010-03-25?19:07??K-L人臉識別\ORLceshi\7.bmp
?????文件??????11384??2010-03-25?19:19??K-L人臉識別\ORLceshi\8.bmp
?????文件??????11384??2010-03-25?19:22??K-L人臉識別\ORLceshi\9.bmp
?????文件??????11384??2010-03-24?19:05??K-L人臉識別\ORLrenlian104\1.bmp
?????文件??????11384??2010-03-25?19:23??K-L人臉識別\ORLrenlian104\10.bmp
?????文件??????11384??2010-03-24?19:42??K-L人臉識別\ORLrenlian104\11.bmp
?????文件??????11384??2010-03-25?18:53??K-L人臉識別\ORLrenlian104\12.bmp
?????文件??????11384??2010-03-25?18:56??K-L人臉識別\ORLrenlian104\13.bmp
?????文件??????11384??2010-03-25?19:00??K-L人臉識別\ORLrenlian104\14.bmp
?????文件??????11384??2010-03-25?19:04??K-L人臉識別\ORLrenlian104\15.bmp
?????文件??????11384??2010-03-25?19:05??K-L人臉識別\ORLrenlian104\16.bmp
?????文件??????11384??2010-03-25?19:07??K-L人臉識別\ORLrenlian104\17.bmp
?????文件??????11384??2010-03-25?19:20??K-L人臉識別\ORLrenlian104\18.bmp
?????文件??????11384??2010-03-25?19:22??K-L人臉識別\ORLrenlian104\19.bmp
?????文件??????11384??2010-03-25?18:55??K-L人臉識別\ORLrenlian104\2.bmp
?????文件??????11384??2010-03-25?19:23??K-L人臉識別\ORLrenlian104\20.bmp
?????文件??????11384??2010-03-24?19:44??K-L人臉識別\ORLrenlian104\21.bmp
?????文件??????11384??2010-03-25?18:54??K-L人臉識別\ORLrenlian104\22.bmp
?????文件??????11384??2010-03-25?18:56??K-L人臉識別\ORLrenlian104\23.bmp
?????文件??????11384??2010-03-25?19:01??K-L人臉識別\ORLrenlian104\24.bmp
?????文件??????11384??2010-03-25?19:04??K-L人臉識別\ORLrenlian104\25.bmp
?????文件??????11384??2010-03-25?19:06??K-L人臉識別\ORLrenlian104\26.bmp
............此處省略28個文件信息
- 上一篇:粒度端元分析的matlab程序m文件
- 下一篇:直線匹配程序
評論
共有 條評論