语音信号滤波去噪.doc
- 文档编号:2496949
- 上传时间:2022-10-30
- 格式:DOC
- 页数:15
- 大小:122.50KB
语音信号滤波去噪.doc
《语音信号滤波去噪.doc》由会员分享,可在线阅读,更多相关《语音信号滤波去噪.doc(15页珍藏版)》请在冰豆网上搜索。
沈阳航空航天大学综合课程设计
一、概述
本次课程设计的主要内容是利用窗口设计法设计频率采样型FIR滤波器并对加噪语音信号进行滤波去噪处理。
仿真平台为MATLAB7.7。
在课程设计中,首先利用Windows下的录音机工具录制一段格式为.wav的语音信号,然后在MATLAB中对语音信号进行加噪,并绘制原始语音信号和加噪语音信号的时域和频域波形,进行频谱分析以确定所加噪声频率,再利用BOHMAN窗设计FIR滤波器,并检测是否达到指标,最后使用滤波器对信号进行滤波去噪处理,并通过对比原始信号,加噪信号,滤波去噪信号的时域和频域波形,或回放语音信号,检测是否设计成功。
通过程序调试及完善,本课程设计滤波后的语音信号与原始语音信号基本一致,即设计的滤波器能够从含噪信号中滤除单频噪声,还原原始信号,达到了设计目的。
FIR滤波器相对于IIR滤波器具有易实现线性相位,系统总是稳定的,允许设计多通带(或多阻带)滤波器的优点,FIR滤波器主要有4种结构,直接型,级联型,线性相位型,频率采样型,与IIR结构相比,结构是相对简单的。
FIR系统滤波器的缺点在于它的性能不如同样阶数的IIR滤波器,不过由于数字计算硬件的飞速发展,这一点已经不成为问题。
再加上引入计算机辅助设计,FIR滤波器的设计也得到极大的简化。
FIR滤波器的设计方法有多种,如窗口设计法,频率采样法,最优等波纹设计法等。
随着MATLAB软件尤其是MATLAB的信号处理箱工具的不断完善,不仅数字滤波器的计算机辅助设计有了可能,而且还可以使设计达到最优化。
二、设计目的
熟悉Matlab语言环境,掌握Matlab语言的编程规则,熟悉Matlab工具软件的运用,学会用计算机采集语音信号,以及对语音信号进行时域和频域的分析;利用BOHMAN窗函数设计法来设计符合要求的FIR滤波器来实现语音信号的滤波去噪。
并绘制滤波前后的时域波形和频谱图。
根据图形分析判断滤波器设计的正确性。
通过本次课程设计熟悉利用BOHMAN窗函数法设计FIR滤波器的过程。
增强自己独立解决问题的能力,提高自己的动手能力。
加深对理论知识联系实际问题的理解。
为以后的工作奠定坚实的基础。
三、设计步骤
3.1设计流程图
语音信号滤波去噪——使用BOHMAN窗设计的频率采样型FIR滤波器的设计流程图如图1所示。
开始
录制一段格式为.wav的语音信号
对语音信号进行加噪
绘制加噪前后语音信号的时域和频域波形
使用BOHMAN窗设计FIR滤波器
绘制滤波器的频率响应
用滤波器对信号进行滤波
比较原始语音信号和滤波前后语音信号的波形及频谱
结束
图1使用BOHMAN窗设计的频率采样型FIR滤波器的设计流程图
从以上流程图可知本次课程设的步骤为:
首先录制一段格式为.wav的语音信号,然后在MATLAB中对语音信号加入噪声,并绘制原始语音信号和加噪语音信号的时域和频域波形图,进行频谱分析以确定所加噪声频率,再利用BOHMAN窗设计FIR滤波器,并检测是否达到指标,最后使用滤波器对信号进行滤波去噪处理,并通过对比原始信号,加噪信号,滤波去噪信号的时域和频域波形,或回放语音信号,检测是否设计成功。
经过程序调试及完善,本课程设计滤波后的语音信号应该与原始语音信号基本一致,即设计的滤波器能够从含噪信号中滤除单频噪声,还原出原始的语音信号。
3.2语音信号采集
通过点击计算机的开始/程序/附件/娱乐/录音机,打开Windows下的录音机工具,录制一段语音。
如图2所示,将文件保存然后在Matlab软件平台下,利用函数wavread对语音信号进行采样,记录采样频率和采样点数。
采集完成后在信号中加入一个频率为3700Hz的单频噪声。
图2录音机
开始将单频噪声fn设置为1000Hz,绘制出加噪前后语音信号的时域和频域波形后,发现语言信号的有效带宽从0Hz~2000Hz左右噪声处于语音信号的有效频带范围内,要滤除噪声就要设置一个带阻滤波器,带阻滤波器相对于低通滤波器来说较为复杂,经过多次调试后,将fn设置为3700Hz,所以本课程设计中滤波器设置为低通滤波器。
对原始语音信号加噪的程序如下:
[x,fs,bits]=wavread('G:
\yu1.wav');%输入参数为文件的全路径和文件名,输出的第一个参数是每个样本的值,fs是生成该波形文件时的采样率,bits是波形文件每样本的编码位数。
sound(x,fs,bits);%按指定的采样率和每样本编码位数回放
N=length(x);%计算信号x的长度
fn=3700;%单频噪声频率,此参数可改
t=0:
1/fs:
(N-1)/fs;%计算时间范围,样本数除以采样频率
x=x(:
1)';%将双声道转为单声道
y=x+0.1*sin(fn*2*pi*t);%加噪声
sound(y,fs,bits);%应该可以明显听出有尖锐的单频啸叫声
fs%输出采样频率
以上程序完成了对原始的语音信号加噪,然后再对语音信号进行快速傅里叶变换,得到信号的频谱特性,对应的程序如下:
X=abs(fft(x));Y=abs(fft(y));%对原始信号和加噪信号进行fft变换,取幅度谱
X=X(1:
N/2);Y=Y(1:
N/2);%截取前半部分
deltaf=fs/N;%计算频谱的谱线间隔
f=0:
deltaf:
fs/2-deltaf;%计算频谱频率范围
magX=abs(X);magY=abs(Y);
subplot(2,2,1);plot(t,x);axis([06-0.50.5]);
xlabel('时间(单位:
s)');ylabel('幅度');title('原始语音信号');gridon;
subplot(2,2,2);plot(f,magX);axis([040000150]);
xlabel('频率(单位:
Hz)');ylabel('幅度谱');title('语音信号幅度谱图');gridon;
subplot(2,2,3);plot(t,y);axis([06-0.50.5]);
xlabel('时间(单位:
s)');ylabel('幅度');title('加入单频干扰后的语音信号');gridon;
subplot(2,2,4);plot(f,magY);axis([040000150]);
xlabel('频率(单位:
Hz)');ylabel('幅度谱');title('加入干扰后的语音信号幅度谱图');gridon;
figure;
图3加噪前后语音信号的时域和频域波形
加噪前后语音信号的时域和频域波形如图3所示,可以从图中明显观察到,在时域波形图中,加噪后的语音信号明显被噪声遮盖了许多,在频域图中,在频率为3700Hz处,有一个尖脉冲,也就是噪声。
3.3滤波器的设计
FIR(FiniteImpulseResponse)滤波器:
有限长单位冲激响应滤波器,是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。
因此,FIR滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。
FIR滤波器相对于IIR滤波器具有易实现线性相位,系统总是稳定的,允许设计多通带(或多阻带)滤波器的优点,FIR滤波器主要有4种结构,直接型,级联型,线性相位型,频率采样型,与IIR结构相比,结构是相对简单的。
FIR系统滤波器的缺点在于它的性能不如同样阶数的IIR滤波器,不过由于数字计算硬件的飞速发展,这一点已经不成为问题。
再加上引入计算机辅助设计,FIR滤波器的设计也得到极大的简化。
FIR滤波器的设计方法有多种,如窗口设计法,频率采样法,最优等波纹设计法等。
随着MATLAB软件尤其是MATLAB的信号处理箱工具的不断完善,不仅数字滤波器的计算机辅助设计有了可能,而且还可以使设计达到最优化。
有限长单位冲激响应(FIR)滤波器有以下特点:
(1)系统的单位冲激响应h(n)在有限个n值处不为零
(2)系统函数H(z)在|z|>0处收敛,极点全部在z=0处(因果系统)
(3)结构上主要是非递归结构,没有输出到输入的反馈,但有些结构中(例如频率抽样结构)也包含有反馈的递归部分。
设FIR滤波器的单位冲激响应h(n)为一个N点序列,0≤n≤N—1,则滤波器的系统函数为
(1)
就是说,它有(N—1)阶极点在z=0处,有(N—1)个零点位于有限z平面的任何位置。
FIR滤波器的设计分三步完成:
(1)技术要求:
在设计滤波器之前,必须要有某些技术要求。
这些技术要求是由用途决定的。
(2)近似:
一旦技术要求确定之后,就要用已学过的各种概念和数学提供一种滤波器的表述,它接近于所给出的一组技术要求。
这一步是属于滤波器设计的范畴。
(3)实现:
上面一步的结果是一个滤波器的表述,它可能是一个差分方程的形式,或者是某一系统函数H(z),或者是某一脉冲响应h(n)。
依据这个表述要用硬件实现这个滤波器,或者在一台计算机上通过软件实现。
窗口设计的基本思想是要选取某一种合适的理想频率选择性滤波器(这种滤波器总是有一个非因果,无限长的脉冲响应),然后将它的脉冲响应截断(或加窗)以得到一个线性相位和因果的FIR滤波器。
因此,这种方法的重点在于选择某种恰当的窗函数和一种适合的理想滤波器。
现在用Hd(ejw)代表一理想频率选择性滤波器,它在整个通带内有单位幅度增益和线性相位特性,而阻带内具有零响应。
一理想带宽为wc<π的LPF由下式给出为
(2)
其中wc也称为截止频率,α称为样本延迟(注意,根据DTFT性质,e-jαw意味者在正n方向的位移或延迟)。
这个滤波器的脉冲响应具有无限长,对Hd(ejw)做傅里叶变换获得理想滤波器的单位脉冲响应hd(n)。
注意hd(n)是关于α对称的,这一点对线性相位FIR滤波器来说是有用的。
为了从hd(n)得到一个FIR滤波器必须在hd(n)两边将它截断。
为了得到一个长度为M的因果且线性相位FIR滤波器h(n),就必须有
(3)
这种运算称为“加窗”。
一般来说,h(n)可当作是由hd(n)和某一窗函数w(n)相乘而得到的。
其中
(4)
根据如何定义上面的w(n),可以得到不同的窗函数设计。
用窗口设计法设计FIR滤波器的主要设计步骤为:
(1)对Hd(ejw)做傅里叶变换获得理想滤波器的单位脉冲响应hd(n)。
(5)
(2)由性能指标确定窗函数w(n)和窗口长度N。
(3)求得实际滤波器的单位脉冲响应h(n)。
(6)
窗口设计法的基本思想:
对于给定的滤波器技术要求,选择滤波器长度M和具有最窄主瓣宽度和尽可能最小的旁瓣衰减的某个窗函数w(n)。
窗函数频谱中的主瓣宽度较窄,获得的过渡带较陡;旁瓣衰减越大,阻带的衰减越快。
本课程设采用BOHMAN窗,通过查阅资料和实际调试,BOHMAN窗的过渡带宽定为,最小阻带
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语音 信号 滤波