数字信号处理实验姓名:彭金金王春香学号:071041219071041223滤波器在语音信号中的应用一、实验目的:1、了解语音信号在MATLAB中的输入和输出;2、通过对语音信号的处理进一步了解滤波器的设计及应用
二、实验原理:1、滤波器设计调用fir1()函数生成有限长数字滤波器
2、采集语音信号在MATLAB软件平台下利用函数wavread对语音信号进行采样,得到声音数据变量x,同时把x的采样频率fs和数据位n放进MATLAB工作空间
[x,fs,n]=wavread('D:\mat\as
wav');语音信号输出指令为:sound(x,fs);然后对语音信号进行频谱分析:X=fft(x);3、加噪声x1=x+randn(size(x));三、实验内容:程序如下:[x,fs,n]=wavread('D:\mat\as
wav');t=0:0
0005:2;x1=x+randn(size(x));N=1:length(x);n1=0:400;M=64;subplot(3,1,1);plot(n1,x(3256+n1))title('原始信号x')subplot(3,1,2)plot(n1,x1(3256+n1))title('在原始信号上加噪声')Y=abs(fft(x1));G=abs(fft(x));df=fs/length(x);wn=[175285346445]/1000;b=fir1(M,wn);z=filter(b,length(x),x1);zk=abs(fft(z));subplot(3,1,3)plot(n1,z(3256+n1))title('滤波后的语音信号z')figure(2)n2=0:length(G)-1;n3=n2*df;subplot(3,1,1)plot(n3,G);title('原始信号频谱')subplot(3,1,2)plot(n