资源简介
盲信号分离(BSS)指在源信号混合和传输信道未知的情况下,只利用接收天线的输出观测混合信号抽取源信号的方法。本文简要阐述了常用的瞬时混合盲信号分离的LMS与RLS自适应算法,对RLS自适应算法重点研究分析了基于普通梯度与自然梯度的两种算法,并通过仿真实验来分析比较几种方法的性能。
代码片段和文件信息
% Blind Source Separation
%Corpyright(c) Yingjun Niu ,Jianyong Xuan,Xiaocen Chen THU Nov 12th 2010
function simulation1
%Setting number of samples
n=4000;
%Setting sample frequency
fs=2000;
%Setting number of simulation
ns=200;
u=0.006;
beta=0.99;
for t=1:n
s(1t)=sign(cos(2*pi*155*t/fs)); %Symbol signals
s(2t)=sin(2*pi*800*t/fs); %High-frequency sine signals
s(3t)=sin(2*pi*90*t/fs); %Low-frequency sine signals
s(4t)=sin(2*pi*9*t/fs)*sin(2*pi*300*t/fs); %Amplitude-modulated signals
end
s(5:)=1-2*1*rand(1n); %Uniform distribution noise between[-11]
%Calculate the observed data vector multiplying s by A
A=1-2*rand(55); %Random hybrid matrix
X=A*s; %Observation signal
[w1 E1]=LMS(XAu);
[w2 E2]=RLS_gg(XAbeta);
[w3 E3]=RLS_ng(XAbeta);
%串音误差
figure(1)
plot(1:nE1‘r‘1:nE2‘g‘1:nE3‘b‘);
title(‘Average Performance Index vs Literation Number‘)
xlabel(‘literation number‘)
ylabel(‘average performance index‘);
legend(‘LMS算法‘‘普通梯度RLS算法‘‘自然梯度RLS算法‘);
grid;
y1=w1*X;
%分离效果图
figure(2)
%title(‘LMS算法分离效果图‘)
for i=1:5
subplot(51i);plot(y1(i1:100));
end
y2=w2*X;
figure(3)
for i=1:5
subplot(51i);plot(y2(i1:100));
end
%title(‘普通梯度RLS算法分离效果图‘)
y3=w3*X;
figure(4)
for i=1:5
subplot(51i);plot(y3(i1:100));
end
%title(‘自然梯度RLS算法分离效果图‘)
end
%LMS Algorithm with EASI
function [wnE] = LMS(XAu)
n=size(X2); %whitening the observed signal
% zX=X-repmat(mean(X2)1n);
% V=cov(zX‘)^(-1/2);
% X=V*X;
I=eye(size(A)); %initializing W
wn=I;
E=zeros(1n);
for i=1:n
y=wn*X(:i);
g=y-tanh(y);
wn=wn+u*(I-g*y‘+y*g‘-y*y‘)*wn;
C=abs(wn*A);
error1=0;
error2=0;
[height width]=size(C);
for j=1:height
sum1=0;
sum2=0;
for k=1:width
c=abs(C(jk));
sum1=sum1+c/max(abs(C(j:)));
sum2=sum2+c/max(abs(C(:j)));
end
sum1=sum1-1;
sum2=sum2-1;
error1=error1+sum1;
error2=error2+sum2;
end
E(i)=error1+error2;
end
end
%RLS Algorithm with General Gradient
function [WE] = RLS_gg(XAbeta)
n=size(X2); %whitening the observed signal
zX=X-repmat(mean(X2)1n);
V=cov(zX‘)^(-1/2);
X=V*X;
I=eye(size(A)); %initializing W P
W=I;
P=I;
E=zeros(1n);
for i=1:n
v=X(:i);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 260044 2011-01-10 15:51 Ultimated Edition for Final Task(Matlab)\LMS1.wav
文件 260044 2011-01-10 15:51 Ultimated Edition for Final Task(Matlab)\LMS2.wav
文件 9013 2011-01-10 14:12 Ultimated Edition for Final Task(Matlab)\LMS方法仿真分离信号.fig
文件 260044 2011-01-10 15:51 Ultimated Edition for Final Task(Matlab)\mix1.wav
文件 260044 2011-01-10 15:51 Ultimated Edition for Final Task(Matlab)\mix2.wav
文件 260044 2011-01-10 15:51 Ultimated Edition for Final Task(Matlab)\RLS_gg1.wav
文件 260044 2011-01-10 15:51 Ultimated Edition for Final Task(Matlab)\RLS_gg2.wav
文件 260044 2011-01-10 15:51 Ultimated Edition for Final Task(Matlab)\RLS_ng1.wav
文件 260044 2011-01-10 15:51 Ultimated Edition for Final Task(Matlab)\RLS_ng2.wav
文件 4691 2011-01-10 14:08 Ultimated Edition for Final Task(Matlab)\simulation1.m
文件 262188 2011-01-08 19:30 Ultimated Edition for Final Task(Matlab)\voice1.wav
文件 262188 2011-01-08 19:30 Ultimated Edition for Final Task(Matlab)\voice2.wav
文件 5315 2011-01-10 16:40 Ultimated Edition for Final Task(Matlab)\voiceseparation.m
文件 7090916 2011-01-10 14:10 Ultimated Edition for Final Task(Matlab)\分离语音信号图.fig
文件 119677 2011-01-10 14:11 Ultimated Edition for Final Task(Matlab)\各方法串音误差曲线.fig
文件 8970 2011-01-10 14:13 Ultimated Edition for Final Task(Matlab)\普通梯度RLS算法仿真分离信号.fig
文件 9013 2011-01-10 14:12 Ultimated Edition for Final Task(Matlab)\自然梯度RLS算法仿真分离信号.fig
文件 2431432 2011-01-10 14:10 Ultimated Edition for Final Task(Matlab)\语音信号与混合信号图.fig
目录 0 2011-01-10 16:56 Ultimated Edition for Final Task(Matlab)
----------- --------- ---------- ----- ----
12283755 19
- 上一篇:酒店管理
- 下一篇:微信小程序“幸福家买房”线上
评论
共有 条评论