1.自适应干扰抵消
1.1在鸟叫声chrip中混入高斯白噪声,用LMS算法提取纯净的鸟叫声信号:
% LMS自适应滤波器滤除chirp信号中的高斯白噪声
clear;
clc;
load('chirp','Fs','y');
s=y;
N=length(s);
var=1; % 高斯白噪声方差
n0=sqrt(var)*randn(N,1);%零均值,高斯白噪声
nfilt=fir1(3,0.5);
n1=filter(nfilt,1,n0);%接受到的噪声n1,与n0相关
d=s+n1;%接收到的语音信号,s被n1污染
% LMS自适应滤波
M=32;
step = 0.01; % LMS step size.
lk=1;
Hadapt=dsp.LMSFilter('Length',M,'StepSize',step);
[z,err,wts]=Hadapt(y,d);
subplot(3,1,1);plot(s);axis([1,N,-2,2]);title('原始语音信号');grid on;
subplot(3,1,2);plot(d);axis([1,N,-3,3]);title('观测到的信号');grid on;
subplot(3,1,3);plot(z);axis([1,N,-2,2]);title('恢复后的信号');grid on;
% sound(s,Fs); %接上外接设备就可以听到声音效果