语音信号的数字滤波处理 下载本文

语音信号的数字滤波处理——巴特沃思、bartlett窗滤波器设计

一 绪论

1.1设计目的与要求

(1)掌握数字信号处理的基本概念,基本理论和基本方法。 (2)熟悉离散信号和系统的时域特性。 (3)掌握序列快速傅里叶变换方法。

(4)学会MATLAB的使用,掌握MATLAB的程序设计方法。 (5)掌握利用MATLAB对语音信号进行频谱分析。 (6)掌握滤波器的网络结构。

(7)掌握MATLAB设计IIR、FIR数字滤波器的方法和对信号进行滤波的方法。

1.2 设计内容

1.2.1预习题部分

(1)设计卷积运算的演示程序:

可输入任意两个序列x1(n)、x2(n),并指定x1(n)为自己的学号,本实验为x1(n)={2,0,0,8,8,4,2,5,0,1,1,0}。x2(n)的内容和长度自选。例如x2(n)={ 1, 2.43, 6.17,12.93,22.17,32.25,40.88, 45.87, 45.87, 40.88, 32.25,22.17, 12.93, 6.17, 2.43,1.0000}。

(2)编写程序演示采样定理(时域采样、频谱周期延拓),同时演示采样频率小于2fc时,产生的混叠效应: ① 对下面连续信号进行采样:

a为衰xa(t)?Ae?atsin(?0t)u(t),A?n,a??0?n2?,n?学号, A为幅度因子,减因子,?0为模拟角频率,其中n为学号(例如,王墨同学n=23)

② 要求输入采样频率fs(根据程序处理需要指定范围)后,在时域演示信号波形、采样脉冲及采样后信号;在频域演示不同采样频率下对应信号的频谱。 1.2.2设计题部分

(1)利用Windows下的录音机或其他软件,选择Windows系统的“叮······”(ding.wav),并对该信号进行采样;

第 1 页 共 56 页

语音信号的数字滤波处理——巴特沃思、bartlett窗滤波器设计

(2)语音信号的频谱分析,画出采样后语音信号的时域波形和频谱图;

(3)产生噪声信号加到语音信号中,得到被污染的语音信号,并回放语音信号; (4)污染信号的频谱分析,画出被污染的语音信号时域波形和频谱;

(5)根据有关的频谱特性,采用间接法设计IIR数字滤波器,并画出相应滤波器的幅频图(设计3个IIR滤波器)

a. 模拟滤波器类型:巴特沃思滤波器(低通、带通、高通) b.总体要求:MATLAB原程序+仿真波形+技术指标

(6)根据有关的频谱特性,采用直接法设计FIR数字滤波器,并画出相应滤波器的幅频图(设计3个FIR滤波器)

a. 滤波器类型:Bartlett窗(低通、带通、高通) b.总体要求:MATLAB原程序+仿真波形+技术指标+窗函数 (7)用自己设计的这些滤波器分别对被不同噪声污染的信号进行滤波; (8)分析得到信号的频谱,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化; (9)回放语音信号。

二 课程设计基本原理

2.1设计思路

(1)选择来自于D盘的“ding.wav”声音作为语音信号

(2)根据不同的滤波器选择不同的噪声信号加到语音信号中,得到被污染的语音信号。

(3)分别设计巴特沃思滤波器(低通、带通、高通)以及Bartlett窗滤波器(低通、带通、高通)对被污染的语音信号滤波,滤掉相应的噪音信号,得到符合要求的语音信号。

方案设计流程图如图2.1所示。(图为巴特沃思滤波器,Bartlett窗滤波器与巴特沃思类似)

第 2 页 共 56 页

语音信号的数字滤波处理——巴特沃思、bartlett窗滤波器设计

图2.1 总体方案设计流程图(巴特沃思)

2.2 设计原理

语音信号的频谱范围主要为800HZ左右,并且在5000HZ左右有一个小信号,因此,在设计低通滤波器时,应把噪声频谱设定在5000HZ以上,这样,通过低通滤波器,即可滤除噪声信号从而还原语音信号;在设计高通滤波器时,应把噪声设定在800HZ以内,以通过高通滤波器滤除低频的噪声信号,从而还原相对频率较高的语音信号;在设计带通滤波器时,可把噪声设计在低于800HZ或高于5000HZ的频谱上,已通过带通滤波器还原带通范围内的语音信号。 2.2.1设计IIR数字滤波器的基本思想

设计IIR数字滤波器的方法主要有基于冲激响应不变法的IIR数字滤波器设计,基于双线性Z变换法的IIR数字滤波器设计,数字高通、带通及带阻IIR滤波器设计,基于MATLAB函数直接设计IIR数字滤波器。本实验中采用双线性变换法变换的巴特沃思数字滤波器。 2.2.1.1巴特沃思低通数字滤波器

(1)选择来自于D盘的“ding.wav”声音作为语音信号(用如下语句调用

第 3 页 共 56 页

语音信号的数字滤波处理——巴特沃思、bartlett窗滤波器设计

[x,FS,bits]=wavread('D:\\ding.wav'))。

(2)给信号加一个大频率的噪声(取噪声频率远大于语音信号的最大频率),产生污染信号。

(3)设计一个巴特沃思低通滤波器,通带范围包括语音信号,阻带频率设定为小于噪声信号频率。

(4)将设计好的巴特沃思低通滤波器滤除被噪声污染后的语音信号。还原语音信号。

2.2.1.2巴特沃思高通数字滤波器

(1)选择来自于D盘的“ding.wav”声音作为语音信号(用如下语句调用[x,FS,bits]=wavread('D:\\ding.wav'))。

(2)给信号加一个小频率的噪声(取噪声频率远小于语音信号的最小频率),产生污染信号。

(3)设计一个巴特沃思高通滤波器,通带范围包括语音信号,阻带频率设定为大于噪声信号频率。

(4)将设计好的巴特沃思低通滤波器滤除被噪声污染后的语音信号。还原语音信号。

2.2.1.3巴特沃思带通数字滤波器

(1)选择来自于D盘的“ding.wav”声音作为语音信号(用如下语句调用[x,FS,bits]=wavread('D:\\ding.wav'))。

(2)给信号加一个小频率或大频率的噪声(取噪声频率远小于语音信号的最小频率或大于语音信号的最大频率),产生污染信号。本实验取小频率的噪声信号。

(3)设计一个巴特沃思带通滤波器,通带范围包括语音信号,阻带频率设定为不包括噪声信号频率。

(4)将设计好的巴特沃思带通滤波器滤除被噪声污染后的语音信号。还原语音信号。

2.2.2设计FIR滤波器的基本思想

FIR滤波器通常采用窗函数方法来设计。正确地选择窗函数可以提高设计数字滤波器的性能,或者在满足设计要求的情况下,减小FIR数字滤波器的阶次。

第 4 页 共 56 页