📄 die_dai.m
字号:
function [B,C,Miu]=Die_Dai(B,C,Miu,sig,vzm,v)
% 通过迭代训练特征子空间,训练图像在特征脸上的投影和均值
N=20;
DN=50;
flag=1;
k=1;
while k<DN&flag==1
error=v-Miu*ones(1,size(v,2))-B*C;
%fid = fopen('error.txt','w');
%fprintf(fid,'%6.2f %12.8f\n',error);
%fclose(fid);
psi=zeros(size(v));
for i=1:size(v,1)
for j=1:size(v,2)
psi(i,j)=2*error(i,j)*sig^2/(error(i,j)^2+sig^2)^2;
end
end
for i=1:size(v,1)
for j=1:size(v,2)
Nsigam(i,j)=2/(sig^2);
end
end
Bg=B;
Hb=Nsigam*(C.*C)';
Hc=(B.*B)'*Nsigam;
yivector=ones(size(v,2),1);
Hmiu=Nsigam*yivector;
Bdiff=-psi*C';
Cdiff=-B'*psi;
Miudiff=-psi*yivector;
B=B-Bdiff./Hb;
C=C-Cdiff./Hc;
Miu=Miu-Miudiff./Hmiu;
if subspace(B,Bg)<1e-1
flag=0;
end
k=k+1;
end
return;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -