语音信号的FIR滤波器处理课程设计

合集下载

语音信号的数字滤波——FIR数字带通滤波器的(三角)窗函数法设计

语音信号的数字滤波——FIR数字带通滤波器的(三角)窗函数法设计

课程设计任务书设计题目语音信号的数字滤波——FIR数字带通滤波器的(三角)窗函数法设计一、课程设计的目的通过对常用数字滤波器的设计和实现,掌握数字信号处理的工作原理及设计方法;掌握利用数字滤波器对信号进行滤波的方法。

并能够对设计结果加以分析。

二、课程设计的步骤利用Windows系统采集:按“开始->程序->附件->娱乐->录音机”的顺序操作打开Windows系统中的录音机软件图1录音机采集语音信号信息:(将所录wma格式转换为wav格式)图上画出来图2原始信号频谱图图3 截短信号频谱图代码如下所示:[x,fs]=wavread('250.wav');x1=x(:,1);plot (x1, 'DisplayName', 'x1', 'YDataSource', 'x1'); figure(gcf)x2=x(9500:67201);plot (x2, 'DisplayName', 'x2', 'YDataSource', 'x2');figure(gcf)处理(1)产生一个长度与你所截取的语音信号等长的噪声信号,为“250.wav”,所用指令为wavewrite(),所加噪声如图6所示。

(2)叠加噪声可以用awgn()语句,在叠加噪声时,应选取适当的值,尽量能体现出能量主要集中的频段。

(3)将语音与噪声合成的信号“250.wav”送入所设计的基于凯泽窗的FIR数字滤波器中进行滤波。

(4)将滤波结果导出保存成文件“250.wav”.得出加噪后信号如下:图4 加噪后的语音信号代码如下所示:Y = AWGN(x2,8,'measured');一个理想的带通滤波器应该有一个完全平坦的通带,在通带内没有放大或者衰减,有源带通滤波器电路并且在通带之外所有频率都被完全衰减掉,另外,通带外的转换在极小的频率范围完成。

基于语音信号去噪处理的FIR滤波器设计

基于语音信号去噪处理的FIR滤波器设计

基于语音信号去噪处理的FIR滤波器设计概述:在许多语音处理应用中,如通信系统、语音识别和语音合成等,语音信号往往受到各种噪声的污染影响。

为了减少或去除这些噪声的影响,需要设计有效的滤波器。

本文将介绍基于语音信号去噪处理的FIR滤波器的设计方法。

1.FIR滤波器的原理FIR滤波器是一种线性时不变系统,由一组滤波器系数和延迟单元组成。

其输出信号为输入信号与滤波器系数之间的卷积运算。

根据语音信号的频谱特性,可以设计一组合适的滤波器系数,用于去除特定频段的噪声。

2.FIR滤波器的设计方法2.1频率采样法频率采样法是一种直接设计FIR滤波器的方法,它通过在频域中指定所需的频率响应来设计滤波器。

首先,根据信号的采样率和带宽要求,确定滤波器的阶数和过渡带宽。

然后,在频域中绘制所需的频率响应曲线,并进行插值得到滤波器的频率响应。

最后,通过傅立叶逆变换得到滤波器的时域响应,即滤波器系数。

2.2窗函数法窗函数法是一种常用的FIR滤波器设计方法,它通过在时域中选择适当的窗函数来设计滤波器的频率响应。

常用的窗函数有矩形窗、汉宁窗、汉明窗等。

首先,根据信号的采样率和带宽要求,确定滤波器的阶数和过渡带宽。

然后,选择合适的窗函数,并在时域中将滤波器的频率响应与窗函数相乘。

最后,通过傅立叶逆变换得到滤波器的时域响应,即滤波器系数。

3.基于语音信号的去噪处理基于语音信号的去噪处理可以通过FIR滤波器来实现。

首先,通过对语音信号进行时频分析,分析出语音信号的频谱特性和噪声的频谱特性。

然后,根据噪声的频谱特性设计一个合适的FIR滤波器,使其在噪声频段上具有较高的增益,而在语音频段上具有较低的增益。

最后,将噪声信号输入到设计好的FIR滤波器中,并将滤波器的输出与原始语音信号相减,得到去噪后的语音信号。

4.总结本文介绍了基于语音信号去噪处理的FIR滤波器设计方法。

通过选择合适的设计方法和滤波器系数,可以有效地去除语音信号中的噪声。

在实际应用中,可以根据具体的需求和信号特性,选择合适的设计方法和优化算法,以获得更好的去噪效果。

语音信号处理与FIR IIR滤波器

语音信号处理与FIR IIR滤波器

数字信号处理课程设计10电子信息科学与技术赵祎10380051一、实验目的1.学会MATLAB的使用,掌握MATLAB的程序设计方法;2.掌握在Windows环境下语音信号采集的方法;3.掌握数字信号处理的基本概念、基本理论和基本方法;4.掌握MATLAB设计FIR和IIR数字滤波器的方法;5.学会用MATLAB对信号进行分析和处理。

二、实验原理参考《数字信号处理》教材,MATLAB的signal processing toolbox.三、主要实验仪器及材料微型计算机、Matlab软件。

四、实验内容(一).语音信号的采集及频谱分析使用windows的录音功能或其他软件录制一段话音,时间控制在5秒左右。

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

通过wavread函数的使用,要求理解采样频率、采样位数等概念。

在录制的语音信号中加入高斯白噪声。

对于无高斯白噪声影响和有高斯白噪声影响的语音信号:画出语音信号的时域波形;然后对语音信号进行频谱分析,在MATLAB中,可以利用函数FFT对信号进行快速傅里叶变换,得到信号的频谱特性。

(二)设计FIR和IIR数字滤波器并滤波基于FIR(滤波器窗函数法,包括Hamming窗、Kaiser窗)和IIR(双线性变换法设计巴特沃兹滤波器、切比雪夫滤波器I型滤波器)的设计方法,分别设计以下三种数字滤波器,根据语音信号的特点给出有关滤波器的性能指标:1)低通滤波器性能指标,fp=1000Hz,fc=1200 Hz,As=100dB,Ap=1dB;2)高通滤波器性能指标,fc=2800 Hz,fp=3000 Hz As=100dB,Ap=1dB;3)带通滤波器性能指标,fp1=1200 Hz,fp2=3000 Hz,fc1=1000 Hz,fc2=3200 Hz,As=100dB,Ap=1dB。

利用MATLAB软件工具,设计上面要求的三种滤波器:第一步、设计出各数字滤波器并画出滤波器的频率特性曲线;第二步、比较FIR和IIR两种滤波器的性能,在FIR滤波器和IIR滤波器中分别选择性能好的一项,然后用各滤波器分别对采集的语音信号进行滤波。

数字信号处理课程设计-语音信号的数字滤波——fir数字滤波器的(汉宁)窗函数设计[管理资料]

数字信号处理课程设计-语音信号的数字滤波——fir数字滤波器的(汉宁)窗函数设计[管理资料]

语音信号的数字滤波——FIR数字滤波器的(汉宁)窗函数设计设计题目:语音信号的数字滤波——FIR数字滤波器的(汉宁)窗函数设计一、课程设计的目的通过对常用数字滤波器的设计和实现,掌握数字信号处理的工作原理及设计方法;掌握利用数字滤波器对信号进行滤波的方法。

并能够对设计结果加以分析。

二、设计步骤⑴按“开始->程序->附件->娱乐->录音机”的顺序操作打开Windows系统中的录音机软件⑵用麦克风录入自己的声音信号并保存成文件(语音信号的长度不得少于1秒)⑶记录以下内容:语音信号文件保存的文件名为“”、格式PCM,8位,单声道,如图1和图2所示。

语音信号的采样速率为8000Hz/s。

图1语音信号的采集图2 原始语音信号⑴将上一步骤中保存下来的语音信号文件“*.wav”复制到计算机装有Matlab 软件的磁盘中相应Matlab目录中的“work”文件夹中⑵双击桌面上Matlab软件的快捷图标,打开Matlab软件⑶在菜单栏中选择“File->new->M-File”或是点击快捷按钮,打开m 文件编辑器⑷在m文件编辑器中输入相应的指令将自己的语音信号导入Matlab工作台。

