www.pudn.com > yuyinxiaozao.rar > yuanshi.m


fs=22050;                  %语音信号采样频率为22050 
x1=wavread('E:\aecfes'); %读取语音信号的数据,赋给变量x1 
sound(x1,22050);           %播放语音信号 
y1=fft(x1,1024);           %对信号做1024点FFT变换 
f=fs*(0:511)/1024; 
figure(1) 
plot(x1)                   %做原始语音信号的时域图形 
title('原始语音信号'); 
xlabel('time n'); 
ylabel('fuzhi n'); 
figure(2) 
freqz(x1)                  %绘制原始语音信号的频率响应图 
title('频率响应图') 
figure(3) 
subplot(2,1,1); 
plot(abs(y1(1:512)))       %做原始语音信号的FFT频谱图 
title('原始语音信号FFT频谱') 
subplot(2,1,2); 
plot(f,abs(y1(1:512))); 
title('原始语音信号频谱') 
xlabel('Hz'); 
ylabel('fuzhi'); 
s=22050;  
x1=wavread('E:\aecfes'); 
sound(x1,22050); 
f=fs*(0:511)/1024; 
a=size(x1); 
t=0:1/22050:(a-1)/22050; %将所加噪声信号的点数调整到与原始信号相同 
Au=0.03;            
d=[Au*cos(2*pi*5000*t)]';    %噪声为5kHz的余弦信号 
x2=x1+d; 
sound(x2,22050);        %播放加噪声后的语音信号 
y2=fft(x2,1024); 
figure(1) 
plot(t,x2) 
title('加噪后的信号'); 
xlabel('time n'); 
ylabel('fuzhi n'); 
figure(2) 
subplot(2,1,1); 
plot(f,abs(y1(1:512))); 
title('原始语音信号频谱'); 
xlabel('Hz'); 
ylabel('fuzhi'); 
subplot(2,1,2); 
plot(f,abs(y2(1:512))); 
title('加噪后的信号频谱'); 
xlabel('Hz'); 
ylabel('fuzhi'); 
%窗函数法 
fs=22050; 
x1=wavread('E:\aecfes'); 
t=0:1/22050:(size(x1)-1)/22050; 
Au=0.03; 
d=[Au*cos(2*pi*5000*t)]'; 
x2=x1+d; 
wp=0.25*pi; 
ws=0.3*pi; 
wdelta=ws-wp; 
N=ceil(6.6*pi/wdelta);              %取整 
wn=(0.2+0.3)*pi/2; 
b=fir1(N,wn/pi,hamming(N+1));       %选择窗函数,并归一化截止频率 
figure(1) 
freqz(b,1,512) 
f2=filter(bz,az,x2) 
figure(2) 
subplot(2,1,1) 
plot(t,x2) 
title('滤波前的时域波形'); 
subplot(2,1,2) 
plot(t,f2); 
title('滤波后的时域波形'); 
sound(f2,22050);                    %播放滤波后的语音信号 
F0=fft(f2,1024); 
f=fs*(0:511)/1024; 
figure(3) 
y2=fft(x2,1024); 
subplot(2,1,1); 
plot(f,abs(y2(1:512))); 
title('滤波前的频谱') 
xlabel('Hz'); 
ylabel('fuzhi'); 
subplot(2,1,2) 
F2=plot(f,abs(F0(1:512))); 
title('滤波后的频谱') 
xlabel('Hz'); 
ylabel('fuzhi');