音乐信号滤波去噪用凯塞窗设计的FIR滤波器文档格式.doc

上传人:b****3 文档编号:15414632 上传时间:2022-10-30 格式:DOC 页数:17 大小:344.50KB
下载 相关 举报
音乐信号滤波去噪用凯塞窗设计的FIR滤波器文档格式.doc_第1页
第1页 / 共17页
音乐信号滤波去噪用凯塞窗设计的FIR滤波器文档格式.doc_第2页
第2页 / 共17页
音乐信号滤波去噪用凯塞窗设计的FIR滤波器文档格式.doc_第3页
第3页 / 共17页
音乐信号滤波去噪用凯塞窗设计的FIR滤波器文档格式.doc_第4页
第4页 / 共17页
音乐信号滤波去噪用凯塞窗设计的FIR滤波器文档格式.doc_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

音乐信号滤波去噪用凯塞窗设计的FIR滤波器文档格式.doc

《音乐信号滤波去噪用凯塞窗设计的FIR滤波器文档格式.doc》由会员分享,可在线阅读,更多相关《音乐信号滤波去噪用凯塞窗设计的FIR滤波器文档格式.doc(17页珍藏版)》请在冰豆网上搜索。

音乐信号滤波去噪用凯塞窗设计的FIR滤波器文档格式.doc

数字滤波器的种类很多,但总的来说可以分成两大类,一类是经典滤波器,另一类可称为现代滤波器。

从滤波特性方面考虑,数字滤波器可分成数字高通、数字低通、数字带通和数字带阻等滤波器。

从实现方法上考虑,将滤波器分成两种,一种称为无限脉冲响应滤波器,简称IIR(InfiniteImpulseResponse)滤波器,另一种称为FIR(FiniteImpulseResponse)滤波器[1]。

设计FIR数字滤波器的方法有窗函数法、频率采样法和等波纹最佳逼近法等。

1.1课程设计目的

数字信号处理(DigitalSignalProcessing,简称DSP)是一门涉及许多学科而又广泛应用于许多领域的新兴学科。

20世纪60年代以来,随着计算机和信息技术的飞速发展,数字信号处理技术应运而生并得到迅速的发展。

在过去的二十多年时间里,数字信号处理已经在通信等领域得到极为广泛的应用。

数字信号处理是利用计算机或专用处理设备,以数字形式对信号进行采集、变换、滤波、估值、增强、压缩、识别等处理,以得到符合人们需要的信号形式。

在本次课程设计中,最主要的设计是设计FIR滤波器,FIR滤波器的设计方法主要分为两类:

第一类是基于逼近理想滤波器器特性的方法包括窗函数法、频率采样法、和等波纹最佳逼近法;

第二类是最优设计法。

本次的课程设计主要采用的是第一类设计方法,是利用汉宁窗函数法设计FIR滤波器对一段语音进行滤波去噪,通过这一过程,对滤波前后波形进行对比分析得到结论。

此课程设计比较简单,主要是将书本中的知识运用到现实中,并且根据自己对设计题目的理解,运用软件编写出程序实现这一设计,也是我们对数字信号处理的原理进行验证的一个过程。

对此,也可以加深我们对所学知识的理解,培养我们的动手能力。

1.2课程设计的要求

(1)通过利用各种不同的开发工具实现模拟信号数字化、信道编解码、基带数字信号编解码、数字信号的调制解调和语音信号的滤波去噪等课题,掌握数字信号的分析方法和处理方法。

(2)按要求编写课程设计报告书,能正确阐述设计和实验结果等等。

(3)通过课程设计培养学生严谨的科学态度,认真的工作作风和团队协作精神。

(4)在老师的指导下,要求每个学生独立完成课程设计的全部内容。

1.3设计平台

课程设计的主要设计平台式MATLAB7.0。

如下图1.1所示:

MATLAB是矩阵实验室(MatrixLaboratory)的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。

MATLAB和Mathematica、Maple并称为三大数学软件。

它在数学类科技应用软件中在数值计算方面首屈一指。

MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。

图1.1MATLAB7.0的设计平台

MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MathWork也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。

在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。

可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用[2]。

2设计原理

2.1FIR滤波器

FIR(FiniteImpulseResponse)滤波器:

有限长单位冲激响应滤波器,是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。

因此,FIR滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。

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

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

(2)系统函数H(z)在|z|>

0处收敛,极点全部在z=0处(因果系统);

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

FIR滤波器的系统函数用下式表示:

H(n)就是FIR滤波器的单位脉冲响应。

FIR滤波器最重要的优点就是由于不存在系统极点,FIR滤波器是绝对稳定的系统。

相较于IIR滤波器,FIR滤波器有以下的优点:

(1)可以很容易地设计线性相位的滤波器。

线性相位滤波器延时输入信号,却并不扭曲其相位。

(2)实现简单。

在大多数DSP处理器,只需要对一个指令积习循环就可以完成FIR计算。

(3)适合于多采样率转换,它包括抽取(降低采样率),插值(增加采样率)操作。

无论是抽取或者插值,运用FIR滤波器可以省去一些计算,提高计算效率。

相反,如果使用IIR滤波器,每个输出都要逐一计算,不能省略,即使输出要丢弃。

(4)具有理想的数字特性。

在实际中,所有的DSP滤波器必须用有限精度(有限bit数目)实现,而在IIR滤波器中使用有限精度会产生很大的问题,由于采用的是反馈电路,因此IIR通常用非常少的bit实现,设计者就能解决更少的与非理想算术有关的问题。

(5)可以用小数实现。

不像IIR滤波器,FIR滤波器通常可能用小于1的系数来实现。