程序部分首先用语音文件将自己的录音导入,指令为wavread(),本设计中为waveread(’’),然后将处理后的语音信号导出,指令为:wavwrite(‘’);本设计中录入的是单声道语音。

一般情况下录入的双声道语音信号中()右导入交保存为变量后,其变量应当是一个二列的二维数组,其中每一列对应一个声道,数组的行数等于采样速率与时间的乘积(即单声道的采样点数);本课程设计过程中的语音原始信号存为“”;截短后的输出语音为:“”;叠加噪声后的语音为“”。

具体程序段见小标题⑹,频谱分析如下图3。

图3截短后语音信号的时域和频域波形如上图3所示,上面的图是原始声音截去大部分空白后的截短语音,这样有利于频谱分析;中间的图是截短后的声音在频域的分析,首先对语音进行采样,采样频率大于信号最高频率的2倍即可。

基于FIR滤波器的语音信号处理设计_1

基于FIR滤波器的语音信号处理设计_1

毕业设计选题:基于FIR滤波器的语音信号处理设计设计思路:1.介绍数字滤波器的概念及分类主要分数字滤波器的概念、发展现状、按照不同性能的分类,突出IIR和FIR滤波器。

2.重点介绍FIR滤波器的设计原理主要从FIR的设计原理(理论)、性能指标、分类、设计方法(重点,一共三种,分别介绍其理论和实现方法)以及优缺点入手分析3.介绍语音信号的处理过程及原理简单介绍一下采样原理,再介绍语音信号的采集流程(录音、转码、采样、打开、回放)4.简单介绍MATLAB的功能及使用方法简单介绍MATLAB在信号处理方面的功能(信号的采集、频谱分析、滤波器的设计)以及它的使用方法5.设计一个能处理声音信号的FIR滤波器全文的核心,先录制一段语音,通过MATLAB采集显示,分析时域波形及频谱显示;再设置滤波后的性能指标,用MATLAB分别用三种方法设计出FIR滤波器;将设计好的滤波器加入原语音信号中,观察处理后的时域波形及频谱;最后分析比较三种方法以及与无滤波器的显示比较,得出结论。

(如果可以,首先可以在原音中加入噪音,观察加入滤波器前后波形的差异,说明滤波器在语音信号处理方面的作用;只通过编程来完成滤波器的设计,还不够形象,最好可以通过Simulink将整个系统仿真出来,说明结果的可靠性。

)6.简单分析一下所设计滤波器的优缺点由于FIR滤波器设计原理本身存在一些误差,导致仿真出来的结果必然存在一些误差,分析这些误差的来源,再说明FIR 滤波器在语音信号处理方面的优点,得出结论。

7. 总结全文的思路和研究方法总结在毕业设计过程中遇到的问题,以及解决的方法;最后感谢老师的指导,通过毕业设计学到了哪些东西。

8. 参考文献主要是图书馆借阅的书籍、翻看的论文和报刊,还有网上资料的文献来源。

(每引用一些知识点,就注明其出处,但不能完全照抄,按照自己的话来重新组织。

)9. 附录将MATLAB 的编程代码全部附上,如果有其他的图表也附上研究对象:FIR 滤波器辅助对象:语音信号工具软件:MATLAB FilterMATLAB频谱显示+语音信号噪 声语音信号的滤波流程图摘要本文设计介绍了基于Matlab的对语音信号采集、处理及FIR滤波器的设计,并使之实现的过程。

基于TMS320VC5509_DSP的语音信号的FIR滤波器课程设计报告书

基于TMS320VC5509_DSP的语音信号的FIR滤波器课程设计报告书

DSP原理与应用课程设计报告书课题名称基于TMS320VC5509 DSP的语音信号的FIR滤波器姓名学号院、系、部专业指导教师毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。

尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。

对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。

作者签名:日期:指导教师签名:日期:使用授权说明本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。

作者签名:日期:学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。

除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。

对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。

本人完全意识到本声明的法律后果由本人承担。

作者签名:日期:年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。

本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。

涉密论文按学校规定处理。

作者签名:日期:年月日导师签名:日期:年月日指导教师评阅书评阅教师评阅书教研室(或答辩小组)及教学系意见基于TMS320VC5509 DSP的语音信号的FIR滤波器设计一、实践的目的和要求1.熟悉ICETEK-VC5509-A板上语音codec芯片TLV320AIC23的设计和程序控制原理。

基于FIR语音信号的滤波课程设计

基于FIR语音信号的滤波课程设计

1.课程设计目的、内容和要求一、课程设计目的:通过本次课程设计,要求学生对DSP这门课程所学的基础知识、理论加以明白得,学以致用。

初步培育学生对工程设计的独立工作能力,把握电子系统设计的一样方式。

培育学生的动手能力,和团队合作能力。

二、课程设计内容:通过DSP处置器通过A/D搜集音频信号,在CCS软件中分析音频信号的频谱图,利用Matlab设计相应的FIR数字滤波器(低通)并取得滤波器H(z)的系数,然后依照这些系数,编写DSP程序(C语言或汇编)对已搜集信号进行处置,最后在CCS软件中得处处置后音频信号的频谱图,比较滤波前后信号的频谱图。

三、课程设计要求:一、利用Matlab对FIR滤波器的设计;二、编写FIR滤波处置的DSP程序,查看并记录处置后的信号频谱;3、通过D/A实现数字量到模拟量的转换,回放处置后的声音;4、正确、完整的论述设计和实验结果;五、绘制程序的流程图,并文字说明。

2 设计大体原理及软件简介设计整体方案此题目通过DSP处置器通过A/D搜集音频信号,在CCS软件中分析音频信号的频谱图,利用Matlab设计相应的FIR数字滤波器(低通)并取得滤波器H(z)的系数,然后依照这些系数,编写DSP程序(C语言或汇编)对已搜集信号进行处置,最后在CCS 软件中得处处置后音频信号的频谱图,比较滤波前后信号的频谱图。

其中语音信号的搜集与回放是采纳TLV320AIC23芯片,对语音信号进行A/D,D/A转换,从而实现对语音信号的数字处置与回放。

DSP芯片主若是将转化成数字信号的语音信号用DSP算法对其进行处置,并将处置后的信号传送到输出端。

如以下图1所示为此题目的系统整体设计框图。

图1 系统整体设计框图FIR滤波器的原理及特点数字滤波器有两类:IIR数字滤波器和FIR数字滤波器。

FIR滤波器是有限长单位冲激响应滤波器,在结构上是非递归型的。

它能够在幅度特性随意设计的同时,保证精准严格的线性相位。

课程设计--语音信号滤波去噪使用BOHMAN窗设计的频率采样型FIR滤波器

课程设计--语音信号滤波去噪使用BOHMAN窗设计的频率采样型FIR滤波器

课程设计--语音信号滤波去噪使用BOHMAN窗设计的频率采样型FIR滤波器第2页共23页语音信号滤波去噪——使用BOHMAN窗设计的频率采样型FIR滤波器学生姓名:指导老师:摘要本课程设计主要内容是,利用窗口设计法设计频率采样型FIR滤波器并对加噪语音信号进行滤波去噪处理。

仿真平台为MATLAB7.0,开发工具是M语言编程。

在课程设计中,首先利用Windows下的录音机工具录制一段格式为.wav的语音信号,然后在MATLAB中对语音信号进行加噪,并绘制原始语音信号和加噪语音信号的时域和频域波形,进行频谱分析以确定所加噪声频率,再利用Bohman窗设计FIR滤波器,并检测是否达到指标,最后使用滤波器对信号进行滤波去噪处理,并通过对比原始信号,加噪信号,滤波去噪信号的时域和频域波形,或回放语音信号,检测是否设计成功。

通过程序调试及完善,本课程设计滤波后的语音信号与原始语音信号基本一致,即设计的滤波器能够从含噪信号中滤除单频噪声,还原原始信号,达到了设计目的。

关键词课程设计;滤波去噪;FIR滤波器;BOHMAN窗;MATLAB1 引言本课程设计主要解决在含噪情况下如何对语音信号进行滤波去噪处理。

设计采用BOHMAN窗设计的频率采样型FIR滤波器对一段含噪语音信号进行滤波去噪处理。

数字滤波器是一种用来过滤时间离散信号的数字系统,它是通过对抽样数据进行数字处理来达到频域滤波的目的。

数字信号处理与模拟信号处理是信号处理的子集。

数字信号处理的目的是对真实世界的连续模拟信号进行测量或滤波。

随着现代通信的数字化,数字滤波器变得更加重要。

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

从滤波特性方面考虑,数字滤波器可分为数字高通、数字低通、第3页共23页数字带通和数字帯阻等滤波器。

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

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

DSP课程设计报告语音信号的FIR滤波器处理*名:***班级:12电信3学号:************指导老师:***日期:2015.06.02~2014.06.19 华南农业大学电子工程学院摘要随着信息与数字技术的发展,数字信号处理已经成为当今极其重要而学科与技术领域之一。

它在通信、语音、图像、自动控制、雷达、军事、航空航天、医疗和家用电器等众多领域得到了广泛的应用。

在数字信号处理的基本方法中,通常会涉及到变换、滤波、频谱分析、调制解调和编码解码等处理。

其中滤波是应用非常广泛的一个环节,数字滤波器的理论和相关设计也一直都是人们研究的重点之一。

FIR滤波器的是非递归的,稳定性好,精度高;更重要的是,FIR滤波器在满足幅频响应要求的同时,可以获得严格的线性相位特征。

因此,它在高保真的信号处理,如数字音频、图像处理、数据传输和生物医学等领域得到广泛应用。

CSS集成开发环境使用CCS内置的软件仿真simulator对程序进行编译,调试和运行,主要用于检测目标程序运行的正确性和连贯性,并能通过仿真器与目标板连接,在目标板上实时观察效果。

在本次设计中,我们选择的课题是基于DSP的语言信号的FIR滤波处理。

首先利用MATLAB进行了仿真,得到滤波前后的时域波形和频谱。

然后通过调用MATLAB的分析工具FDATOOL,根据仿真结果导出了滤波器的相关参数,将原始信号数据和滤波器参数输入CCS进行DSP编程。

最后在DSP中实现了FIR低通滤波,并通过CCS的频谱分析功能查看了最终DSP的滤波效果。

关键词:语音信号处理 FIR滤波 MATLAB CCS目录1.前言 (4)2.设计需求 (4)3.滤波器设计原理介绍 (4)3.1数字滤波器设计原理 (4)3.2FIR滤波器的基本结构 (5)3.3 滤波器的特点 (5)3.4窗函数的介绍 (6)4.FIR滤波器的设计 (7)4.1FIR滤波器设计 (7)4.2窗函数设计的基本方法 (7)4.3滤波器的1 z算法实现 (7)5.FIR滤波器的MATLAB设计 (8)6.FIR滤波器的DSP实现 (10)6.1CCS设计与仿真 (10)6.2CCS仿真结果 (13)6.调试问题及解决办法 (16)7.设计感想 (16)参考文献 (17)8.附录 (17)1 前言通过语音传递信息是人类最重要、最有效、最常用、最方便的交换信息的方法,因此,如何去除混杂在有用信号中的噪声并获得低损甚至无损的有用语音信号成为语音信号处理(即用数字信号处理技术和语言学知识对语音信号进行处理并提取有用信息)至关重要的问题。

但是因为语音识别技术对信号噪声非常敏感,系统本身和器件对系统的处理结果都有着不可忽视的干扰,因此很难实现效果较好的语音信号滤波处理。

而DSP因为运算速度快,片上资源丰富和能够实现复杂的线性和非线性算法等特性,在语音信号处理技术方面有明显的优势。

在数字信号处理中,滤波占有极其重要的地位。

数字滤波是语音信号处理、图像处理、模式识别、频谱分析等应用的基本处理算法。

用DSP芯片实现数字滤波除了具有稳定性好、精确度高、不受环境影响等优点外,还具有灵活性好等特点。

