www.pudn.com > my_lms_1.rar > my_lms_1.m


%本程序只能对WAV格式的波形文件进行处理 
f=wavread('d:\111.wav');   %根据实际情况填入要被处理的文件的路径和文件名 
%可在 COMMAD 窗口输入help wavread 查看其功能描述  
a=size(f); 
u=0.002;      %收敛步长 
M=64;          %滤波器阶数 
N=a(1,1); 
X=zeros(M,1); 
W=zeros(M,1); 
out=zeros(N,1); 
i=1; 
while i<=N 
X(2:end)=X(1:end-1); 
X(1,1)=f(i,1); 
y=W'*X; 
e=X(1,1)-y; 
out(i,1)=y; 
W=W+u*e*X; 
i=i+1; 
end 
wavwrite(out,'d:\888.wav');     %滤波后的输出文件及其路径,你可以改成你喜欢的路径和文件名 
%可在 COMMAD 窗口输入help wavwrite 查看其功能描述 
subplot(2,1,1),plot(f,'b'),axis([0,N,-2,2]),title('Input Signal') 
subplot(2,1,2),plot(out,'r'),axis([0,N,-2,2]),title('Output Signal')