弹拨音乐滤波去噪--使用三角窗设计FIR滤波器
音乐信号滤波去噪
音乐信号滤波去噪使用三角窗设计的FIR滤波器学生姓名:林应盛指导教师:胡双红摘要本次课程设计是用采集一段音乐信号并对该音乐信号进行滤波去噪处理。
课程设计平台为MATLAB7.0。
设计步骤为:首先采集一段音乐信号并观察其频谱,然后设计一个三角窗FIR滤波器,最后对该信号进行滤波。
信号在进行滤波处理后,观察并记录滤波前后波形和频谱的变化,能够听到滤波后的音乐信号和滤波前相比明显的变得清晰,基本达到了设计目的。
关键词课程设计;滤波去噪;FIR滤波器;三角窗;MATLAB7.01 引言在数字信号处理中,滤波占有极其重要的作用,数字滤波器是谱分析、雷达信号处理、通信信号处理应用中的基本处理算法。
目前常用的滤波器设计方法普遍采用Matlab 仿真,DSP实现。
音乐信号的处理与滤波的设计主要是用Matlab作为工具平台,设计中涉及到音乐的录制、播放、存储和读取,音乐信号的抽样、频谱分析,滤波器的设计及音乐信号的滤波,通过数字信号处理课程的理论知识的综合运用。
从实践上初步实现对数字信号的处理。
1.1课程设计的目的设计一个FIR滤波器,可以有多种方法,窗函数法是设计FIR数字滤波器的最简单的方法。
它在设计FIR数字滤波器中有很重要的作用,正确地选择窗函数可以提高设计数字滤波器的性能,或者在满足设计要求的情况下,减小FIR数字滤波器的阶次。
常用的窗函数有以下几种:矩形窗(Rectangular window)、三角窗(Triangular window)、汉宁窗(Hanning window)、汉明窗(Hamming window)、布拉克曼窗(Blackman window)、切比雪夫窗(Chebyshev window)、巴特里特窗(Bartlett window)及凯塞窗(Kaiser window)。
在本次课程设计的目的是如何设计一个三角窗FIR滤波器,从而达到对音乐信号滤波的效果。
1.2课程设计的要求(1)滤波器指标必须符合工程实际。
数字信号处理实验——用窗函数设计FIR滤波器
实验四 用窗函数设计FIR 滤波器一、 实验目的1、熟悉FIR 滤波器设计的基本方法。
2、掌握用窗函数设计FIR 数字滤波器的原理及方法,熟悉相应的计算机高级语言编程。
3、熟悉线性相位FIR 滤波器的幅频特性和相位特性。
4、了解各种不同窗函数对滤波器性能的响应。
二、 实验原理和方法窗函数法设计的任务在于寻找一个可实现有限长单位脉冲响应的传递函数H(e jw )=∑-=10N n h(n)e -jwn 去逼近h d (n)=1/2π⎰π20H d (e jw )e jwn dw即h(n)=h d (n)w (n ) (一)几种常用的窗函数1、矩形窗 w(n)=R N (n)2、Hanning 窗 w(n)=0.5[1-cos(2πn /N-1)]R N (n)3、Hamming 窗 w(n)=[0.54-0.46cos(2πn /N-1)]R N (n)4、Blackman 窗 w(n)=[0.42-0.5 cos(2πn /N-1)+0.08 cos(4πn /N-1)] R N (n)5、Kaiser 窗 w(n)=I 0(β(1-[(2n /(N-1))-1]2)½)/I 0(β)(二)窗函数法设计线性相位FIR 滤波器的步骤1、确定数字滤波器的性能要求。
确定各临界频率{w k }和滤波器单位脉冲响应长度N 。
2、根据性能要求和N 值,合理地选择单位脉冲响应h(n)有奇偶对称性,从而确定理想频率响应h d (e jw)的幅频特性和相位特性。
3、用傅里叶反变换公式求得理想单位脉冲响应h d (n)。
4、选择适当的窗函数W (n ),求得所设计的FIR 滤波器单位脉冲响应。
5、用傅里叶变换求得其频率响应H (e jw),分析它的幅频特性,若不满足要求,可适当改变窗函数形式或长度N ,重复上述过程,直至得到满意的结果。
三、实验内容和步骤1、分别用矩形窗、Hanning 窗、Hamming 窗、Blackman 窗、Kaiser 窗(β=8.5)设计一个长度N=8的线性相位FIR 滤波器。
音乐信号滤波去噪—用凯塞窗设计的FIR滤波器
音乐信号滤波去噪—用凯塞窗设计的FIR 滤波器学生姓名:指导老师:摘要本课程设计主要是通过使用凯塞窗设计一个FIR滤波器以对音乐信号进行滤波去噪处理。
本设计首先通过麦克风采集一段音乐信号,依据对该信号的频谱分析,给定相关指标。
以MATLAB软件为平台,采用凯塞窗设计满足指标的FIR滤波器,以该音乐信号进行滤波去噪处理。
通过对比滤波前后的波形图,深入了解滤波器的基本方法。
通过程序调试及完善,该设计基本满足设计要求。
关键词滤波去噪;FIR滤波器;凯塞窗函数;MATLAB1 引言数字滤波器是一种用来过滤时间离散信号的数字系统,它是通过对抽样数据进行数学处理来达到频域滤波的目的。
随着现代通信的数字化,数字滤波器变得更加重要。
数字滤波器的种类很多,但总的来说可以分成两大类,一类是经典滤波器,另一类可称为现代滤波器。
从滤波特性方面考虑,数字滤波器可分成数字高通、数字低通、数字带通和数字带阻等滤波器。
从实现方法上考虑,将滤波器分成两种,一种称为无限脉冲响应滤波器,简称IIR(Infinite Impulse Response)滤波器,另一种称为FIR(Finite Impulse Response)滤波器[1]。
设计FIR数字滤波器的方法有窗函数法、频率采样法和等波纹最佳逼近法等。
1.1 课程设计目的数字信号处理(Digital Signal Processing,简称DSP)是一门涉及许多学科而又广泛应用于许多领域的新兴学科。
20世纪60年代以来,随着计算机和信息技术的飞速发展,数字信号处理技术应运而生并得到迅速的发展。
在过去的二十多年时间里,数字信号处理已经在通信等领域得到极为广泛的应用。
数字信号处理是利用计算机或专用处理设备,以数字形式对信号进行采集、变换、滤波、估值、增强、压缩、识别等处理,以得到符合人们需要的信号形式。
在本次课程设计中,最主要的设计是设计FIR滤波器,FIR滤波器的设计方法主要分为两类:第一类是基于逼近理想滤波器器特性的方法包括窗函数法、频率采样法、和等波纹最佳逼近法;第二类是最优设计法。
语音信号滤波去噪——使用汉宁窗设计的FIR滤波器要点
语音信号滤波去噪——使用汉宁窗设计的FIR滤波器学生姓名:指导老师:摘要本课程设计主要是对一段语音信号,加入噪声后,用汉宁窗设计出的FIR滤波器对加入噪声后的语音信号进行滤波去噪处理。
在此次课程设计中,系统操作平台为Windows XP,程序设计的操作软件为MATLAB 7.0。
此课程设计首先是用麦克风采集一段语音信号,加入噪声,然后采用汉宁窗函数法设计出FIR滤波器,再用设计出的滤波器对这段加噪后的语音信号进行滤波去噪,最后对前后时域和频域的波形图进行对比分析,从波形可以看出噪声被完全滤除,达到了语音不失真的效果,说明此次设计非常成功。
关键词程序设计;滤波去噪;FIR滤波器;汉宁窗;MATLAB 7.01 引言本课程设计主要是对一段语音信号,进行加噪后,用某种函数法设计出的FIR滤波器对加入噪声后的语音信号进行滤波去噪处理,并且分析对比前后时域和频域波形的程序设计。
1.1 课程设计目的在此次课程中主要的要求是用麦克风采集一段语音信号,绘制波形并观察其频谱,给定相应技术指标,用汉宁窗设计一个满足指标的FIR滤波器,对该语音信号进行滤波去噪处理,比较滤波前后的波形和频谱并进行分析,根据结果和学过的理论得出合理的结论。
与不同信源相同滤波方法的同学比较各种信源的特点,与相同信源不同滤波方法的同学比较各种滤波方法性能的优劣。
通过此次课程设计,我们能够学会如何综合运用这些知识,并把这些知识运用于实践当中,使所学知识在综合运用能力上以及分析问题、解决问题能力上得到进一步的发展,让自己对这些知识有更深的了解。
通过课程设计培养严谨的科学态度,认真的工作作风和团队协作精神。
1.2课程设计的要求(1)滤波器指标必须符合工程实际。
(2)设计完后应检查其频率响应曲线是否满足指标。
(3)处理结果和分析结论应该一致,而且应符合理论。
(4)独立完成课程设计并按要求编写课程设计报告书。
1.3 工作平台简介课程设计的主要设计平台式MATLAB 7.0。
信号实验三 用窗函数设计FIR滤波器
实验三用窗函数设计FIR滤波器一、实验目的1.熟悉FIR滤波器设计的基本方法。
2.掌握用窗函数设计FIR数字滤波器的原理及方法,熟悉相应的计算机高级语言编程。
3.熟悉线性相位FIR滤波器的幅频特性和相位特性。
4.了解各种不同窗函数对滤波器性能的响应。
二、实验内容1、以下是几种常用的窗函数:1.矩形窗:2.Hanning(汉宁)窗:3.Hamming(海明)窗:4.Blackman窗:5.Kaiser窗:窗函数法设计线性相位FIR滤波器可以按如下步骤进行:1.确定数字滤波器的性能要求。
确定各临界频率{错误!未找到引用源。
}和滤波器单位脉冲响应长度N。
2.根据性能要求和N值,合理地选择单位脉冲响应h(n)有奇偶对称性,从而确定理想频率响应H d(Ω)的幅频特性和相位特性。
3.用傅里叶反变换公式,求得理想单位脉冲响应h d(n)。
4.选择适当的窗函数W(n)根据式h(n)=h d(n)w(n)求得所设计的FIR滤波器单位脉冲响应。
5.用傅理叶变换求得其频率响应H(Ω),分析它的幅频特性,若不满足要求,可适当改变窗函数形式或长度N,重复上述过程,直至得到满意的结果。
2. 生成四种窗函数:矩形窗、三角窗、汉宁窗、海明窗,并观察其频率响应。
n=30;%矩形窗及其频响window1=rectwin(n);[h1,w1]=freqz(window1,1);subplot(4,2,1);stem(window1);title('矩形窗');subplot(4,2,2);plot(w1/pi,20*log(abs(h1))/abs(h1(1)));title('矩形窗频响');%三角窗及其频响window2=triang(n);[h2,w2]=freqz(window2,1);subplot(4,2,3);stem(window2);title('三角窗');subplot(4,2,4);plot(w2/pi,20*log(abs(h2))/abs(h2(1)));title('三角窗频响');%汉宁窗及其频响window3=hann(n);[h3,w3]=freqz(window3,1);subplot(4,2,5);stem(window3);title('汉宁窗');subplot(4,2,6);plot(w3/pi,20*log(abs(h3))/abs(h3(1)));title('汉宁窗频响');%汉明窗频响window4=hamming(n);[h4,w4]=freqz(window4,1);subplot(4,2,7);stem(window4);title('汉明窗');subplot(4,2,8);plot(w4/pi,20*log(abs(h4))/abs(h4(1)));title('汉明窗频响');3、(1)用Hanning窗设计一个线性相位带通滤波器,其长度N=15,上下边带宽截止频率分别为ω=0.3π错误!未找到引用源。
用窗口法设计FIR数字滤波器
实验8用窗口法设计FIR 数字滤波器8.1实验目的了解一个实际滤波器设计过程,加深掌握用窗口法设计FIR 数字滤波器的原理和窗函数对数字滤波器性能的影响。
8.2基本原理设所希望得到的滤波器的理想频率响应为H d (e jw )。
那FI 滤波器的设计就在于寻找一个频率响应为()()∑=--=N n jwn jwH 0e n h e 去逼近H d (e jw )。
在这种逼近中最直接的一种方法是从单位冲激响应序列h(n)着手,使h(n)逼近理想的单位冲激响应h d (n)。
我们知道h d (n)可以从理想频率响应H d (e jw )通过傅里叶反变换得到,即: ()()∑∞∞=-=n jwn jwH e n h e dd ()⎰-=ππωπd H jwn jw de )(e 21n h d但是一般来说,这样得到的单位冲激响应h d (n)往往都是无限长序列,而且是非因果的。
我们以一个截止频率为ωC 的线性相位理想低通滤波器为例来说明。
设低边滤波器的时延为ɑ,即()πωωωωα≤≤≤⎩⎨⎧-cc jw jw H 0e ed (8-2) 则 ()()[]()απαωωπωωα--==⎰--n n d c jwn jw sin e e 21n h c c d 这是一个以ɑ为中心的偶对称的无限长非因果序列。
这样一个无限长的序列怎样用一个有限长主序列去近似呢?最简单的办法就是直接截取它的一段来代替它。
例如n=0到n=N —1的一段截取来作为h(n),但是为了保证所得到的是线性相位滤波器,必须满足h(n)的对称性,所以时延ɑ应该取h(n)长度的一半,即ɑ=(N —1)/2。
()()n100h n h d 其他-≤≤⎩⎨⎧N n n (8-3) 这种直接截取的办法可以形象地想象为,h(n)好比是通过一个窗口所看到的一段h d (n)。
h(n)为h d (n)和一个"窗口函数"的乘积。
在这里,窗口函数就是矩形序列R N (n),即h(n)=h d (n)·R N (n) (8-4)但是一般来说,窗口函数并不一定是矩形序列,可以在矩形以内对h d (n)作一定的加权处理,因此,一般可以表示为h(n)=h d (n)·ω(n) (8-5)这里ω(n)就是窗口函数。
音乐信号滤波去噪 ——使用CHEB窗设计的线性相位型的FIR滤波器
音乐信号滤波去噪——使用CHEB窗设计的线性相位型的FIR滤波器学生姓名:胡国庆指导老师:高明摘要本课程设计主要使用CHEB窗设计的FIR滤波器对音乐信号进行滤波去噪。
课程设计的的平台为MATLAB。
采集一段音乐信号,绘制波形并观察其频谱,给定相应技术指标,用窗函数法设计一个满足指标的FIR滤波器,对该音乐信号进行滤波去噪处理。
根据滤波后的时域图和原始音乐信号时域图的比较,以及滤波后信号的频谱图和原始音乐信号频谱图的比较,最后回放滤波后音乐信号,滤波后的音乐信号与原始音乐信号一样清晰,成功地实现了滤波,达到了设计的要求。
关键词FIR滤波器;音乐信号;滤波去噪;CHEB窗设计;MATLAB1 引言本课程设计是采用CHEB窗设计的FIR滤波器对语音信号进行滤波去噪。
通过课程设计了解FIR滤波器设计的原理和步骤,掌握用Matlab语言设计滤波器的方法,。
通过观察音乐信号滤波前后的时域波形的比较,加深对滤波器作用的理解。
通过对比滤波前后波形图的比较和放滤波前后音乐信号的对比,可以看出滤波器对有用信号无失真放大具有重大意义。
1.1 课程设计目的熟悉Matlab语言环境,掌握Matlab语言的编程规则,利用CHEB窗函数设计法来设计符合要求的FIR滤波器来实现音乐信号的滤波去噪。
并绘制滤波前后的时域波形和频谱图。
根据图形分析判断滤波器设计的正确性。
通过本次课程设计熟悉利用CHEB窗函数法设计FIR滤波器的过程。
增强自己独立解决问题的能力,提高自己的动手能力。
加深对理论知识联系实际问题的理解。
为以后的工作奠定坚实的基础。
1.2 课程设计要求下载一段音乐信号,绘制观察波形及频谱图。
根据CHEB的性能指标合理设计FIR滤波器,对音乐信号加入干扰,再用滤波器对干扰音乐信号进行滤波去噪,比较滤波前后的频谱图并进行分析。
再回放音乐信号对比原音乐信号。
看滤波器是否对音乐信号进行了滤波去噪。
1.3课程设计平台MATLAB在信号与系统中的应用主要包括符号运算和数值计算仿真分析。
弹拨音乐信号滤波去噪—三角形窗设计的FIR滤波器2
学生姓名:夏霞指导老师:高明摘要本课程设计主要内容是建立TI C6713 DSP开发环境,通过使用三角形窗设计一个FIR滤波器以对弹拨音乐信号进行滤波去噪处理。
本设计首先通过麦克风采集一段弹拨音乐信号,依据对该信号的频谱分析,给定相关指标。
以MATLAB7.0和TI C6713为平台,以M语言编程和C语言编程为开发工具,采用三角形窗设计满足指标的FIR 滤波器,以该音乐信号进行滤波去噪处理。
通过对比滤波前后的波形图,可以看出滤波后的弹拨音乐信号与原信号基本一致,即该设计基本满足设计要求。
关键词课程设计;滤波去噪;FIR滤波器;三角窗函数;MATLAB;TI C6713 DSP1 引言本课程设计主要是在TI C6713 DSP上含噪情况下对弹拨音乐的滤波去噪处理,处理时采用的是利用三角形窗设计的FIR滤波器。
数字信号处理器(DSP)作为一种可编程专用芯片,是数字信号处理理论实用化过程的重要技术工具,在语音处理、图像处理等技术领域得到了广泛的应用。
由Ti公司提供专业的开发工具CCS,自带DSP/BIOS 操作系统,能够直接编写适合DSP开发工程及文件,满足DSP程序设计要求。
1.1 课程设计目的数字信号处理是一门涉及许多学科而又广泛应用于许多领域的新兴学科。
在过去的二十多年里,数字信号处理得到了广泛的应用。
在本次的课程设计学习中,我的题目是基于TI C6713 DSP的弹拨音乐滤波去噪——三角形窗设计FIR滤波器。
我要经过这次课程设计,全面了解CCS的使用方法,以及独自动手完成汉宁窗设计FIR滤波器。
培养专业知识的兴趣与爱好以及动手能力。
1.2课程设计的要求(1)算法结果和分析结论应该一致,而且应符合理论。
(2)处理结果和分析结论应该一致,而且应符合理论。
(3)独立完成课程设计并按要求编写课程设计报告书。
1.3设计平台CCS是TI公司推出的用于开发DSP芯片的集成开发环境,它采用Windows风格界面,集编辑、编译、链接、软件仿真、硬件调试以及实时跟踪等功能于一体,极大地方便了DSP芯片的开发与设计,是目前使用最为广泛的DSP开发软件之一。
使用FIR滤波器实现音频滤波实验指南
使用FIR滤波器实现音频滤波实验指南音频滤波是通过使用数字滤波器来处理音频信号以达到去除或增强特定频率分量的目的。
其中,FIR(Finite Impulse Response)滤波器是一种常用的数字滤波器。
本实验指南将介绍如何使用FIR滤波器实现音频滤波。
实验目的:通过使用FIR滤波器,实现对音频信号的滤波,包括低通滤波、高通滤波和带通滤波。
实验材料:1.电脑或音频设备2. 数字信号处理软件(如MATLAB或Python)实验步骤:2. 设计FIR滤波器:确定所需滤波器的类型和参数。
对于低通滤波器,你需要设置截止频率,即希望保留的信号频率下限。
对于高通滤波器,你需要设置截止频率,即希望保留的信号频率上限。
对于带通滤波器,你需要设置上下限频率,即希望保留的信号频率范围。
使用数字滤波器设计工具(如MATLAB中的“fir1”函数)来设计FIR滤波器。
确定滤波器的阶数和系数。
3. 实施滤波:将所选的音频信号输入滤波器中,并对其进行滤波处理。
在MATLAB中,可以使用“filter”函数来实现滤波过程。
确保滤波器的输出数据类型与输入数据类型一致。
4. 分析结果:检查滤波后的音频信号,以了解滤波器的效果。
可以使用频谱分析工具(如MATLAB中的“fft”函数)查看信号频率特性的变化。
实验注意事项:1.在设计FIR滤波器时,需要根据特定应用的要求选择适当的滤波器类型和参数,并考虑信号频率范围、阶数、滤波器系数等因素。
2.实验过程中,确保滤波器的输入和输出数据类型一致,以防止数据损失或溢出。
3. 在分析滤波结果时,可以结合音频播放软件或工具,如MATLAB中的“sound”函数,以便直接听取滤波效果,并对滤波器参数进行调整。
总结:本实验指南介绍了如何使用FIR滤波器实现音频滤波。
通过选择合适的滤波器类型和参数,将音频信号输入滤波器中,并对其进行滤波处理,可以去除或增强特定频率分量。
此外,可以使用频谱分析工具来检查滤波后信号的频率特性变化。
音乐滤波去噪——使用flattopwin窗设计的FIR滤波器
音乐信号滤波去噪——使用FLATTOPWIN窗设计的FIR滤波器学生姓名:指导老师:黄红兵摘要本次课程设计是使用Flattopwin窗设计FIR滤波器对音乐信号进行滤波去噪。
通过MATLAB软件,运用窗函数法来设计滤波器。
从网上下载一段满足要求的音乐,为它加入噪声信号,观察加噪前后的频谱,采用窗函数设计法,给定相应的技术指标,设计一个满足要求的滤波器,对音乐信号进行滤波去噪处理。
比较原始音乐信号与滤波后的时域波形图,频谱图,回放滤波后的音乐信号,可听见滤波后的音乐信号与原始音乐信号无大致差别,成功的实现了滤波达到了设计要求。
关键词MATLAB;滤波去噪;FIR滤波器;Flattopwin窗;1 引言本次课程设计是通过窗函数法设计一个Flattopin的FIR滤波器对有噪声的音乐信号进行滤波去噪。
在课程设计中,了解FIR滤波器的性能与原理,也了解他的设计方法和步骤。
掌握了用MATLAB语言设计滤波器,通过观察音乐信号滤波前后的时域信号以及频谱更加具体的了解了滤波器的作用。
1.1 课程设计目的通过利用MATLAB 软件来利用Flattopin设计FIR滤波器对音乐信号滤波去噪。
使得我们更加熟悉MATLAB的语言环境,更加熟悉MATLAB语言的编程规则。
并且在课程设计中通过观察滤波器的幅度,相位图对Flattowin有了更加深刻地了解。
也在窗函数的设计过程中,对滤波器的性能,功能以及设计方法有着更具体的了解和体验。
通过本次课程设计,增强了我们独立解决问题的能力,提高了自己的动手能力。
1.2 课程设计要求从网上下载一段.wav格式的音乐,绘制观察时域波形及频谱图。
对音乐信号加入噪声干扰,根据Flattopwin的性能指标合理设计FIR滤波器,再用滤波器对加入干扰的音乐信号进行滤波去噪,比较滤波前后的频谱图并进行分析。
再回放语音信号对比原语音信号,查看滤波器是否对语音信号进行了滤波去噪。
1.3课程设计平台本次课程设计通过MATLAB实现,MATLA是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。
FIR滤波器实现音乐信号的滤波去噪
FIR滤波器实现音乐信号的滤波去噪FIR (Finite Impulse Response) 滤波器是一种数字滤波器,常用于音频信号处理中。
它的工作原理是通过对输入信号的每个样本进行线性加权求和,得到滤波后的输出信号。
FIR滤波器最常用于滤波去噪、频率响应等应用上。
在音乐信号处理中,FIR滤波器可以用于去除噪声,使得音乐听起来更加清晰、纯净。
下面将详细介绍FIR滤波器实现音乐信号滤波去噪的过程。
首先,需要明确滤波器的设计目标。
在音乐信号处理中,通常希望尽可能保留音乐信号的频率特征,同时去除噪声或其他不需要的信号。
因此,FIR滤波器需要具有如下特性:1.线性相位响应:在音频信号中,线性相位响应可以确保滤波后的信号不会有明显的时延,使得音乐听起来更加自然。
2.频率选择性:FIR滤波器可以对不同频率范围内的信号进行有选择性的处理。
这意味着可以设计不同的系数来强调或抑制特定频率段的音频信号。
接下来,需要设计滤波器的系数。
FIR滤波器的系数决定了滤波器的频率响应。
常见的设计方法有窗函数法、频率采样法等。
在音乐信号的滤波去噪中,常见的方法是使用窗函数法进行系数设计。
通过选择合适的窗函数,可以在频域上改变频率响应,并且窗函数具有较好的抑制能力,可以减少滤波器陷波带的泄露。
常见的窗函数有矩形窗、汉宁窗、海明窗等。
系数设计完成后,需要将音乐信号输入到FIR滤波器中进行滤波去噪。
这可以通过卷积运算实现,即将输入信号的每个样本与滤波器的系数进行点乘,并求和得到输出信号的样本。
FIR滤波器可以在时域上滤除音乐信号中的噪声成分,从而提高音乐的质量和清晰度。
它可以精确地控制滤波器的频率响应,选择性地增强或抑制音频信号的不同频率组成部分,从而实现滤波去噪的效果。
除了基本的FIR滤波器之外,还可以通过级联多个FIR滤波器来实现更复杂的滤波效果。
这种级联滤波器的设计方式可以更好地适应不同的音乐信号滤波需求,提高滤波器的性能。
总结起来,FIR滤波器在音乐信号处理中具有重要的应用。
语音信号滤波去噪——使用TUKEYWIN窗设计的FIR滤波器.
语音信号滤波去噪——使用TUKEYWIN窗设计的FIR滤波器摘要本课程设计主要使用TUKEYWIN窗设计的FIR滤波器对语音信号进行滤波去噪。
课程设计的的平台为MATLAB。
采集一段语音信号,绘制波形并观察其频谱,给定相应技术指标,用窗函数法设计一个满足指标的FIR滤波器,对该语音信号进行滤波去噪处理。
根据滤波后的时域图和原始语音信号时域图的比较,以及滤波后信号的频谱图和原始音乐信号频谱图的比较,最后回放滤波后音乐信号,滤波后的音乐信号与原始音乐信号一样清晰,成功地实现了滤波,达到了设计的要求。
关键词课程设计;滤波去噪;FIR滤波器;TUKEYWIN窗;MATLAB1 引言本课程设计是采用TUKEYWIN窗设计的FIR滤波器对语音信号进行滤波去噪。
通过课程设计了解FIR滤波器设计的原理和步骤,掌握用Matlab语言设计滤波器的方法,了解DSP对FIR滤波器的设计及编程方法。
通过观察音乐信号滤波前后的时域波形的比较,加深对滤波器作用的理解。
通过对比滤波前后波形图的比较和放滤波前后音乐信号的对比,可以看出滤波器对有用信号无失真放大具有重大意义。
1.1 课程设计目的熟悉Matlab语言环境,掌握Matlab语言的编程规则,利用TUKEYWIN窗函数设计法来设计符合要求的FIR滤波器来实现语音信号的滤波去噪。
并绘制滤波前后的时域波形和频谱图。
根据图形分析判断滤波器设计的正确性。
通过本次课程设计熟悉利用TUKEYWIN窗函数法设计FIR滤波器的过程。
增强自己独立解决问题的能力,提高自己的动手能力。
加深对理论知识联系实际问题的理解。
为以后的工作奠定坚实的基础。
1.2 课程设计要求录制一段语音信号,绘制观察波形及频谱图。
根据TUKEYWIN的性能指标合理设计FIR滤波器,对语音信号加入干扰,再用滤波器对干扰语音信号进行滤波去噪,比较滤波前后的频谱图并进行分析。
再回放语音信号对比原语音信号。
看滤波器是否对语音信号进行了滤波去噪。
弹拨音乐滤波去噪--使用三角窗设计FIR滤波器要点
长沙理工大学城南学院《数字信号处理》课程设计报告任健院系城南学院专业通信工程班级通信1104班学号 2学生姓名任健指导教师熊文杰课程成绩完成日期2014年7月4日课程设计成绩评定院系城南学院专业通信工程班级通信1104班学号 2学生姓名任健指导教师熊文杰完成日期2014 年7月 4 日指导教师对学生在课程设计中的评价指导教师对课程设计的评定意见课程设计任务书城南学院通信工程专业语音信号滤波去噪——使用三角窗设计FIR滤波器学生姓名:任健指导老师:熊文杰摘要本课程设计主要是通过使用三角窗设计一个FIR滤波器以对语音信号进行滤波去噪处理。
本设计首先用麦克风采集一段语音信号,绘制波形并观察其频谱,给定相应技术指标,用三角窗设计一个满足指标的FIR滤波器,对该语言信号进行滤波去早处理,比较滤波前后的波形和频谱分析,根据结果和学过的理论的出合理的结论。
通过对比滤波前后的波形图,深入了解滤波器的相关技术指标和性能,掌握设计滤波器的基本方法,通过程序调试及完善,该设计基本满足设计要求。
关键词MATLAB;三角窗;FIR滤波器;滤波去噪1 引言数字信号处理是将信号以数字方式表示并处理的理论和技术。
数字信号处理与模拟信号处理是信号处理的子集。
数字信号处理的目的是对真实世界的连续模拟信号进行测量或滤波。
因此在进行数字信号处理之前需要将信号从模拟域转换到数字域,这通常通过模数转换器实现。
而数字信号处理的输出经常也要变换到模拟域,这是通过数模转换器实现的[1]。
数字滤波器是一种用来过滤时间离散信号的数字系统,它是通过对抽样数据进行数学处理来达到频域滤波的目的。
随着现代通信的数字化,数字滤波器变得更加重要。
数字滤波器的种类很多,但总的来说可以分成两大类,一类是经典滤波器,另一类可称为现代滤波器。
从滤波特性方面考虑,数字滤波器可分成数字高通、数字低通、数字带通和数字带阻等滤波器。
从实现方法上考虑,将滤波器分成两种,一种称为无限脉冲响应滤波器,简称IIR(Infinite Impulse Response)滤波器,另一种称为FIR(Finite Impulse Response)滤波器[2]。
用窗口法设计FIR数字滤波器
一.实验目的了解一个实际滤波器设计过程,加深掌握用窗口发设计FIR数字滤波器的原理和窗函数对数字滤波器性能的影响。
二.实验原理设FIR滤波器的单位冲激响应h (n)为一个N点序列,0 ≤ n ≤N —1,则滤波器的系统函数为H(z)=∑h(n)*z^-n。
就是说,它有(N—1)阶极点在z = 0处,有(N—1)个零点位于有限z平面的任何位置。
三.实验内容与要求1.编写用改进的升余弦窗设计FIR线性相应低通数字滤波器的程序,已知wc=0.5,N=21.这里wc为低通滤波器的截止频率,N为滤波器的长度,滤波器的阶数为N-1.2.调试运行程序,要求在屏幕上显示出单位脉冲响应h(n)的数值.画出其幅度响应 |H |及20lg |H |的曲线.3.画出窗口函数w(n)及其频谱W的幅度|W |和20lg |W |的曲线.四.试验程序及图谱1.N=21;Window=hamming(N);wc=0.5*pi;b=fir1(N-1,wc/pi,window);freqz(b,1,512);2.N=21;wc=0.5*pi;r=(N-1)/2;n=0:N-1;hdu=sin(wc*(n-r))/pi./(n-r);if rem(N,2)~=0;hdu(r+1)=wc/pi;endwn=hamming(N);h=hdu.*wn';H=fft(h,512);w=2*[0:511]/512;subplot(3,1,1);plot(w,20*log10(abs(H)));subplot(3,1,2);plot(hdu);subplot(3,1,3);plot(w,abs(H));3.N=21;wc=0.5*pi;r=(N-1)/2;n=0:N-1;hdu=sin(wc*(n-r))/pi./(n-r);if rem(N,2)~=0;hdu(r+1)=wc/pi;endwn=hamming(N);h=hdu.*wn';H=fft(h,512);Wn=fft(wn,100);magWn=abs(Wn);phaWn=angle(Wn);w=2*[0:511]/512;subplot(3,1,1);plot(wn);subplot(3,1,2);stem(magWn);subplot(3,1,3);stem(20*log10(magWn));一.实验目的1)掌握数字滤波器的计算机仿真方法。
窗函数法设计FIR滤波器
实验四窗函数法设计FIR滤波器一、在MATLAB中产生窗函数十分简单:(1)矩形窗(Rectangle Window)调用格式:w=boxcar(n),根据长度n产生一个矩形窗w。
(2)三角窗(Triangular Window)调用格式:w=triang(n) ,根据长度n产生一个三角窗w。
(3)汉宁窗(Hanning Window)调用格式:w=hanning(n) ,根据长度n产生一个汉宁窗w。
(4)海明窗(Hamming Window)调用格式:w=hamming(n) ,根据长度n产生一个海明窗w。
(5)布拉克曼窗(Blackman Window)调用格式:w=blackman(n) ,根据长度n产生一个布拉克曼窗w。
(6)恺撒窗(Kaiser Window)调用格式:w=kaiser(n,beta) ,根据长度n和影响窗函数旁瓣的β参数产生一个恺撒窗w。
二、基于窗函数的FIR滤波器设计利用MATLAB提供的函数firl 来实现调用格式:firl (n,Wn,’ftype’,Window),n为阶数、Wn是截止频率(如果输入是形如[W1 W2]的矢量时,本函数将设计带通滤波器,其通带为W1<ω<W2)、ftype是滤波器的类型(低通-省略该参数、高通-ftype=high、带阻-ftype=stop)、Window是窗函数。
1.设计一个长度为8的线性相位FIR滤波器。
其理想幅频特性满足:Window=boxcar(8);b=fir1(7,0.4,Window);freqz(b,1)Window=blackman(8); b=fir1(7,0.4,Window); freqz(b,1)2.设计线性相位带通滤波器,其长度N=15,上下边带截止频率分别为W1= 0.3π,w2=0.5πWindow=blackman(16);b=fir1(15,[0.3 0.5],Window);freqz(b,1)。
数字信号处理课程设计语音信号的数字滤波fir数字滤波器的(三角)窗函数法设计
a.一般FIR滤波器的横截型结构:给定差分方程为:。
b.线性相位FIR滤波器的横截型结构①N为奇数时线性相位FIR滤波器实现结构如2图所示:②N为偶数时线性相位FIR滤波器实现结构如3图所示:图2 N为基数时图3 N为偶数时(2)级联型将H(z)分解为若干个实系数一阶或二阶因子相乘:级联结构如下图4所示:图4 级联结构(3)频率取样型若FIR滤波器的冲激响应为有限长(N点)序列h(n),则有如5图所示的关系:图5 关系图因此,对h(n)可以利用DFT得到H(k),然后利用内插公式:(1)来表示系统函数,这就为FIR滤波器提供了另外一种结构:频率抽样结构,∏=--++=LkkkzzhzH12,21,1)1(]0[)(ββ11β21βL1βL2β12β22βx[k]y[k]1-z1-zh[0]1-z1-z1-z1-z这种结构由两部分级联而成:分析系统函数(4)快速卷积结构若FIR 滤波器的单位冲激响应h(n)是一个N1点有限长序列,输入x(n)是一个N2点有限 长序列,那么输出y(n)是x(n)与h(n)的线性卷积,它是一个L =N1+N2-1点的有限长序 列。
而圆周卷积可以用DFT 和IDFT 的方法来计算,得到FIR 滤波器的快速卷积结构如图 6所示:图6 快速卷积结构2.2.4 线性相位FIR 数字滤波器的条件和特点 (1)线性相位条件对于长度为N 的h(n),传输函数为n j N n j e n h e H ωω--=∑=)()(1(2))()()(ωθωωj g j e H eH = (3)式中,)(ωg H 称为幅度特性, )(ωθ称为相位特性。
其中,这里)(ωg H 不同于ωj e H (,)(ωg H 为ω的实函数,可能取负值,而ωj e H (总是正值。
ωj e H (线性相位是指)(ωθ是ω的线性函数,即)(ωθ=τω-,•τ-为常数 (4) 如果)(ωθ满足下式)(ωθ=00,θτωθ-是起始相位 (5)此时)(ωθ不具有线性相位,但以上两种情况都满足群时延是一个常数,即τωωθ-=d d /)( (6) 满足第一类线性相位的条件是: )1()(--=n N h n h (7)②w = triang(n,sflag):参数sflag用来控制窗函数首尾的两个元素值;其取值为symmetric或periodic;默认值为symmetric。
音乐滤波去噪——使用flattopwin窗设计的FIR滤波器
音乐信号滤波去噪——使用flattopwin窗设计的FIR滤波器之五兆芳芳创作学生姓名:指导老师:黄红兵摘要本次课程设计是使用Flattopwin窗设计FIR滤波器对音乐信号进行滤波去噪.通过MATLAB软件,运用窗函数法来设计滤波器.从网上下载一段满足要求的音乐,为它参加噪声信号,不雅察加噪前后的频谱,采取窗函数设计法,给定相应的技巧指标,设计一个满足要求的滤波器,对音乐信号进行滤波去噪处理.比较原始音乐信号与滤波后的时域波形图,频谱图,回放滤波后的音乐信号,可听见滤波后的音乐信号与原始音乐信号无大致不同,成功的实现了滤波达到了设计要求.关头词MATLAB;滤波去噪;FIR滤波器;Flattopwin窗;1 引言本次课程设计是通过窗函数法设计一个Flattopin的FIR滤波器对有噪声的音乐信号进行滤波去噪.在课程设计中,了解FIR滤波器的性能与原理,也了解他的设计办法和步调.掌握了用MATLAB语言设计滤波器,通过不雅察音乐信号滤波前后的时域信号以及频谱加倍具体的了解了滤波器的作用.1.1 课程设计目的通过利用MATLAB 软件来利用Flattopin设计FIR滤波器对音乐信号滤波去噪.使得我们加倍熟悉MATLAB的语言情况,加倍熟悉MATLAB语言的编程法则.并且在课程设计中通过不雅察滤波器的幅度,相位图对Flattowin有了加倍深刻地了解.也在窗函数的设计进程中,对滤波器的性能,功效以及设计办法有着更具体的了解和体验.通过本次课程设计,增强了我们独立解决问题的能力,提高了自己的动手能力.1.2 课程设计要求从网上下载一段.wav格局的音乐,绘制不雅察时域波形及频谱图.对音乐信号参加噪声搅扰,按照Flattopwin的性能指标公道设计FIR滤波器,再用滤波器对参加搅扰的音乐信号进行滤波去噪,比较滤波前后的频谱图并进行阐发.再回放语音信号对比原语音信号,查抄滤波器是否对语音信号进行了滤波去噪.本次课程设计通过MATLAB实现,MATLA是美国MathWorks 公司出品的商业数学软件,用于算法开发、数据可视化、数据阐发以及数值计较的初级技巧计较语言和交互式情况,主要包含MATLAB和Simulink两大部分.MATLAB是matrix&laboratory两个词的组合,意为矩阵工场(矩阵实验室).是由美国mathworks公司宣布的主要面对科学计较、可视化以及交互式程序设计的高科技计较情况.它将数值阐发、矩阵计较、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功效集成在一个易于使用的视窗情况中,为科学研究、工程设计以及必须进行有效数值计较的众多科学领域提供了一种全面的解决计划,并在很大程度上解脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计较软件的先进水平[1].MATLAB软件包含五大通用功效:数值计较功效(Nemeric);符号运算功效(Symbolic);数据可视化功效(Graphic);数据图形文字统一处理功效(Notebook)和建模仿真可视化功效(Simulink).其中,符号运算功效的实现是通过请求MAPLE内核计较并将结果前往到MATLAB命令窗口.该软件有三大特点:一是功效强大;二是界面友善、语言自然;三是开放性强.MATLAB在线性代数、矩阵阐发、数值及优化、数理统计和随机信号阐发、电路与系统、系统动力学、信号和图像处理、控制理论阐发和系统设计、进程控制、建模和仿真、通信系统、以及财务金融等众多领域的理论研究和工程设计中得到了普遍应用.MATLAB在信号与系统中的应用主要包含符号运算和数值计较仿真阐发.由于信号与系统课程的许多内容都是基于公式演算,而MATLAB借助符号数学东西箱提供的符号运算功效能根本满足信号与系统课程的需求.例如,解微分方程、傅里叶正反变换、拉普拉斯正反变换、z正反变换等.MATLAB在信号与系统中的另一主要应用是数值计较与仿真阐发,主要包含函数波形绘函数运算、冲激响应与阶跃响应仿真阐发、信号的时域阐发、信号的频谱阐发、系统的S域阐发、零顶点图绘制等内容.数值计较仿真阐发可以帮忙学生更深入理解信号与系统的理论知识,并为未来使用MATLAB进行信号处理领域的各类阐发和实际应用打下根本[2].2 根本理论2.1 FIR滤波器FIR滤波器:有限长单位冲激响应滤波器,是数字信号系统中最根本的元件,它可以在包管任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统.因此,FIR滤波器在通信、图像处理、模式识别等领域都有着普遍的应用.FIR滤波器的根本结构:横截型,级联型,频率抽样型,快速卷积型,在硬件上一般通过集成电路,DSP芯片,可编程逻辑器件,FPGA/CPLD来实现[3].FIR数字滤波器的特点:优点:(1) 很容易取得严格的线性相位,避免所处理的信号产生相位失真;(2) 顶点全部在原点,无稳定性问题;(3) 任何一个非因果的有限长序列,总可以通过一定的延时,转化为因果序列,所以因果性总是可以满足;(4) 无反应运算,运算误差小.缺点:(1) 因为无顶点,要取得好的过渡带特性,要以较高的结束为代价;(2) 无法利用模拟滤波器的设计结果,一般无解析设计公式,要借助帮助程序设计完成.一般来说滤波器的设计在于寻找一个频率响应去迫近,迫近的办法有三种窗函数设计法(时域迫近);频率采样设计法(频域迫近);最优化设计法(等波纹迫近).本次课程设计采取窗函数设计法[4].2.2 窗口设计法窗函数设计法是从单位脉冲响应序列着手,使得迫近理想单位脉冲响应序列(2.1)窗函数设计FIR滤波器的步调:(1)按照技巧要求确定滤波器的频率响应确定其对应的单位脉冲响应.(2.2)(2)按照对过渡带及阻带衰减指标的要求,选择窗函数形式,并估量窗口长度N.(3)计较滤波器的单位取样响应.(2.2)(4)计较滤波器的频率响应.(2.3)改动窗函数的形状,可改良滤波器的特性,窗函数有许多种,但要满足以下两点:(1) 窗谱主瓣宽度要窄,已取得较陡的过渡带;(2) 相对于主瓣宽度,旁瓣要尽可能小,是能量尽量集中在主瓣中,这样就可以减小肩峰和余振,以提高阻带衰减和通带平稳性.但实际上这两点不克不及兼得,一般总是通过增加主瓣宽度来换取对旁瓣的抑制[5].罕有的窗函数性能表如表2.1所示:2.3 FLATTOPWIN窗w=Flattopwin (L) 前往L-点Flattopwin窗口中列向量.Flattopwin窗的滤波器的过渡带宽为19.6π/M,最小阻带衰减108db.定义式:(2.4)时间波形和幅度谱:图2.1 Flattopwin窗的时间波形图2.2 Flattopwin窗的幅度谱(1) 横截型差分方程:(2.5)图2.3 FIR滤波器横截型结构(2)级联型将差分方程分化为实系数二阶因式乘积形式:(2.6)图2.4 FIR滤波器级联型结构当N为偶数时,其中有一个=0(N-1个零点).级联型每个根本节控制一对零点,便于控制滤波器的传输零点;系数比直接型多,所需乘法运算多.(3)线性相位型FIR 的重要特点是可设计成具有严格线性相位的滤波器,此时满足偶对称或奇对称.偶对称时:(2.7)N为奇对称时:(2.8)图2.5 N为偶数时的线性相位结构FIR滤波器图2.6 奇为偶数时的线性相位结构FIR滤波器(5)频率采样型H(z)由两部分组成:第一部分(FIR部分):(2.9)第二部分(IIR部分):(2.10)图2.7 FIR滤波器的频率采样型结构这一结构的最大的特点是它的系数H(k)直接就是滤波器在处的响应,因此控制滤波器响应很直接[6].3 设计步调3.1 设计流程图按照设计的要求,从网上下载一段音乐信号,在通过系统自带的软件对音乐信号进行格局转换以及剪裁,然后对音乐信号参加噪声搅扰,再利用Flattopwin窗设计公道的FIR滤波器.最后用滤波器对搅扰后的音乐信号进行滤波去噪.具体设计流程图如下图3.1所示:3.2 录制音乐信号从电脑上下载一段格局为.wav的纯音乐,并命名为yinyue.wav,通过录音机将原始音乐信号的格局更改成PCM编码,采样率为8KHz,8位,单声道,7KB/s并将其裁剪为10s的文件,调用wavread函数读取信号的参数,绘制出音乐信号的时域波形.图3.4 原始音乐信号时域波形图绘制音乐信号的时域波形后,对音乐信号进行快速傅里叶变换,得到信号的频谱特性,绘制出音乐信号的频谱图,向音乐信号参加噪声,并对参加噪声的信号进行快速傅里叶变换,绘制出参加噪声后的时域波形,以及频谱图,将参加噪声后的信号时域波形图以及频谱图与未参加之前的波形图和频谱图进行对比.>>x=x'; y=x+0.1*sin(fn*2*pi*t); %在原信号中参加噪声>>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; % 计较频谱频率规模图3.5 搅扰前后信号时域图与频谱图的比较3.3 滤波器设计按照参加噪声搅扰后的频谱图,给出滤波器的性能指标,在通过窗函数法设计得到自己的滤波器,得到数字滤波器的参数a,b.其中a为系统函数的分母系数,b为系统函数的份子系数.在通过调用函数便可求得滤波器的频率响应.在计较滤波器的实际AS以及RP 查抄滤波器是否满足设计指标.>>fpd=1825;fsd=2075;fsu=2325;fpu=2575;Rp=1;As=20; % 带阻滤波器设计指标>>RP=-min(db([1:wpd/dw+1,ceil(wpu/dw)+1:end])) %计较滤波器的指标查抄是否达标>>AS=-max(db(wsd/dw+1:wsu/dw+1))通过计较可以得出RP=0.7939,AS=20.3545满足指标要求,则滤波器合适要求.3.4 信号滤波处理滤波器设计完成后,在MATLAB平台上用函数filter对加有噪声的音乐信号进行滤波,并求得滤波后的频谱.绘制滤波前后音乐信号的时域波形图和频谱图对比图,以及原信号的时域波形图及频谱图.>>y_fil=filter(h_bs,1,y);%用设计好的滤波器对y进行滤波图3.7 滤波前后音乐信号的时域波形图和频谱图对比图3.5 结果阐发不雅察滤波前后的频谱图,可明显看看到搅扰噪声的频谱被滤除,不雅察滤波后的时域波形图与原信号的波形图根本一致,在通过sound()函数对经过Flattopwin窗设计的FIR滤波器之后的音乐信号进行回访可以听出滤波之后的信号跟原始信号一样清晰,完全滤除掉了噪声的搅扰.>> sound (y_fil,fs,bits); %播放滤波后的音乐信号>>sound(x,fs,bits); % 按指定的采样率和每样本编码位数回放所得结果证明了用Flattopwin窗设计的FIR滤波器对音乐信号进行滤波去噪是成功的.3.6 滤波器结构设计在绘制滤波器结构时由于我选择的级联型,因此要计较相关参数,可以通过相关函数来进行计较>>[C,B,A]=DIR2CAS(h_bs,1); %计较级联型滤波器的参数然后在Viso中绘制出FIR滤波器的级联型结构便可.图3.6 FIR滤波器的级联型结构4出现的问题及解决办法在本次课程设计中我遇到的问题如下:1、绘制参加噪声搅扰的频谱图是不知如何调控纵坐标,导致频谱图十分的不睬想2、在达到设计指标且完美的滤除噪声搅扰信号时,滤波器的阶数总是过大,而将阶数下降时,滤波器总是不克不及比较完美的滤除噪声3、绘制滤波器结构时选择的是级联型,但是却找不到,计较级联型参数的函数针对以上问题,相应的解决计划如下:1、通过向同学询问了解到有函数可以用来调控横纵坐标2、通过不竭设置滤波器参数值最终设计出理想的滤波器,可在阶数较低的情况下完美的滤出噪声,也达到了设计指标.3、在查阅历届的PPT时,发明了用于计较直接型转换级联型滤波器参数值的函数.5 结束语本次课程设计,我的课题是利用Flattopwin窗函数设计FIR 滤波器对音乐信号滤波去噪.在经历了一个暑假的抓紧,脑袋里那点未几的滤波器的只是,早已魄散九霄.但是在实习的进程中,通过温习课本以及通过频谱图,对滤波器的性能以及功效有了加倍深刻的了解.每次课程设计都是一次历练,是对知识的查漏补缺,是一次给自己深刻反思的机遇.每一次实习,都可以意识到自己所欠缺的,意识到在实践面前理论是如何的单薄.知识的创造永远是为了人类的成长而办事的,只存在于理论的知识是无法创造它所应有的价值,而进步却又来源于实践和人民的需求,我希望我们用时间去学习的东西能阐扬它应有的价值,甚至于超出.每一次实践都可以学到许多课本上所没有的只是,也了解到以前所没有注意到的方面,而在时间时,不竭锻炼的对立思考的能力更是能让我们终生受益.相对与知识,意识总是显得尤为重要.而在实践中,重温的不但仅是知识更是,我们在于以后是的意识,去独立的思考问题,去查阅书籍,去探寻奇妙.而这些是我们平时所不克不及学到的.我总是希望自己能从理论走向时间,从书本走向课本,希望自己能用自己所学的为这个成长的社会的扶植献上自己的一点微薄之力.参考文献[1]张志涌.精通MATLAB [M].6.5版.北京:北京航空航天大学出版社,2003.[2]约翰·G·普罗克斯.数字信号处理[M].西安:西安交通大学出版社,2009.[3]张小虹.信号系统与数字信号处理[M].第1版.西安:西安电子科技出版社,2002.[4]谢德芳.数字信号处理[M].北京:科学出版社,2005.[5]郝建军.数字通信[M].第2版.北京:北京邮电大学出版社,2010.[6]张威.MATLAB 根本与编程入门[M].西安:西安电子科技大学出版社,2010.附录一:音乐信号滤波去噪——使用FLARTOPWIN滤波器%程序功效:在Matlab中,用窗口设计法设计FIR滤波器%程序作者:蒋敏%最后修改日期:2016-3-1程序一------------------------(在音乐信号中参加噪声搅扰)------------------------------------------[x,fs,bits]=wavread('e:\yinyue.wav'); % 输入参数为文件的全路径和文件名,输出的第一个参数是每个样本的值,fs是生成该波形文件时的采样率,bits是波形文件每样本的编码位数.sound(x,fs,bits); % 按指定的采样率和每样本编码位数回放N=length(x); % 计较信号x的长度fn=2200; % 单频噪声频率t=0:1/fs:(N-1)/fs; % 计较时间规模,样本数除以采样频率x=x'; y=x+0.1*sin(fn*2*pi*t); %在原信号中参加噪声sound(y,fs,bits); % 应该可以明显听出有锋利的单频啸叫声程序二-----------------------(绘制加噪前后音乐信号的时间波形和频谱)------------------------- 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; % 计较频谱频率规模figure(); %绘制加噪前后音乐信号的时间波形和频谱subplot(221);plot(t,x);title('原始音乐信号');xlabel('时间(单位:s )');ylabel('幅度'); grid on;subplot(223);plot(t,y);title('参加搅扰信号的音乐信号');xlabel('时间(单位:s )');ylabel('幅度');grid on;subplot(222);plot(f,X);title('音乐信号幅度谱');xlabel('频率(单位:Hz )');ylabel('幅度谱');grid on;subplot(224);plot(f,Y);axis([0,4000,0,400]); title('参加搅扰信号的音乐信号幅度谱');xlabel('频率(单位:Hz )');ylabel('幅度谱');grid on;程序三--------------------------------(设计滤波器)----------------------------------------------------fpd=1825;fsd=2075;fsu=2325;fpu=2575;Rp=1;As=20; % 带阻滤波器设计指标fcd=(fpd+fsd)/2;fcu=(fpu+fsu)/2;df=min((fsd-fpd),(fpu-fsu)); % 计较上下边带中心频率,和频率距离wcd=fcd/fs*2*pi;wcu=fcu/fs*2*pi;dw=df/fs*2*pi; % 将Hz为单位的模拟频率换算为rad为单位的数字频率wsd=fsd/fs*2*pi;wsu=fsu/fs*2*pi;wpd=fpd/fs*2*pi;wpu=fpu/fs*2*pi;M=ceil(8.5*pi/dw)+1 ; % 计较窗设计该滤波器时需要的阶数n=0:M-1; % 定义时间规模w_par=(flattopwin (M)); % 产生M阶的Flattopwin窗hd_bs=IDEAL_LP(wcd,M)+IDEAL_LP(pi,M)-IDEAL_LP(wcu,M);% 调用自编函数计较理想带阻滤波器的脉冲响应h_bs=w_par'.*hd_bs; % 用窗口法计较实际滤波器脉冲响应[db,mag,pha,grd,w]=FREQZ_M(h_bs,1); % 调用自编函数计较滤波器的频率特性dw=2*pi/1000;RP=-min(db([1:wpd/dw+1,ceil(wpu/dw)+1:end])) %计较滤波器的指标查抄是否达标AS=-max(db(wsd/dw+1:wsu/dw+1))figure() ;subplot(2,2,1);plot(w/pi,db);title('滤波器幅度响应图');xlabel('w/pi');ylabel('db');axis([0,1,-70,10]);line([0,1],[-As,-As],'color','r','linestyle','--','LineWidth',2);line([0,1],[-Rp,-Rp],'color','r','linestyle','--','LineWidth',2);line([wsu/pi,wsu/pi],[-70,10],'color','r','linestyle','--','LineWidth',2);line([wsd/pi,wsd/pi],[-70,10],'color','r','linestyle','--','LineWidth',2); subplot(2,2,2);plot(w/pi,mag);title('滤波器幅度响应图');xlabel('w/pi');ylabel('幅度mag'); grid on;subplot(2,2,3);plot(w/pi,pha);title('滤波器相位响应图');xlabel('w/pi');ylabel('相位pha'); grid on;subplot(2,2,4);stem(n,h_bs);title('滤波器脉冲响应图');xlabel('n');ylabel('h(n)');grid on;程序四-------------------------------------(滤波)------------------------------------------------------y_fil=filter(h_bs,1,y); % 用设计好的滤波器对y进行滤波Y_fil=abs(fft(y_fil));Y_fil=Y_fil(1:N/2); % 计较频谱取前一半figure();subplot(321);plot(t,x);title('原始音乐信号');xlabel('时间(单位:s )');ylabel('幅度'); grid on;subplot(323);plot(t,y);title('参加搅扰信号的音乐信号');xlabel('时间(单位:s )');ylabel('幅度');grid on;subplot(322);plot(f,X);title('音乐信号幅度谱');xlabel('频率(单位:Hz )');ylabel('幅度谱');grid on;subplot(324);plot(f,Y);axis([0,4000,0,400]); title('参加搅扰信号的音乐信号幅度谱');xlabel('频率(单位:Hz )');ylabel('幅度谱');grid on;subplot(325);plot(t,y_fil); title('滤波后的音乐信号');xlabel('时间(单位:s )');ylabel('幅度');grid on;subplot(326);plot(f,Y_fil);title('滤波后的音乐信号幅度谱');xlabel('频率(单位:Hz )');ylabel('幅度谱'); grid on;sound (y_fil,fs,bits);[C,B,A]=DIR2CAS(h_bs,1); %计较级联型滤波器参数附录二:函数FREQZ_M.M定义:function [db,mag,pha,grd,w] = freqz_m(b,a);% freqz 子程序的改良版本% ------------------------------------% [db,mag,pha,grd,w] = freqz_m(b,a);% db = [0 到pi弧度]区间内的相对振幅(db)% mag = [0 到pi弧度]区间内的绝对振幅% pha = [0 到pi弧度]区间内的相位响应% grd = [0 到pi弧度]区间内的群迟延% w = [0 到pi弧度]区间内的501个频率样本向量% b = Ha(z)的份子多项式系数(对FIR b=h)% a = Ha(z)的分母多项式系数(对FIR: a=[1])%[H,w] = freqz(b,a,1000,'whole');H = (H(1:1:501))'; w = (w(1:1:501))';mag = abs(H);db = 20*log10((mag+eps)/max(mag));pha = angle(H);% pha = unwrap(angle(H));grd = grpdelay(b,a,w);% grd = diff(pha);% grd = [grd(1) grd];% grd = [0 grd(1:1:500); grd; grd(2:1:501) 0];% grd = median(grd)*500/pi;附录三:函数IDEAL_LP.M定义:function hd = ideal_lp(wc,M);% 理想低通滤波器计较% --------------------------------% [hd] = ideal_lp(wc,M)% hd = 0 to M-1之间的理想脉冲响应% wc = 截止频率(弧度)% M = 理想滤波器的长度%alpha = (M-1)/2;n = [0:1:(M-1)];m = n - alpha + eps;hd = sin(wc*m) ./ (pi*m);附录3function [b0,B,A] = dir2cas(b,a);% 直接型到级联型的型式转换(单数对型)% ---------------------------------------------------------% [b0,B,A] = dir2cas(b,a)% b = 直接型的份子多项式系数% a = 直接型的分母多项式系数% b0 = 增益系数% B = 包含各bk的K乘3维实系数矩阵% A = 包含各ak的K乘3维实系数矩阵% compute gain coefficient b0b0 = b(1); b = b/b0;a0 = a(1); a = a/a0;b0 = b0/a0;M = length(b); N = length(a);if N > Mb = [b zeros(1,N-M)];elseif M > Na = [a zeros(1,M-N)]; N = M;elseNM = 0;endK = floor(N/2); B = zeros(K,3); A = zeros(K,3); if K*2 == N;b = [b 0];a = [a 0];endbroots = cplxpair(roots(b));aroots = cplxpair(roots(a));for i=1:2:2*KBrow = broots(i:1:i+1,:);Brow = real(poly(Brow));B(fix((i+1)/2),:) = Brow;Arow = aroots(i:1:i+1,:);Arow = real(poly(Arow));A(fix((i+1)/2),:) = Arow;end。
语音信号的数字滤波——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滤波器
摘要本课程设计的主要目的是在MATLAB环境下,使用窗口设计法设计一个滤波器,并对语音信号进行滤波去噪。
开发平台为MATLAB7.0,设计方法为窗口设计法。
用麦克风采集一段语音信号,绘制波形并观察其频谱,给定相应技术指标,用凯塞窗设计一个满足指标的FIR滤波器,对该语音信号进行滤波去噪处理,比较滤波前后的波形和频谱并进行分析。
在滤波前后语音信号波形的变化中,由于我们录制的语音信号噪声不大,所以观察并不明显,但在频域波形中,我们可以明显的看到设计的滤波器对语音信号进行了滤波处理,将噪声进行了滤除。
此次滤波基本达到了要求,完成了设计指标。
关键词滤波去噪;FIR滤波器;凯塞窗;MATLAB1 引言本课程设计是采用凯塞窗设计的FIR滤波器对语音信号滤波去噪。
通过课程设计了解FIR滤波器的原理及使用方法,了解使用MATLAB语言设计FIR滤波器的方法,了解DSP对FIR滤波器的设计及编程方法。
通过观察滤波前后的时域图形,加深对FIR 滤波器作用的理解。
通过对比滤波器前后的波形及回放滤波前后的语音信号,可以看出滤波器对有用信号的无失真放大具有重要作用。
语音信号是基于时间轴上的一维数字信号,在这里主要是对语音信号进行频域上的分析。
在信号分析中,频域往往包含了更多的信息。
对于频域来说,大概有8种波形可以让我们分析:矩形方波,锯齿波,梯形波,临界阻尼指数脉冲波形,三角波,余旋波,余旋平方波,高斯波。
对于各种波形,我们都可以用一种方法来分析,就是傅立叶变换:将时域的波形转化到频域来分析。
于是,本课题就从频域的角度对一段频率为22050Hz,16k的语音信号进行分析,并通过分析频谱来设计出合适的滤波器。
由于MATLAB软件在数字信号处理上有巨大的优势,本课程设计除了录制语音信号外基本都在MATLAB上实现[1]。
本课程设计主要解决在一个综合型超市中,进行某种商品(如某一品牌的服装)的采购、领料、库存与成本等管理的程序设计。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
长沙理工大学城南学院《数字信号处理》课程设计报告任健院系城南学院专业通信工程班级通信1104班学号 2学生姓名任健指导教师熊文杰课程成绩完成日期2014年7月4日课程设计成绩评定院系城南学院专业通信工程班级通信1104班ﻩ学号201185250426 学生姓名任健指导教师熊文杰完成日期2014 年7月 4 日指导教师对学生在课程设计中的评价指导教师对课程设计的评定意见课程设计任务书城南学院通信工程专业语音信号滤波去噪——使用三角窗设计FIR滤波器学生姓名:任健指导老师:熊文杰摘要本课程设计主要是通过使用三角窗设计一个FIR滤波器以对语音信号进行滤波去噪处理。
本设计首先用麦克风采集一段语音信号,绘制波形并观察其频谱,给定相应技术指标,用三角窗设计一个满足指标的FIR滤波器,对该语言信号进行滤波去早处理,比较滤波前后的波形和频谱分析,根据结果和学过的理论的出合理的结论。
通过对比滤波前后的波形图,深入了解滤波器的相关技术指标和性能,掌握设计滤波器的基本方法,通过程序调试及完善,该设计基本满足设计要求。
关键词MATLAB;三角窗;FIR滤波器;滤波去噪1 引言数字信号处理是将信号以数字方式表示并处理的理论和技术。
数字信号处理与模拟信号处理是信号处理的子集。
数字信号处理的目的是对真实世界的连续模拟信号进行测量或滤波。
因此在进行数字信号处理之前需要将信号从模拟域转换到数字域,这通常通过模数转换器实现。
而数字信号处理的输出经常也要变换到模拟域,这是通过数模转换器实现的[1]。
数字滤波器是一种用来过滤时间离散信号的数字系统,它是通过对抽样数据进行数学处理来达到频域滤波的目的。
随着现代通信的数字化,数字滤波器变得更加重要。
数字滤波器的种类很多,但总的来说可以分成两大类,一类是经典滤波器,另一类可称为现代滤波器。
从滤波特性方面考虑,数字滤波器可分成数字高通、数字低通、数字带通和数字带阻等滤波器。
从实现方法上考虑,将滤波器分成两种,一种称为无限脉冲响应滤波器,简称IIR(Infinite ImpulseResponse)滤波器,另一种称为FIR(FiniteImpulse Response)滤波器[2]。
设计FIR数字滤波器的方法有窗函数法、频率采样法和等波纹最佳逼近法等。
1.1课程设计目的用麦克风采集一段语音信号,绘制波形并观察其频谱,给定相应技术指标,用三角窗设计一个满足指标的FIR滤波器,对该语音信号进行滤波去噪处理,比较滤波前后的波形和频谱并进行分析,根据结果和学过的理论得出合理的结论。
与不同信源相同滤波方法的同学比较各种信源的特点,与相同信源不同滤波方法的同学比较各种滤波方法性能的优劣。
1.2课程设计的要求(1)滤波器指标必须符合工程设计。
(2)设计完后应检查其频率响应曲线是否满足指标。
(3)处理结果和分析结论应该一致,而且应符合理论。
(4)在老师的指导下,独立完成课程设计并按要求编写课程设计报告。
1.3设计平台MATLAB是矩阵实验室(Ma trixLaboratory)的简称,是美国M athWorks公司出品的商业数学软件,用于算法开发,数学可视化,数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink 两大部分。
是一个可以完成各种精确计算和数据处理的、可视化的、强大的计算工具。
它集图示和精确计算于一身,在应用数学、物理、化工、机电工程、医药、金融和其他需要进行复杂数值计算的领域得到广泛应用。
它不仅是一个在各类工程设计中便于使用的计算工具,而且也是一个在数学、数值分析和工程计算等课程教学中的优秀的教学工具,在世界各地的高等院校中十分流行,在各类工业应用中更有不俗的表现。
MATLAB可以在几乎所有的PC机和大型计算机上运行,适用于Windows、UNIX等各种系统平台。
2 设计原理2.1数字信号处理数字信号处理的算法需要利用计算机或专用处理设备如数字信号处理器(DSP)和专用集成电路(ASIC)等。
数字信号处理技术及设备具有灵活、精确、抗干扰强、设备尺寸小、造价低、速度快等突出优点,这些都是模拟信号处理技术与设备所无法比拟的。
数字信号处理的核心算法是离散傅立叶变换(DFT),是DFT使信号在数字域和频域都实现了离散化,从而可以用通用计算机处理离散信号。
而使数字信号处理从理论走向实用的是快速傅立叶变换(FFT),FFT的出现大大减少了DFT 的运算量,使实时的数字信号处理成为可能、极大促进了该学科的发展。
数字信号处理的特征和分类。
信号(signal)是一种物理体现,或是传递信息的函数。
而信息是信号的具体内容。
模拟信号(analogsignal):指时间连续、幅度连续的信号。
数字信号(digital signal):时间和幅度上都是离散(量化)的信号。
数字信号可用一序列的数表示,而每个数又可表示为二制码的形式,适合计算机处理。
一维(1-D)信号:一个自变量的函数。
二维(2-D)信号:两个自变量的函数。
多维(M-D)信号:多个自变量的函数。
信号处理的内容:滤波、变换、检测、谱分析、估计、压缩、识别等一系列的加工处理。
随着信息时代、数字世界的到来,数字信号处理已成为一门极其重要的学科和技术领域。
2.2窗口设计法窗口设计法的基本思想是用FIR逼近希望的滤波特性。
设希望逼近的滤波器的频率响应为,其单位脉冲响应用表示。
为了设计简单方便,通常选择为具有片段常数特性的理想滤波器。
因此是无限长非因果序列,不能直接作为FIR的单位脉冲响应。
窗口设计法就是截取为有限长的一段因果序列,并用合适的窗口函数进行加权作为FIR的单位脉冲响应。
常见的窗函数,可以分为以下主要类型:(1)幂窗--采用时间变量某种幂次的函数,如矩形、三角形、梯形或其它时间(t)的高次幂;(2)三角函数窗--应用三角函数,即正弦或余弦函数等组合成复合函数,例如汉宁窗、海明窗等;(3) 指数窗--采用指数时间函数,例如高斯窗等。
常见窗函数性能表如图2.2所示:图2.1常见窗函数性能表2.3 FIR滤波器FIR(Finite ImpulseResponse)滤波器:有限长单位冲激响应滤波器,是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。
因此,FIR滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。
FIR滤波器的种类目前,FIR滤波器的硬件实现有以下几种方式:(1)数字集成电路FIR滤波器一种是使用单片通用数字滤波器集成电路,这种电路使用简单,但是由于字长和阶数的规格较少,不易完全满足实际需要。
虽然可采用多片扩展来满足要求,但会增加体积和功耗,因而在实际应用中受到限制。
(2)DSP芯片FIR滤波器另一种是使用DSP芯片。
DSP芯片有专用的数字信号处理函数可调用,实现FIR滤波器相对简单,但是由于程序顺序执行,速度受到限制。
而且,就是同一公司的不同系统的DSP芯片,其编程指令也会有所不同,开发周期较长。
(3)可编程FIR滤波器还有一种是使用可编程逻辑器件,FPGA/CPLD。
FPGA有着规整的内部逻辑块整列和丰富的连线资源,特别适合用于细粒度和高并行度结构的FIR滤波器的实现,相对于串行运算主导的通用DSP芯片来说,并行性和可扩展性都更好。
FIR的特点有限长单位冲激响应(FIR)滤波器有以下特点:(1)系统的单位冲激响应h(n)在有限个n值处不为零;(2)系统函数H(z)在|z|>0处收敛,极点全部在z= 0处(因果系统);(3)结构上主要是非递归结构,没有输出到输入的反馈,但有些结构中(例如频率抽样结构)也包含有反馈的递归部分。
3设计步骤3.1 设计流程图本课程设计主要是对一段语音信号,加入噪声后,用某种函数法设计出的F IR滤波器对加入噪声后的语音信号进行滤波去噪处理,并且分析对比前后时域和频域波形的程序设计。
程序的设计流程图如下图3.1所示:图3.1程序设计流程图3.2录制语言信号在左下角点击开始/程序/附件/娱乐/录音机,即可进入如图3.2.1所示的画面。
图 3.2进入录音机界面然后点击最右边的红色圆心的标志,即可进行录音。
录一段2至3秒的语音,然后左键单击文件/属性,即可得到如下图3.2.2所示。
图3.3 打开声音属性在其中点击立即转换,即可得到如下图3.2.3所示界面,将声音格式设置为PCM,属性设置为8.000kHz,8位,单声道,7KB/秒,然后点击确定。
然后再点击文件/另存为,即可将该语音文件存在MATLAB文件下的work文件夹里。
图 3.4 设置语音属性3.3 语音信号的频谱分析ﻩ然后在Matlab软件平台下,利用函数wavread对语音信号进行采样,记住采样频率和采样点数。
采集完成后在信号中加入一个单频噪声。
程序如下:>>[x,fs,bits]= wavread('D:\renjian.wav');>>sound(x,fs,bits); ﻩ% 按指定的采样率和每样本编码位数回放所录语音文件>>N=length(x); ﻩﻩﻩ% 计算信号x的长度>>fn=1700; % 单频噪声频率,此参数可自己设计>>t=0:1/fs:(N-1)/fs; ﻩ% 计算时间范围,样本数除以采样频率>>x=x';y=x'+0.3sin(fn*2*pi*t);ﻩﻩ %在原信号上添加噪声>>sound(y,fs,bits); ﻩﻩ % 应该可以明显听出有尖锐的单频啸叫声>>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; ﻩﻩﻩ%计算频谱频率范围图3.5音乐信号加入噪声前后的时域频域图3.4设计数字滤波器和画出其频率响应截止频率也可以任意自选,在单频噪声干扰附近即可。
在这里,很重要的是通带截止db值的设置。
这个值一定要根据我们使用的设计滤波器的方法来设定。
因为我使用的是三角窗法,在三角窗函数中,滤波器的过渡带宽为 6.1π/M,最小阻带衰减为25db。
所以,一定要将通带截止db值设置的小于25db,所以,我将其设置为15db。
程序如下:>> fp1=fn-200;fs1=fn-50;fp2=fn+200;fs2=fn+50;>> Rp=1;As=15; %带阻滤波器设计指标>> df=min((fs1-fp1),(fp2-fs2)); % 计算上下边带中心频率,和频率间隔>> dw=df/fs*2*pi;wc1=(fs1+fp1)/2;wc2=(fs2+fp2)/2;ﻩ%将Hz为单位的模拟频率换算为rad为单位的数字频率>>ws1=fs1/fs*2*pi;ws2=fs2/fs*2*pi;wp1=fp1/fs*2*pi;wp2=fp2/fs*2*pi;>>M=ceil(6.1*pi/dw)+1; ﻩ% 计算三角窗设计该滤波器时需要的阶数>> Rp=-min(db(wp1/dw+1:wp2/dw))Rp =0.1784>>As=max(-round(db(ws1/dw+1:1:501)))As=22>>n=0:M-1; ﻩﻩﻩﻩ%定义时间范围>>w_tri=(triang(M))';ﻩﻩﻩ% 产生M阶的三角窗>> hd=ideal_lp(wc1,M)+ideal_lp(pi,M)-ideal_lp(wc2,M);ﻩ%调用自编函数计算理想带阻滤波器的脉冲响应>>h=hd.*w_tri;ﻩﻩ%用窗口法计算实际滤波器脉冲响应>>[db,mag,pha,grd,w]=freqz_m(h,1); % 调用自编函数计算滤波器的频率特性通过该程序得到的图如下图3.4所示:图3.6滤波器的特性波形图3.5 用滤波器对信号进行滤波在将滤波器设计好后,我们用自己设计的带阻滤波器对采集的语音信号进行滤波。