本文介绍了数字滤波器的设计基础及用窗函数法设计FIR滤波器的方法,运用MATHLAB语言实现了低通滤波器的设计并用CCS 2.0进行观察效果。

2设计需求1)滤波器的设计的原理介绍2)FIR滤波器的设计3)FIR滤波器的DSP实现4)滤波器为低通滤波器,并用用语音信号通过滤波器后查看滤波效果是否达到设计要求,进行FIR滤波器的检验根据老师的的意见,我们自己拟定了滤波器的指标:Fs=8000hz,Wp=1500 Hz,Ws=2000 Hz,通带波纹为0.01,阻带波纹为0.1,N=37。

3 滤波器设计原理介绍3.1数字滤波器的设计原理数字滤波器的设计问题就是寻找一组系数ai和bi,使得其性能在某种意义上逼近所要求的特性。

如果在s平面上去逼近,就得到模拟滤波器,如果在z平面上去逼近,则得到数字滤波器。

数字滤波是将输入的信号序列,按规定的算法进行处理,从而得到所期望的输出序列。

一个线性位移不变系统的输出序列y (n )和输入序列x (n )之间的关系, 应满足常系数线性差分方程:(2.1.1) x (n )为输入序列,y (n )为输出序列,ai 、bi 为滤波器系数,N 为滤波器的阶数。

3.2 FIR 滤波器的基本结构在式2.1.1中,若所有的ai 均为0,则得FIR 滤波器的差分方程:(2.2.1) 对式(2.2.1)进行z 变换,可得FIR 滤波器的传递函数:(2.2.2) 由此可得到FIR 滤波器的结构如图1所示。

FIR 滤波器的单位冲击响应h(n)是一个有限长序列。

若h(n)为实数,且满足偶对称或奇对称的条件,即h(n)=h(N-1-n)或h(n)=-h(N-1-n),则FIR 滤波器具有线性相位特性。

3.3 滤波器的特点优点:(1)很容易获得严格的线性相位,避免被处理的信号产生相位失真,这一特点在宽频带信号处理、阵列信号处理、数据传输等系统中非常重要;(2)可以在幅度特性随意设计的同时,保证精确、严格的线性相位,还可0)()()(110≥---=∑∑=-=n i n y a i n x b n y Mi i N i i)()(10∑-=-=N i i i n x b n y )()()(10∑-=-==N i i i z b z X z Y z H得到多带幅频特性;(3)极点全部在原点(永远稳定),无稳定性问题;(4)任何一个非因果的有限长序列,总可以通过一定的延时,转变为因果序列,所以因果性总是满足;(5)无反馈运算,运算误差小。

缺点:(1)因为无极点,要获得好的过渡带特性,需以较高的阶数为代价;(2)无法利用模拟滤波器的设计结果,一般无解析设计公式,要借助计算机辅助设计程序完成。

3.4 窗函数简介数字信号处理的主要数学工具是傅里叶变换。

而傅里叶变换是研究整个时间域和频率域的关系。

不过,当运用计算机实现工程测试信号处理时,不可能对无限长的信号进行测量和运算,而是取其有限的时间片段进行分析。

做法是从信号中截取一个时间片段,然后用观察的信号时间片段进行周期延拓处理,得到虚拟的无限长的信号,然后就可以对信号进行傅里叶变换、相关分析等数学处理。

无线长的信号被截断以后,其频谱发生了畸变,原来集中在f(0)处的能量被分散到两个较宽的频带中去了(这种现象称之为频谱能量泄漏)。

为了减少频谱能量泄漏,可采用不同的截取函数对信号进行截短,截断函数称为窗函数,简称为窗。

信号截短以后产生的能量泄漏现象是必然的,因为窗函数w(t)是一个频带无限的函数,所以即使原信号x(t)是有限带宽信号,而在截短以后也必然成为无限带宽的函数,即信号在频域的能量与分布被扩展了。

又从采样定理可知,无论采样频率多高,只要信号一经截短,就不可避免地引起混叠,因此信号截短必然导致一些误差。

泄漏与窗函数频谱的两侧旁瓣有关,如果两侧瓣的高度趋于零,而使能量相对集中在主瓣,就可以较为接近于真实的频谱,为此,在时间域中可采用不同的窗函数来截短信号。

4 FIR 滤波器的设计4.1 FIR 滤波器设计FIR 滤波器的设计问题在于寻求一系统函数 ,使其应 逼近滤波器要求的理想频率响应 。

4.2 窗函数设计的基本方法从时域出发,设计h(n)逼近理想hd(n),设理想滤波器的单位脉冲响应为hd(n),则有所求得的 一般是无限长的,且是非因果的。

要想得到一个因果的有限长的滤波器h(n),最直接的方法是截断 ,或者说用一个窗口函数 对 进行加窗处理,即 。

因此,应选择合适的窗函数。

4.3 滤波器的1-z 算法实现FIR 滤波器的输出表达式为式中,为滤波器系数;x(n)表示滤波器在n 时刻的输入;y(n)为n 时刻的输出。

它的基本算法是一种乘法-累加运算,即不断地输入样本x(n),经过延时后,再进行乘法-累加,最后输出滤波结果y(n)。

1)线性缓冲区法线性缓冲区法又称延迟线法。

