⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 milcadelay.m

📁 互信息盲源分离
💻 M
字号:
function [icasig, W]=milcadelay(x,kneig,algo,emb_dim,emb_tau,harm,finetune,PCAflag)% Mutual information based least dependent component analysis including% additional the time structure of the input% Output: most independent components under linear transformation and the transformation matrix% x....input data mxn   m...channelnummer  n...sampling points  m<<n% kneig... k nearest neigbor for MI algorithm% algo ... 1=cubic  2=rectangular% emb_dim... embxding dimension (default is 1, no embedding)% emb_tau... time-delay, only relevant when emb_dim>1 (default is 1)% harm ... fit the MI vs. angle curve with # harmonics% finetune ... Number 2^# of angles between 0 and pi/2 (default is 7)% PCAflag ... 0=without whitening  else whitening  (default with whitening)%default-valuesif ~exist('kneig'), kneig=18; endif ~exist('algo'), algo=2; endif ~exist('emb_dim'), emb_dim=2; endif ~exist('emb_tau'), emb_tau=1; endif ~exist('harm'), harm=1; endif ~exist('finetune')    Nb=128;else    Nb=2^finetune;endif ~exist('PCAflag'), PCAflag=1; end[Nd,N]=size(x);if Nd>N    x=x';    [Nd,N]=size(x);end%removing mean and normalizationx=x-mean(x')'*ones(1,N); x=x./(std(x')'*ones(1,N));%whiteningif PCAflag    [u,s,v]=svd(cov(x'));    V=v*s^(-.5)*u';    x=V*x;end% Augmentation see% Erik Learnx-Miller and John Fisher, (2003) "ICA Using Spacings Estimates of Entropy." Journal of Machine Learning Research% x=randn(Nd,N*30)*0.175+repmat(x,[1,30]);% save data for external Programmzwsp=x';save zwspmilcadelay.txt zwsp -ASCII% execute C Programm[a unout]=unix(['milcadelay zwspmilcadelay.txt ',num2str(Nd),' ',num2str(N),' ',num2str(kneig),' ',num2str(emb_tau),' ',num2str(emb_dim),' ',num2str(algo-1),' ',num2str(Nb),' ',num2str(harm)]);Rall=str2num(unout);%outputicasig=Rall*x;if PCAflag    W=Rall*V;else    W=Rall;end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -