




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于MATLAB的数字滤波器设计及其对语音信号的应用 学院:电子与信息工程学院 班级:电信1002 姓名: 学号:1010930220 指导教师: 2013-12-2 1课程设计的目的22课程设计内容23课程设计基础24.具体步骤与要求24.1语音信号的采集24.2语音信号的频谱分析24.3设计数字滤波器,画出其频率响应曲线34.4用滤波器对信号进行滤波,比较滤波前后语音信号的波形及频谱64.5 回放语音信号115.实验结论11 111课程设计的目的1)掌握数字信号处理的基本概念、基本理论和基本方法; 2)掌握MATLAB设计FIR和IIR数字滤波器的方法; 3)掌握在Windows环境下语音
2、信号采集以及时域、频域分析;4)学会MATLAB的使用,掌握MATLAB的程序设计方法;5)学会用MATLAB对信号进行分析和处理。2课程设计内容录制一段自己的语音信号,对录制的信号进行采样;画出采样后语音信号的时域波形和频谱图;给定滤波器的性能指标,采用MATLAB设计数字滤波器,并画出滤波器的频率响应;然后用自己设计的滤波器对采集的信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化;回放语音信号。3课程设计基础MATLAB编程基础、数字信号处理知识、语音信号处理知识。4.具体步骤与要求4.1语音信号的采集录制一段自己的话音,或利用老师给的语音,在MAT
3、LAB软件平台下,利用函数wavread对语音信号进行采样,记住采样频率和采样点数。程序:I,Fs,bits=wavread('2.wav');%读取语音信号2.wavsound(I); %重放语音wavrecord(2*Fs,Fs); %使用基于PC的音频输入设备4.2语音信号的频谱分析要求画出语音信号的时域波形;然后对语音号进行快速傅里叶变换,得到信号的频谱特性。程序:clear allI,Fs,bits=wavread('3.wav');%读取语音信号3.wavsound(I); %重放语音Y=fft(I); %进行快速傅里叶变换mag=abs(Y); %
4、求取幅度谱 phase=angle(Y); %求取相位谱phase=phase*180/pi; %转换为Pi单位dB=20*log10(abs(Y)+eps); %求取对数幅度谱t=(0:length(I)-1)/Fs; %设置标度subplot(221);plot(t,I);title('波形图');xlabel('时间(s)');ylabel('幅度');%设置标题和横纵坐标f=(1:length(Y)*Fs/length(Y); %设置标度subplot(222);plot(f,mag);title('幅度谱');xlabe
5、l('频率(Hz)');ylabel('频谱幅度');%设置标题和横纵坐标subplot(223);plot(f,phase);title('相位谱');xlabel('频率(Hz)');ylabel('频谱相位');%设置标题和横纵坐标subplot(224);plot(f,dB);title('对数幅度谱');xlabel('频率(Hz)');ylabel('频谱幅度(dB)');%设置标题和横纵坐标 图2 时域波形和信号的频谱特性4.3设计数字滤波器,画出其频率
6、响应曲线各滤波器的性能指标:(1)低通滤波器性能指标fp1000Hz, fs1200Hz, As40dB, Ap1dB。(2)高通滤波器性能指标fs4000Hz, fp4300Hz, As40dB, Ap1dB(3)带通滤波器性能指标fp11200 Hz, fp23 000 Hz, fs11000 Hz, fs23200 Hz, As40dB, Ap1dB。要求:(1) 频率变换法设计IIR滤波器: 可以利用函数butter、cheby1、cheby2和ellip等设计。(2) (选做)设计IIR滤波器:用双线性变换法设计上面要求的3种滤波器。bilinear(3) (选做)设计FIR滤波器:
7、用窗函数法设计上面要求的3种滤波器。可以利用函数fir1设计FIR滤波器。(4) 采用函数freqz画出各滤波器的频率响应。程序:%LPF设计fpL=1000; %通带频率HzfsL=1200; %阻带频率HzapL=1; %通带纹波DBasL=40; %阻带衰减DBWpL = fpL*2/Fs; %通带角频率radWsL = fsL*2/Fs; %阻带角频率rad%巴特沃斯低通滤波器nL,WnL = buttord(WpL,WsL,apL,asL); %求得n和Wn,n是最小阶数,Wn是截止频率bL,aL = butter(nL,WnL,'low'); %低通滤波器传递函数系
8、数hL,wL=freqz(bL,aL); title('巴特沃斯低通滤波器')%cheby1低通滤波器n1L,Wn1L = cheb1ord(WpL,WsL,apL,asL); %求得n和Wn,n是最小阶数,Wn是截止频率b1L,a1L = cheby1(n1L,apL,Wn1L,'low'); %低通滤波器传递函数系数h1L,w1L=freqz(b1L,a1L); title('cheby1低通滤波器')%cheby2低通滤波器n2L,Wn2L = cheb2ord(WpL,WsL,apL,asL); %求得n和Wn,n是最小阶数,Wn是截止频
9、率b2L,a2L = cheby2(n2L,apL,Wn2L,'low'); %低通滤波器传递函数系数h2L,w2L=freqz(b2L,a2L); title('cheby2低通滤波器')%椭圆低通滤波器n3L,Wn3L = ellipord(WpL,WsL,apL,asL); %求得n和Wn,n是最小阶数,Wn是截止频率b3L,a3L = ellip(n3L,apL,asL,Wn3L,'low'); %低通滤波器传递函数系数h3L,w3L=freqz(b3L,a3L); title('椭圆低通 % HPF设计fpH=4300; %通带
10、频率HzfsH=4000; %阻带频率HzapH=1; %通带纹波DBasH=40; %阻带衰减DBWpH = fpH*2/Fs; %通带角频率radWsH = fsH*2/Fs; %通带角频率rad%巴特沃斯高通滤波器nH,WnH = buttord(WpH,WsH,apH,asH); %求得n和Wn,n是最小阶数,Wn是截止频率bH,aH = butter(nH,WnH,'high'); %低通滤波器传递函数系数hH,wH=freqz(bH,aH); title('巴特沃斯高通滤波器')%cheby1高通滤波器n1H,Wn1H = cheb1ord(WpH,
11、WsH,apH,asH); %求得n和Wn,n是最小阶数,Wn是截止频率b1H,a1H = cheby1(n1H,apH,Wn1H,'high'); %低通滤波器传递函数系数h1H,w1H=freqz(b1H,a1H); title('cheby1高通滤波器')%cheby2高通滤波器n2H,Wn2H = cheb2ord(WpH,WsH,apH,asH); %求得n和Wn,n是最小阶数,Wn是截止频率b2H,a2H = cheby2(n2H,apH,Wn2H,'high'); %低通滤波器传递函数系数h2H,w2H=freqz(b2H,a2H)
12、; title('cheby2高通滤波器')%椭圆高通滤波器n3H,Wn3H = ellipord(WpH,WsH,apH,asH); %求得n和Wn,n是最小阶数,Wn是截止频率b3H,a3H = ellip(n3H,apH,asH,Wn3H,'high'); %低通滤波器传递函数系数h3H,w3H=freqz(b3H,a3H); title('椭圆高通滤波器')%BPF设计fp1=1200; %通带截止频率fp2=3000; %通带截止频率fpB=1200 3000; %通带频率fs1=1000; %阻带截止频率fs2=3200; %阻带截止
13、频率fsB=1000 3200; %阻带频率apB=1; %通带纹波asB=40; %阻带衰减WpB = fpB*2/Fs; %通带角频率radWsB = fsB*2/Fs; %通带角频率rad%巴特沃斯高通滤波器nB,WnB = buttord(WpB,WsB,apB,asB); %求得n和Wn,n是最小阶数,Wn是截止频率bB,aB = butter(nB,WnB); %低通滤波器传递函数系数hB,wB=freqz(bB,aB); title('巴特沃斯带通滤波器')%cheby1高通滤波器n1B,Wn1B = cheb1ord(WpB,WsB,apB,asB); %求得n
14、和Wn,n是最小阶数,Wn是截止频率b1B,a1B = cheby1(n1B,apB,Wn1B'); %低通滤波器传递函数系数h1B,w1B=freqz(b1B,a1B); title('cheby1带通滤波器')%cheby2高通滤波器n2B,Wn2B = cheb2ord(WpB,WsB,apB,asB); %求得n和Wn,n是最小阶数,Wn是截止频率b2B,a2B = cheby2(n2B,apB,Wn2B); %低通滤波器传递函数系数h2B,w2B=freqz(b2B,a2B); title('cheby2带通滤波器')%椭圆高通滤波器n3B,W
15、n3B = ellipord(WpB,WsB,apB,asB); %求得n和Wn,n是最小阶数,Wn是截止频率b3B,a3B = ellip(n3B,apB,asB,Wn3B); %低通滤波器传递函数系数% figure(10)h3B,w3B=freqz(b3B,a3B); title('椭圆带通滤波器')4.4用滤波器对信号进行滤波,比较滤波前后语音信号的波形及频谱要求用自己设计的各滤波器分别对采集的语音信号进行滤波,并在一个窗口同时画出滤波前后的波形及频谱。(1) IIR滤波器利用函数filter对信号进行滤波;(2) FIR滤波器利用函数fftfilt对信号进行滤波。%
16、LPF滤波且进行频谱变换%IIR低通滤波IIRyL = filter(bL,aL,x); %语音信号通过butter低通滤波器IIRy1L = filter(b1L,a1L,x); %语音信号通过cheby1低通滤波器IIRy2L = filter(b2L,a2L,x); %语音信号通过cheby2低通滤波器IIRy3L = filter(b3L,a3L,x); %语音信号通过ellip低通滤波器%FIR低通滤波FIRyL = fftfilt(bL,x); %语音信号通过butter低通滤波器FIRy1L = fftfilt(b1L,x); %语音信号通过cheby1低通滤波器FIRy2L =
17、 fftfilt(b2L,x); %语音信号通过cheby2低通滤波器FIRy3L = fftfilt(b3L,x); %语音信号通过ellip低通滤波器%IIR低通滤波后FFTFFTIIRyL = fft(IIRyL); %语音信号通过butter低通滤波器后FFTFFTIIRy1L = fft(IIRy1L); %语音信号通过cheby1低通滤波器后FFTFFTIIRy2L = fft(IIRy2L); %语音信号通过cheby2低通滤波器后FFTFFTIIRy3L = fft(IIRy3L); %语音信号通过ellip低通滤波器后FFT%FIR低通滤波后FFTFFTFIRyL = fft
18、(FIRyL); %语音信号通过butter低通滤波器后FFTFFTFIRy1L = fft(FIRy1L); %语音信号通过cheby1低通滤波器后FFTFFTFIRy2L = fft(FIRy2L); %语音信号通过cheby2低通滤波器后FFTFFTFIRy3L = fft(FIRy3L); %语音信号通过ellip低通滤波器后FFT% 绘制原始语音、IIR、FIR低通滤波后语音波形、及滤波后频谱图 figure(3)subplot(6,4,1),plot(x),title('原始语音信号');subplot(6,4,2),plot(x),title('原始语音信
19、号');subplot(6,4,3),plot(x),title('原始语音信号');subplot(6,4,4),plot(x),title('原始语音信号');subplot(6,4,5),plot(IIRyL),title('butter-IIR-LPF');subplot(6,4,6),plot(IIRy1L),title('cheby1-IIR-LPF');subplot(6,4,7),plot(IIRy2L),title('cheby2-IIR-LPF');subplot(6,4,8),plot
20、(IIRy3L),title('ellip-IIR-LPF');subplot(6,4,9),plot(FFTIIRyL),title('butter-IIR-FFT');subplot(6,4,10),plot(FFTIIRy1L),title('cheby1-IIR-FFT');subplot(6,4,11),plot(FFTIIRy2L),title('cheby2-IIR-FFT');subplot(6,4,12),plot(FFTIIRy3L),title('ellip-IIR-FFT');subplot
21、(6,4,13),plot(FIRyL),title('butter-FIR-LPF');subplot(6,4,14),plot(FIRy1L),title('cheby1-FIR-LPF');subplot(6,4,15),plot(FIRy2L),title('cheby2-FIR-LPF');subplot(6,4,16),plot(FIRy3L),title('ellip-FIR-LPF');subplot(6,4,17),plot(FFTFIRyL),title('butter-FIR-FFT');su
22、bplot(6,4,18),plot(FFTFIRy1L),title('cheby1-FIR-FFT');subplot(6,4,19),plot(FFTFIRy2L),title('cheby2-FIR-FFT');subplot(6,4,20),plot(FFTFIRy3L),title('ellip-FIR-FFT');subplot(6,4,21),plot(wL*Fs/(2*pi),abs(hL),title('butter-LPF');subplot(6,4,22),plot(w1L*Fs/(2*pi),abs(h1
23、L),title('cheby1-LPF');subplot(6,4,23),plot(w2L*Fs/(2*pi),abs(h2L),title('cheby2-LPF');subplot(6,4,24),plot(w3L*Fs/(2*pi),abs(h3L),title('ellip-LPF');原始语音、IIR、FIR低通滤波后语音波形、及滤波后频谱图如下:HPF滤波且进行频谱变换%IIR高通滤波IIRyH = filter(bH,aH,x); %语音信号通过低通滤波器IIRy1H = filter(b1H,a1H,x); %语音信号通过低通
24、滤波器IIRy2H = filter(b2H,a2H,x); %语音信号通过低通滤波器IIRy3H = filter(b3H,a3H,x); %语音信号通过低通滤波器%FIR高通滤波FIRyH = fftfilt(bH,x); %语音信号通过低通滤波器FIRy1H = fftfilt(b1H,x); %语音信号通过低通滤波器FIRy2H = fftfilt(b2H,x); %语音信号通过低通滤波器FIRy3H = fftfilt(b3H,x); %语音信号通过低通滤波器%IIR高通滤波后FFTFFTIIRyH = fft(IIRyH); %语音信号通过butter低通滤波器后FFTFFTIIR
25、y1H = fft(IIRy1H); %语音信号通过cheby1低通滤波器后FFTFFTIIRy2H = fft(IIRy2H); %语音信号通过cheby2低通滤波器后FFTFFTIIRy3H = fft(IIRy3H); %语音信号通过ellip低通滤波器后FFT%FIR高通滤波后FFTFFTFIRyH = fft(FIRyH); %语音信号通过butter低通滤波器后FFTFFTFIRy1H = fft(FIRy1H); %语音信号通过cheby1低通滤波器后FFTFFTFIRy2H = fft(FIRy2H); %语音信号通过cheby2低通滤波器后FFTFFTFIRy3H = fft
26、(FIRy3H); %语音信号通过ellip低通滤波器后FFT% 绘制原始语音、IIR、FIR高通滤波后语音波形、及滤波后频谱图 figure(4)subplot(5,4,1),plot(x),title('原始语音信号');subplot(5,4,2),plot(x),title('原始语音信号');subplot(5,4,3),plot(x),title('原始语音信号');subplot(5,4,4),plot(x),title('原始语音信号');subplot(5,4,5),plot(IIRyH),title('
27、butter-IIR-HPF');subplot(5,4,6),plot(IIRy1H),title('cheby1-IIR-HPF');subplot(5,4,7),plot(IIRy2H),title('cheby2-IIR-HPF');subplot(5,4,8),plot(IIRy3H),title('ellip-IIR-HPF');subplot(5,4,9),plot(FFTIIRyH),title('butter-IIR-FFT');subplot(5,4,10),plot(FFTIIRy1H),title(
28、'cheby1-IIR-FFT');subplot(5,4,11),plot(FFTIIRy2H),title('cheby2-IIR-FFT');subplot(5,4,12),plot(FFTIIRy3H),title('ellip-IIR-FFT');subplot(5,4,13),plot(FIRyH),title('butter-FIR-LPF');subplot(5,4,14),plot(FIRy1H),title('cheby1-FIR-LPF');subplot(5,4,15),plot(FIRy2
29、H),title('cheby2-FIR-LPF');subplot(5,4,16),plot(FIRy3H),title('ellip-FIR-LPF');subplot(5,4,17),plot(FFTFIRyH),title('butter-FIR-FFT');subplot(5,4,18),plot(FFTFIRy1H),title('cheby1-FIR-FFT');subplot(5,4,19),plot(FFTFIRy2H),title('cheby2-FIR-FFT');subplot(5,4,20
30、),plot(FFTFIRy3H),title('ellip-FIR-FFT');subplot(6,4,21),plot(wH*Fs/(2*pi),abs(hH),title('butter-HPF');subplot(6,4,22),plot(w1H*Fs/(2*pi),abs(h1H),title('cheby1-HPF');subplot(6,4,23),plot(w2H*Fs/(2*pi),abs(h2H),title('cheby2-HPF');subplot(6,4,24),plot(w3H*Fs/(2*pi),ab
31、s(h3H),title('ellip-HPF'); BPF滤波且进行频谱变换%IIR低通滤波IIRyB = filter(bB,aB,x); %语音信号通过butter低通滤波器IIRy1B = filter(b1B,a1B,x); %语音信号通过cheby1低通滤波器IIRy2B = filter(b2B,a2B,x); %语音信号通过cheby2低通滤波器IIRy3B = filter(b3B,a3B,x); %语音信号通过ellip低通滤波器%FIR低通滤波FIRyB = fftfilt(bB,x); %语音信号通过butter低通滤波器FIRy1B = fftfilt
32、(b1B,x); %语音信号通过cheby1低通滤波器FIRy2B = fftfilt(b2B,x); %语音信号通过cheby2低通滤波器FIRy3B = fftfilt(b3B,x); %语音信号通过ellip低通滤波器%IIR低通滤波后FFTFFTIIRyB = fft(IIRyB); %语音信号通过butter低通滤波器后FFTFFTIIRy1B = fft(IIRy1B); %语音信号通过cheby1低通滤波器后FFTFFTIIRy2B = fft(IIRy2B); %语音信号通过cheby2低通滤波器后FFTFFTIIRy3B = fft(IIRy3B); %语音信号通过ellip
33、低通滤波器后FFT%FIR低通滤波后FFTFFTFIRyB = fft(FIRyB); %语音信号通过butter低通滤波器后FFTFFTFIRy1B = fft(FIRy1B); %语音信号通过cheby1低通滤波器后FFTFFTFIRy2B = fft(FIRy2B); %语音信号通过cheby2低通滤波器后FFTFFTFIRy3B = fft(FIRy3B); %语音信号通过ellip低通滤波器后FFT%绘制原始语音、IIR、FIR带通滤波后语音波形、及滤波后频谱图 figure(5)subplot(6,4,1),plot(x),title('原始语音信号');subpl
34、ot(6,4,2),plot(x),title('原始语音信号');subplot(6,4,3),plot(x),title('原始语音信号');subplot(6,4,4),plot(x),title('原始语音信号');subplot(6,4,5),plot(IIRyB),title('butter-IIR-BPF');subplot(6,4,6),plot(IIRy1B),title('cheby1-IIR-BPF');subplot(6,4,7),plot(IIRy2B),title('cheby2
35、-IIR-BPF');subplot(6,4,8),plot(IIRy3B),title('ellip-IIR-BPF');subplot(6,4,9),plot(FFTIIRyB),title('butter-IIR-FFT');subplot(6,4,10),plot(FFTIIRy1B),title('cheby1-IIR-FFT');subplot(6,4,11),plot(FFTIIRy2B),title('cheby2-IIR-FFT');subplot(6,4,12),plot(FFTIIRy3B),titl
36、e('ellip-IIR-FFT');subplot(6,4,13),plot(FIRyB),title('butter-FIR-BPF');subplot(6,4,14),plot(FIRy1B),title('cheby1-FIR-BPF');subplot(6,4,15),plot(FIRy2B),title('cheby2-FIR-BPF');subplot(6,4,16),plot(FIRy3B),title('ellip-FIR-BPF');subplot(6,4,17),plot(FFTFIRyB),
37、title('butter-FIR-FFT');subplot(6,4,18),plot(FFTFIRy1B),title('cheby1-FIR-FFT');subplot(6,4,19),plot(FFTFIRy2B),title('cheby2-FIR-FFT');subplot(6,4,20),plot(FFTFIRy3B),title('ellip-FIR-FFT');subplot(6,4,21),plot(wB*Fs/(2*pi),abs(hB),title('butter-BPF');subplot(6,4,22),plot(w1B*Fs/(2*pi),abs(h1B),title('cheby1-BPF');subplot(6,4,23),plot(w2B*Fs/(2*pi),abs(h2B),title('cheby2-BPF');subplot(6,4,24),plot(w3B*Fs/(2*pi),abs(h3B),title('ellip-BPF');原始语音、IIR、FIR带通滤波后语音波形、及滤波后频谱图如下:4.5 回放语音信号在MATLAB中,函数sound可以对
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025短租租赁合同:教育培训场地租赁协议
- 2025年典当合同范本:汽车典当贷款操作细则
- 2025年轨道交通信号电缆项目采购合同
- 2025店长聘用协议:商业地产店长岗位竞聘标准
- 2025年度水利工程水泵安装与防冻合同
- 2025年康复医疗服务体系优化与运营模式创新策略研究报告
- 2025年度图书馆图书采购与读者服务合同
- 2025版企业办公设备维修与保养服务合同
- 2025年新能源汽车专用停车位买卖合同
- 2025版闲置土地居间服务合同
- T/CIE 168-2023企业级固态硬盘测试规范第4部分:兼容性测试
- 小区施工押金协议书
- 企业法律合规培训课件
- (2025)义务教育英语课程标准(2025年版)测试题含答案
- 多高层木结构建筑技术标准
- (高清版)DB33∕T 386-2013 内河航道工程质量检验规范
- 蒸汽管道试压作业方案
- 《餐饮食堂厨房消防安全》知识培训
- 质量控制在银行业中的应用
- 热射病的护理诊断和措施
- 三年级科学教材培训心得
评论
0/150
提交评论