资源简介
ICA独立成分分析的matlab代码,内有音频数据,以及使用说明,希望对大家有所帮助。

代码片段和文件信息
function [M] = correlation(XNFFTFSwinOVERLAPN)
%
% function [M] = correlation(XFSNFFTOVERLAPN)
% making correlation matrices for each frequency
% X must has 2 column
%
% Shiro Ikeda 14July1998
SPLEN = 1000;
[LENGTHdim] = size(X);
FL = floor((LENGTH-NFFT)/(NFFT-OVERLAP))+1;
DL = (SPLEN-1)*(NFFT-OVERLAP)+NFFT;
NF = NFFT/2+1;
repeat=floor(FL/SPLEN);
MARGIN=zeros(2*NFN);
te=OVERLAP; M=zeros(2*NF2*N+2); AVE=zeros(2*NF1);
for ITER=1:repeat
ts = te-OVERLAP+1; te = ts-1+DL;
B1=specgram(X(ts:te1)NFFTFSwinOVERLAP);
B2=specgram(X(ts:te2)NFFTFSwinOVERLAP);
if ITER==1
STKH1=B1(:1:N); STKH2=B2(:1:N);
end
for f=1:NF
f1=2*f-1; f2=2*f;
AVE(f1) = AVE(f1)+B1(f:)*ones(SPLEN1);
AVE(f2) = AVE(f2)+B2(f:)*ones(SPLEN1);
TMP=[MARGIN(f1:)B1(f:);MARGIN(f2:)B2(f:)];
MARGIN(f1:f2:)=[B1(fSPLEN-N+1:SPLEN);B2(fSPLEN-N+1:SPLEN)];
for tau=0:N
TMP1=TMP(:N-tau+1:SPLEN+N-tau)*TMP(:N+1:SPLEN+N)‘;
M(f1:f22*tau+1:2*tau+2)=M(f1:f22*tau+1:2*tau+2)+TMP1;
end
end
end
ts = te-OVERLAP+1; te = LENGTH;
B1=specgram(X(ts:te1)NFFTFSwinOVERLAP);
B2=specgram(X(ts:te2)NFFTFSwinOVERLAP);
RL=size(B12);
if repeat==0
STKH1=B1(:1:N); STKH2=B2(:1:N);
end
STKT1=B1(:RL-N+1:RL); STKT2=B2(:RL-N+1:RL);
for f=1:NF
f1=2*f-1; f2=2*f;
AVE(f1) = AVE(f1)+B1(f:)*ones(RL1);
AVE(f2) = AVE(f2)+B2(f:)*ones(RL1);
TMP=[MARGIN(f1:)B1(f:);MARGIN(f2:)B2(f:)];
for tau=0:N
TMP1=TMP(:N-tau+1:RL+N-tau)*TMP(:N+1:RL+N)‘;
M(f1:f22*tau+1:2*tau+2)=M(f1:f22*tau+1:2*tau+2)+TMP1;
end
end
AVE=AVE/FL;
for f=1:NF
f1=2*f-1; f2=2*f;
TMPA = AVE(f1:f2)*AVE(f1:f2)‘;
M(f1:f21:2)=M(f1:f21:2)-TMPA*FL;
M(f1:f21:2)=M(f1:f21:2)+M(f1:f21:2)‘;
for tau=1:N
t1=2*tau+1; t2=2*tau+2;
T1 = AVE(f1:f2)*FL-[STKT1(fN-tau+1:N);STKT2(fN-tau+1:N)]*ones(tau1);
T2 = AVE(f1:f2)*FL-[STKH1(f1:tau);STKH2(f1:tau)]*ones(tau1);
TMP1=T1*AVE(f1:f2)‘; TMP2=AVE(f1:f2)*T2‘;
M(f1:f2t1:t2)=M(f1:f2t1:t2)-TMP1-TMP2+TMPA*(FL-tau);
M(f1:f2t1:t2)=M(f1:f2t1:t2)+M(f1:f2t1:t2)‘;
end
end
for tau=0:N
M(:2*tau+1:2*tau+2)=M(:2*tau+1:2*tau+2)/(2*(FL-tau));
end
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 333 1998-07-23 16:02 ica_matlab\ica\decorrelation.m
文件 2179 1998-07-23 16:02 ica_matlab\ica\correlation.m
文件 1151 1998-07-23 16:05 ica_matlab\ica\sepfilter.m
文件 1213 1998-07-24 12:08 ica_matlab\ica\ica_f.m
文件 1364 1998-07-23 16:02 ica_matlab\ica\permutation.m
文件 66840 2003-06-23 21:42 ica_matlab\ica\X_room.wav
文件 960 2003-06-23 21:45 ica_matlab\ica\Readme
文件 123244 2003-06-23 21:42 ica_matlab\ica\X_linear.wav
目录 0 2011-10-23 12:57 ica_matlab\ica
目录 0 2011-10-23 12:57 ica_matlab
----------- --------- ---------- ----- ----
197284 10
- 上一篇:16qam仿真及注解
- 下一篇:蒙特卡洛法matlab实现
相关资源
- 串行级联cpm系统MATLAB仿真
- matlab_OFDM调制解调(来自剑桥大学)
- Matlab路面裂缝识别69319
- 高灵敏度GPS接收机MATLAB仿真,附捕获
- 基于MATLAB的质点弹道计算与外弹道优
- 阵列天线的matlab仿真
- MATLAB 经典程序源代码大全
- MATLAB小波软阈值去噪代码33473
- 天线阵的波束形成在MATLAB仿真程序及
- 非线性SVM算法-matlab实现
- 《MATLAB 智能算法超级学习手册》-程序
- 组合导航matlab程序
- 读取txt文件内容matlab代码实现
- Matlab实现基于相关的模板匹配程序
- matlab优化工具箱讲解
- 基于MATLAB的快速傅里叶变换
- 光纤传输中的分布傅立叶算法matlab实
- 基于matlab的图像处理源程序
- matlab 椭圆拟合程序
- 算术编码解码matlab源代码
- optical_flow 光流法 matlab 实现程序
- 引导图像滤波器 Matlab实现
- 分形几何中一些经典图形的Matlab画法
- OFDM系统MATLAB仿真代码
- SVM工具箱(matlab中运行)
- 图像小波变换MatLab源代码
- LU分解的MATLAB实现
- 冈萨雷斯数字图像处理matlab版(第三
- 替代数据法的matlab程序
- 用matlab实现的多站定位系统性能仿真
评论
共有 条评论