语音信号滤波去噪1

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

语音信号滤波去噪

——基于三角窗的FIR滤波器

学生姓名:指导老师:胡双红

摘要本课程设计主要内容是设计利用窗口设计法选择三角窗设计一个FIR 滤波器,对一段含噪语音信号进行滤波去噪处理并根据滤波前后的波形和频谱分析滤波性能。本课程设计仿真平台为MATLAB7.0,开发工具是M语言编程。首先利用系统自带的录音机工具录制一段语音信号,加入一单频噪声,对信号进行频谱分析以确定所加噪声频率,设计滤波器进行滤波去噪处理,比较滤波前后的波形和频谱并进行分析。由分析结果可知,滤波器后的语音信号与原始信号基本一致,即设计的FIR滤波器能够去除信号中所加单频噪声,达到了设计目的。

关键词MATLAB;滤波去噪;FIR滤波器;三角窗

1 引言

本课程设计主要解决在含噪情况下对语音信号的滤波去噪处理,处理时采用的是利用窗口设计法选择三角窗设计的FIR滤波器[1]。

1.1 课程设计目的

设计一个FIR滤波器,可以有多种方法,窗函数法是设计FIR数字滤波器的最简单的方法。它在设计FIR数字滤波器中有很重要的作用,正确地选择窗函数可以提高设计数字滤波器的性能,或者在满足设计要求的情况下,减小FIR数字滤波器的阶次。常用的窗函数有以下几种:矩形窗(Rectangular window)、三角窗(Triangular window)、汉宁窗(Hanning window)、汉明窗(Hamming window)、布拉克曼窗(Blackman window)等等。

在本次课程设计的目的是通过用麦克风采集一段语音信号,绘制波形并观察其频谱特点,加入一个带外单频噪声,用三角窗设计一个满足指标的FIR滤波器,对该含噪语音信号进行滤波去噪处理,从而达到对双音频信号滤波去噪的效果。比较滤波前后的波形和频谱并进行分析,根据结果和学过的理论得出合理的结论。与不同信源相同滤波方法的同学比较各种信源的特点,与相同信源不同滤波方法的同学比较各种滤波方法性能的优劣。

1.2课程设计的要求

(1)滤波器指标必须符合工程实际。

(2)设计完后应检查其频率响应曲线是否满足指标。

(3)处理结果和分析结论应该一致,而且应符合理论。

(4)独立完成课程设计并按要求编写课程设计报告书。

1.3 设计平台

MATLAB是矩阵实验室(Matrix Laboratory)的简称,是美国MathWorks 公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。 MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。MATLAB 和 Mathematica、 Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域[1]。

2设计原理

2.1FIR滤波器

FIR(Finite Impulse Response)滤波器又叫有限长单位冲激响应滤波器,

是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严

格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。因此,FIR滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。

目前,FIR滤波器的硬件实现有三种方式:数字集成电路FIR滤波器、可编

程FIR滤波器和DSP芯片FIR滤波器。数字集成电路FIR滤波器是使用单片通用

数字滤波器集成电路,这种电路使用简单,但是由于字长和阶数的规格较少,不

易完全满足实际需要。虽然可采用多片扩展来满足要求,但会增加体积和功耗,因而在实际应用中受到限制。DSP芯片FIR滤波器是使用DSP芯片。DSP芯片有

专用的数字信号处理函数可调用,实现FIR滤波器相对简单,但是由于程序顺序

执行,速度受到限制。而且,就是同一公司的不同系统的DSP芯片,其编程指令

也会有所不同,开发周期较长。可编程FIR滤波器是使用可编程逻辑器件,FPGA/CPLD。FPGA有着规整的内部逻辑块整列和丰富的连线资源,特别适合用于

细粒度和高并行度结构的FIR滤波器的实现,相对于串行运算主导的通用DS芯

片来说,并行性和可扩展性都更好。

有限长单位冲激响应(FIR)滤波器有以下特点:

(1) 系统的单位冲激响应h (n)在有限个n值处不为零

(2) 系统函数H(z)在|z|>0处收敛,极点全部在z = 0处(因果系统)

(3) 结构上主要是非递归结构,没有输出到输入的反馈,但有些结构中(例如频率抽样结构)也包含有反馈的递归部分。

设FIR滤波器的单位冲激响应h (n)为一个N点序列,0 ≤ n ≤N —1,则滤波

器的系统函数为:H(z)=∑h(n)*z^-n[2]。

FIR数字滤波器设计的基本步骤如下:

(1)确定技术指标

在设计一个滤波器之前,必须首先根据工程实际的需要确定滤波器的技术指标。在很多实际应用中,数字滤波器常被用来实现选频操作。因此,指标的形式一般在频域中给出幅度和相位响应。幅度指标主要以2种方式给出。第一种是绝对指标。他提供对幅度响应函数的要求,一般应用于FIR滤波器的设计。二种指标是相对指标。他以分贝值的形式给出要求。本文中滤波器的设计就以线性相位FIR滤波器的设计为例。

(2)逼近

确定了技术指标后,就可以建立一个目标的数字滤波器模型(通常采用理想的数字滤波器模型)。之后,利用数字滤波器的设计方法(窗函数法、频率采样法等),设计出一个实际滤波器模型来逼近给定的目标。

(3)性能分析和计算机仿真

上两步的结果是得到以差分或系统函数或冲激响应描述的滤波器。根据这个描述就可以分析其频率特性和相位特性,以验证设计结果是否满足指标要求。

2.2窗口设计法

FIR滤波器的设计方法有许多种,如窗函数设计法、频率采样设计法和最优化设计法等。窗函数设计法的基本原理是用一定宽度窗函数截取无限脉冲响应序列获得有限长的脉冲响应序列。

窗口法的优点是简单,有闭合的公式可用,性能及参数都有表格资料可查,计算程序简单,较为实用。缺点是当Hd(ejω)较为复杂时,hd(n)就不容易由反付里叶变换求得。边界频率因为加窗的影响而不易控制。

主要设计步骤为:

(1)通过傅里叶逆变换获得理想滤波器的单位脉冲响应hd(n)。

(n

h d(2-1)

)

(2)由性能指标确定窗函数W(n)和窗口长度N。

相关文档
最新文档