其特点:·对于N 级的FIR 滤波器,在数据存储器中开辟一个N 单元的缓冲区(滑窗),用来存放最新的N 个输入样本;·从最老样本开始取数,每取一个样本后,将此样本向下移位;∑-=-=10)()(N n n z n h z H )(ωj d e H ⎰∑--∞-∞===ππωωωωωπd e e H n h e n h e H jn j d d jn n d j d )(21)()()()(n h d )(n h d )(n w )(n h d )()()(n w n h n h d =ωωj e z j z H e H ==|)()(·读完最后一个样本后,输入最新样本存入缓冲区的顶部。

2)循环缓冲区法本次设计的FIR滤波器所采用的就是循环缓冲区法。

循环缓冲区法的特点如下:·对于N级FIR滤波器,在数据存储器中开辟一个N单元的缓冲区(滑窗),用来存放最新的N个输入样本;·从最新样本开始取数;·读完最后一个样本(最老样本)后,输入最新样本来代替最老样本,而其他数据位置不变;·用片内BK(循环缓冲区长度)寄存器对缓冲区进行间接寻址,使循环缓冲区地址首尾相邻。

5 FIR滤波器的matlab实现MATLAB是一种功能强、效率高、便于进行科学和工程计算的交互式软件包,它集数值分析、矩阵运算、信号处理和图形显示于一体,为用户提供了方便、友好的界面环境。

MATLAB中的工具箱(Toolbox)包含了许多实用程序。

它提供了多种FIR滤波器设计方法。

fir1函数用来设计标准频率响应的基于窗函数的FIR滤波器,可实现加窗线性相位FIR数字滤波器的设计。

具体语法如下:b=fir1(n,Wn)b=fir1(n,Wn,‘ftype’)b=fir1(n,Wn,Window)b=fir1(n,Wn,‘ftype’,Window)其中n为滤波器的阶数;Wn为滤波器的截止频率; ftype为用来决定滤波器的类型,当ftype=high时,可设计高通滤波器;当ftype=stop时,可设计带阻滤波器。

Window为用来指定滤波器采用的窗函数类型,Window参数可采用的窗口函数有: Boxcar,Hanning,Bartlett,Blackman,Kasier和chebwin等,其默认时为Hamming窗,从而得到滤波器的系数。

fir2函数用来设计有任意频率响应的各种加窗FIR滤波器。

具体语法如下:b=fir2(n,f,m)b=fir2(n,f,m,Window)b=fir2(n,f,m,npt)b=fir2(n,f,m,npt,Window)b=fir2(n,f,m,npt,lap)b=fir2(n,f,m,nptt,lap,Window)其中n为滤波器的阶数;f为频率点矢量;m为幅度点矢量;Window用来指定所使用的窗函数类型,默认值为汉明(Hamming)窗;npt用来指定fir2函数对频率响应进行内插的点数;lap用来指定fir2函数在重复频率点附近插入的区域大小,从而得到滤波器的系数。

相关文档
最新文档