(如果需要,FIR滤波器的总的增益可以在输出调整)。

当使用定点DSP的时候,这也是一个考虑因素,它能使得实现更加地简单。

FIR滤波器的缺点在于它的性能不如同样阶数的IIR滤波器,不过由于数字计算硬件的飞速发展,这一点已经不成为问题。

再加上引入计算机辅助设计,FIR滤波器的设计也得到极大的简化。

基于上述原因,FIR滤波器比IIR滤波器的应用更广。

2.2窗口设计法

窗函数设计法的基本思想是用FIRDF逼近洗完的滤波特性。

设希望逼近的滤波器的频率响应函数为,其单位脉冲响应为表示。

为了设计简单方便,通常选择为具有片段常数特性的理想滤波器。

因此是无限长非因果序列,不能直接作为FIRDF的单位脉冲响应。

窗函数设计法就是截取为有限长的一段因果序列,并用合适的窗函数进行加权作为FIRDF的单位脉冲响应h(n)。

用窗函数法设计FIRDF的具体设计步骤如下:

(1)构造希望逼近的频率响应函数。

(2)求出。

(3)加窗得到FIRDF的单位脉冲响应h(n)。

h(n)=w(n)。

式中,w(n)称为窗函数,其长度为。

如果要求设计第一类线性相位FIRDF,则要求h(n)关于(N-1)/2点偶对称。

而关于n=t点偶对称,所以要求t=(N-1)/2。

同时要求w(n)关于(N-1)/2点偶对称。

用窗函数法设计第一类线性相位FIRDF的步骤:

(1)选择窗函数类型和长度,写出才窗函数的表达式。

根据阻带最小衰减选择窗函数的的类型,再根据过渡带宽度确定所选窗函数的长度。

用窗函数法设计的FIRDF通带波纹幅度近似等于阻带波纹幅度。

一般阻带最小衰减达到40dB以上,则通带最大衰减就小于0.1dB。

所以用窗函数法设计FIRDF时,通常只考虑阻带最小衰减就可以了。

(2)构造希望逼近的频率响应函数。

根据设计需要,一般选择线性相位理想滤波器(理想低通、理想高通、理想带通、理想带阻)。

理想滤波器的截止频率近似为最终设计的FIRDF的过渡带中心频率,幅度函数衰减一半(约-6dB)。

所以一般取,和分别为通带边界频率和阻带边界频率。

(3)计算。

(4)加窗得到设计结果:

3设计步骤

3.1设计流程

用麦克风采集一段音乐将格式改为.wav

加入单频噪声

对语音信号进行频谱分析,画出时域和频域波形图

用汉宁窗设计FIR滤波器

画出其频率响应

用FIR滤波器对语音信号进行滤波

画出语音信号滤波前后波形并且进行比较分析

开始

结束

3.2采集音乐信号

在网络中找到自己想要的歌曲文件,并下载下来,即可对音乐文件进行文件格式转换及声音属性的变化。

在转换过程中,将音乐格式设置为wav格式,属性设置为4.410kHz,8位,单声道,128KB/秒,然后点击确定。

然后再点击文件/另存为,即可将该语音文件存在MATLAB文件下的work文件夹里。

然后在Matlab软件平台下,利用函数wavread对语音信号进行采样,记住采样频率和采样点数。

通过wavread函数的使用,让我们很快理解了采样频率、采样位数等概念。

采集完成后在信号中加入一个单频噪声。

对应程序如下:

[x,fs,bits]=wavread(‘yuntian.wav’);

%输入参数为文件的全路径和文件名(因为语音文件直接放在Matlab下的work文件夹里,所以直接使用文件名即可),输出的第一个参数是每个样本的值,fs是生成该波形文件时的采样率,bits是波形文件每样本的编码位数。

sound(x,fs,bits);

%按指定的采样率和每样本编码位数回放所录语音文件

N=length(x);

%计算信号x的长度

fn=1900;

%单频噪声频率,此参数可自己设计

t=0:

1/fs:

(N-1)/fs;

%计算时间范围,样本数除以采样频率

x=x’;

%将其转置

y=x+sin(fn*2*pi*t);

%在原信号上添加噪声

sound(y,fs,bits);

%应该可以明显听出有尖锐的单频啸叫声

3.3滤波器设计

在该滤波器的设计中,我们给出该滤波器的性能指标如下:

fpd=1800;

fsd=1850;

fsu=1950;

fpu=2000;

Rp=1;

As=40;

截止频率也可以任意自选,在单频噪声干扰附近即可。

在这里,很重要的是通带截止db值的设置。

这个值一定要根据我们使用的设计滤波器的方法来设定。

因为我使用的是凯塞窗法,凯塞窗函数中,滤波器的过渡带宽为15.4,最小阻带衰减为108db。

所以,一定要将通带截止db值设置的小于108,所以,我将其设置为100db。

在这里我是使用窗函数法设计上面要求的FIR滤波器。

在Matlab中,利用凯塞窗设计FIR滤波器,利用Matlab中的函数freqz画出该滤波器的频率响应。

首先,我们利用数字信号处理里面学过的知识,根据自己选定的参数,用指定的方法设计FIR滤波器,得到FIR滤波器的阶数M。

随后调用nuttallwin(M)函数产生M阶的凯塞窗。

然后,调用自编ideal_lp函数计算理想带阻滤波器的脉冲响应。

最后,再调用自编freqz_m(h_bs,1)函数即可计算得到该滤波器的频率特性。

我设计滤波器过程对应的程序如下:

fsd=1850;

fsu=1950;

fpu=2000;

R

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 营销活动策划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1