数字信号处理的课程设计——IIR数字滤波器冲激响应不变法设计
- 格式:doc
- 大小:14.40 MB
- 文档页数:19
课程设计任务书
语音信号的数字滤波
——IIR数字滤波器的冲激响应不变换法设计
设计题目:语音信号的数字滤波——IIR数字滤波器的冲激相应不变法设计
一.课程设计的目的:
通过对常用数字滤波器的设计和实现,掌握数字信号处理的工作原理及设计方法;掌握利用数字滤波器对信号进行滤波的方法。
并能够对设计结果加以分析。
二.设计步骤:
2.1.语音信号的采样录音:
利用windows对语音信号进行采集,按“开始->程序->附件->娱乐->录音机”的顺序操作打开Windows系统中的录音机软件,开始录音。
图1 利用Window打开录音机
(1)用麦克风录入自己的声音信号并保存成qiufang.wav文件;
(2)记录语音信号文件保存的文件名qiufang.wav, 格式为PCM格式,属性为语音信号的采样频率fs等于8000Hz,8位,单声道,7KB/秒的语音信号,语音信号的时间长度为4.66s。
2语音信号的频谱分析
(1)将上一步骤中保存下来的语音信号文件“qiufang.wav”复制到计算机装有Matlab软件的磁盘F中相应Matlab目录中的“work”文件夹中;
(2)双击桌面上Matlab软件的快捷图标,打开Matlab软件;
(3)在菜单栏中选择“File->new->M-File”或是点击快捷按钮,打开m文件编辑器;
(4)在m文件编辑器中输入相应的指令将自己的语音信号导入Matlab工作台。
图3 原信号频谱图
图4 语音信号的时间域波形图
X1=fft(x1); %对被处理语音信号x1求取FFT,其频谱赋值给数组X1
figure
plot(abs(X1)) %绘制被处理语音信号的FFT幅频特性运行得如图4所示波形,该波形为被处理的语音信号FFT幅频特性,从图中可以看出3bd截止频率fs为8000Hz,通带截止频率fh为1700Hz,阻带截止频率fc为3500Hz
根据公式wp=2πfh/fs ,wst=2πfc/fs,wc=1/2(wp+wst)分别计算出wp=0.425π,wst=0.875π,wc=0.65。
图5 被处理信号的幅频特性
2.3 迭加噪声
x2=awgn(x1,20,0); %在被处理信号x1上迭加20dB的噪声,并赋值给数组x2
wavwrite(x2,fs,'x2.wav') %将含噪声的信号x2输出为语音文件“x2.wav”figure
subplot(211)
plot(x2) %绘制叠加噪声语音信号的时间域波形
X2=fft(x2); %对叠加噪声信号x2求取FFT,其频谱赋值给数组X2
subplot(212)
plot(abs(X2)) %绘制叠加噪声语音信号的FFT 幅频特性
运行得到如图5所示的2个波形图,第一个为迭加20dB 的噪声语音信号的时间域波形x2,并将噪声的信号x2输出为语音文件“x 2.wav”,第二个为迭加噪声语音信号x2的FFT 幅频特性。
图6叠加噪声语音信号的时间域波形与幅频特性
2.4滤波器的设计
2.4.1 IIR 数字滤波器的设计思想
IIR 数字滤波器可用一个n 阶差分方程:
),
()()(k n y a r n x b n y k
r
-+-=
∑∑
或者用它的Z 与系统函数: ∑∑---=
k
k
r r z
a z
b Z H 1)(
∑=--=n i T s i z e TA z H i 111)( 定传输选择特性的数字信号处理装置,其输入、输出均为数字信号,数字滤波器实际上是用有限精度的算法实现一个线性时不变的时域离散系统。
2.4.3实验内容
设计一个Butterworth 滤波器,满足如下级数指标:
确定滤波器的参数
由频谱图可知:
通带截止频率 fh= 1700Hz ×1Hz/采样=1700 Hz
阻带截止频率 fc= 3500Hz ×1Hz/采样=3500 Hz
同时设通带最大衰减δ1=2dB
阻带最小衰减δ2=30dB
在本次设计中将要设计的滤波器的类型为的巴特沃思低通滤波器(LPF )。
由上面参数可以得出Ωp=2πf h =3400π rad/second
Ωst=2πf c =7000π rad/second
Ωc= 3636rad/second
则:
ωp=ΩpT =3400π/8000=0.425π rad/sample
ωst=ΩsT =6000π/8000=0.875π rad/sample
ωc=ΩcT =4000π/8000=0.65π rad/sample
确定滤波器的阶数为:
所以取N=4
则系统函数为
图7butterworth滤波器
画出模拟滤波器和数字滤波器的频率响应的幅频和相频特性曲线以及单位抽样响应h(n)和冲激响应h a(t)的图像
3 结果与分析
设计一个N阶的低通滤波器,加入已加噪声源,所得滤波前后的波形及频谱图如下:实验代码及代码运行结果如下:
x=wavread('qiufang.wav');
sound(x);
N=5;wc=0.65;
[b,a]=butter(N,wc);
X2=fft(x2);
X2
subplot(221);plot(x2);title('滤波前信号的波形');
subplot(222);plot(abs(X2));title('滤波前信号的频谱');
y=filter(b,a,x2);
Y=fft(y);
subplot(223);plot(y);title('IIR滤波后信号的波形');
subplot(224);plot(abs(Y));title('IIR滤波后信号的频谱');
图8滤波前后的波形及频谱
结果:时域波形对比,可以看出滤波后的波形关于时间轴对称更加明显了,而且其幅度相对原始用语音信号在许多地方变小了,这是由于滤波器把部分的语音滤波掉了。
频谱图的对比,0~3KHZ左右的频谱波形保持不变,高频处幅值几乎为0。
说明滤波器
确实是低通型的,同时通过声音的回放,可以听到滤波后的声音比原来声音更加纯净了,因此滤波器设计达到了预期效果。
3.1信噪比分析:
PS1=sum(x1.^2)/fs %原信号功率
PN1=(sum(x2.^2)-sum(x1.^2))/fs %噪声信号功率
PN2=(sum(y.^2)-sum(x1.^2))/(fs+N-1) %滤波后的噪声功率
PS2=sum(y.^2)/(fs+N-1) %滤波后的信号功率
计算滤波前后的信噪比,并进行比较,信噪比公式为SNR=10*lg(信号功率/噪声功率),sum(x1.^2)/fs得到原信号功率PS1=0.0358,(sum(x2.^2)-sum(x1.^2))/fs 得到噪声信号功率PN1=0.0105,则滤波前的信噪比为SNR1=10*Log10(PS1/PN1)=5.3269;sum(y.^2)/(fs+N-1)得到滤波后的信号功率PS2=0.0425,
(sum(y.^2)-sum(x1.^2))/(fs+N-1),得到滤波后的噪声功率PN2=0.0067,则滤波后的信噪比为为SNR2=10*Log10(PS2/PN2)=8.023。
经比较滤波前的信噪比小于滤波后的信噪比,表明此次滤波器设计成功。
soundview('x1.wav') %播放“x1.wav”声音文件
soundview('x2.wav') %播放“x2.wav”声音文件
soundview('y.wav') %播放“y.wav”声音文件运行得到如图10,图11,图12所示的声音文件,从听取声音文件以及经验可知,录制前的录制环境越安静,录制声音越大越清晰,得到的录制效果越好,加入噪声以后,声音有明显的噪声,听起来很不清晰,但是等到滤波后,滤波后的声音文件明显比加噪声信号清晰得多,但仍然没有原信号清晰,原因可能是滤波器的阶数不是很合适,3bd截止频率,通带截止频率,阻带截止频率的取值问题以及设备本身的问题等等造成滤波器滤除噪声得到的信号没有原信号清晰。
图10 原信号“x1.wav”声音文件
图11 原信号“x2.wav”声音文件
图12 原信号“y.wav”声音文件
4收获与体会
维持一周的课程设计即将结束了,回想起这期间的过程,还是有很多值得去认真总结的,可以说是受益匪浅吧!
经过这次的滤波器课程设计,让我有机会将自己学到的理论知识运用到实际中,提高了自己的动手能力和思维能力。
在课程设计中发现自己的不足,所以在今后。