📄 st4.m
字号:
% ICA 4-order static algorithm without a goal function
% Unrealtime,batch,maybe unsolved
function [Y,W]=ST4(X)
[m,T]=size(X);
epsilon=1; % 特征值<=epsilon认为是噪声
% center x and white x to z
AvgX=sum(X')'/T;
for t=1:T
X(:,t)=X(:,t)-AvgX;
end
Cx=X*X'/T;
[U,D]=eig(Cx);
[fv,I]=sort(-sum(D));fv=-fv % 特征值
U=U(:,I); % 特征矢量
% n=length(find(fv>epsilon)); % 说明有n个独立源
n=2;
fv=fv(1:n);U=U(:,1:n);
M=diag(sqrt(1./fv))*U';
Z=M*X;
Rz4=zeros(n,n);
for t=1:T
Rz4=Rz4+( norm(Z(:,t))^2 )*Z(:,t)*Z(:,t)';
end
Rz4=Rz4/T;
[B,D]=eig(Rz4);
[fv,I]=sort(-sum(D));fv=-fv % 特征值
B=B(:,I); % 特征矢量
W=B'*M;
Y=W*X;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -