资源描述:
《matlab声音信号频谱分析的课程设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、原语音信号[y,fs,bits]=wavread('C:UsersAdministratorDesktop111.wav');>>sound(y,fs,bits);>>n=length(y)n=92611>>Y=fft(y,n);>>subplot(2,1,1);plot(y);>>subplot(2,1,2);plot(abs(Y));加噪声>>[y,fs,bits]=wavread('C:UsersAdministratorDesktop111.wav');>>sound(y,fs,bits);>>n=lengt
2、h(y)n=92611>>Noise=0.2*randn(n,2);>>s=y+Noise;>>sound(s)>>subplot(2,1,1);>>plot(s)>>S=fft(s);>>subplot(2,1,2);>>plot(abs(S))>>title('加噪语音信号的频谱波形')FIR低通滤波器fp=1000;fc=1200;As=100;Ap=1;fs=30000;>>wc=2*fc/fs;wp=2*fp/fs;>>N=ceil((As-7.95)/(14.36*(wc-wp)/2))+1;>>beta=0.1102*
3、(As-8.7);>>Win=Kaiser(N+1,beta);b=fir1(N,wc,Win);>>freqz(b,1,512,fs);>>s_low=filter(b,1,s);>>plot(s_low);title('信号经过低通滤波器的时域图')>>S_low=fft(s_low,n);>>plot(abs(S_low));title('信号经过低通滤波的频谱')>>sound(s_low,fs,bits)>>IIR低通滤波>>fp=1000;fc=1200;As=100;Ap=1;fs=30000;>>wc=2*fc/fs
4、;wp=2*fp/fs;>>[n,wn]=ellipord(wp,wc,Ap,As);>>[b,a]=ellip(n,Ap,As,wn);>>freqz(b,a,512,fs);>>t=filter(b,a,y);>>T=fft(t,n);>>subplot(2,1,1);plot(t)>>subplot(2,1,2);plot(abs(T));title('滤波后的频谱')>>sound(t,fs,bits)