低通滤波器加窗函数
- 格式:doc
- 大小:221.00 KB
- 文档页数:6
基于汉明窗函数的FIR低通滤波器的设计简介FIR低通滤波器是一种常用的数字信号处理滤波器,它可以用来滤除高频成分,保留低频成分。
汉明窗函数是一种常用的窗函数,用于设计FIR滤波器时可以有效降低频域泄漏现象。
本文将介绍基于汉明窗函数的FIR低通滤波器的设计方法和实现过程。
FIR滤波器的基本原理FIR滤波器是一种非递归滤波器,其输出仅由输入和滤波器的系数决定。
其基本原理是将输入信号与滤波器的冲激响应进行卷积运算,从而得到输出信号。
FIR滤波器的离散时间域表达式如下:y[n] = \\sum_{k=0}^{M} h[k] \\cdot x[n-k]其中,y[n]为滤波器的输出,x[n]为输入信号,h[k]为滤波器的系数,M为滤波器的阶数。
汉明窗函数汉明窗函数是一种常用的窗函数,用于在频域上抑制泄漏现象。
汉明窗函数的表达式如下:w[n] = 0.54 - 0.46 \\cdot \\cos \\left(\\frac {2\\pi n}{N-1}\\right)其中,w[n]为汉明窗函数的值,n为窗函数的点数,N为窗函数的长度。
在FIR滤波器设计中,可以使用汉明窗函数对滤波器的冲激响应进行加权,以实现频域上的泄漏抑制。
基于汉明窗函数的FIR低通滤波器设计方法基于汉明窗函数的FIR低通滤波器的设计方法如下:1.确定滤波器的阶数M,一般情况下,阶数的选择要取决于所需的滤波器的响应特性。
2.计算窗函数的长度N,一般情况下,窗函数的长度应为M+1。
3.根据窗函数的表达式计算窗函数的值,并将其作为滤波器的系数h[k],其中k=0,1,...,M。
4.对滤波器的系数进行归一化处理,以保证滤波器的幅度响应符合要求。
5.完成滤波器的设计。
汉明窗函数的特性汉明窗函数具有以下特性:1.对称性:汉明窗函数在窗口的两侧具有对称性,这使得滤波器的响应具有良好的频域特性。
2.正频响特性:汉明窗函数具有较低的副瓣水平,能够实现较好的频谱特性。
基于汉明窗函数设计的FIR低通滤波器FIR低通滤波器是一种常用的数字滤波器,可以用于信号的去噪、降噪、频率选择等信号处理任务。
在设计FIR低通滤波器时,我们可以使用汉明窗函数来实现。
汉明窗函数是一种常见的窗函数,其特点是在频率域上具有较好的副瓣抑制能力。
在FIR滤波器设计中,我们可以通过将输入信号与汉明窗函数进行卷积来实现滤波功能。
下面将介绍如何基于汉明窗函数设计FIR低通滤波器。
首先,我们需要确定滤波器的阶数和截止频率。
阶数决定了滤波器的复杂度,阶数越高,滤波器的性能越好,但计算量也会增加。
截止频率则决定了滤波器的截止频率,即在该频率以下的信号将被保留,而在该频率以上的信号将被削弱。
接下来,我们可以通过以下步骤来设计基于汉明窗函数的FIR低通滤波器:1. 确定滤波器系数:根据滤波器的阶数和截止频率,可以采用窗函数设计方法来计算滤波器的系数。
具体来说,我们可以使用窗函数对理想低通滤波器的幅度响应进行加窗。
汉明窗函数的表达式为:w(n)=0.54-0.46cos(2πn/(N-1))其中,n为窗函数的索引,N为窗函数的长度。
2. 计算理想低通滤波器的幅度响应:根据滤波器的截止频率,可以计算理想低通滤波器的幅度响应。
理想低通滤波器在截止频率之前为1,在截止频率之后为0。
3. 加窗:将理想低通滤波器的幅度响应与窗函数进行乘积,得到加窗后的幅度响应。
4. 归一化:将加窗后的幅度响应进行归一化处理,使滤波器的增益为1。
5. 反变换:对归一化后的幅度响应进行反变换,得到滤波器的系数。
设计完滤波器后,我们可以将输入信号与滤波器系数进行卷积运算,得到滤波后的输出信号。
此时,输入信号中的高频成分将被抑制,而低频成分将被保留。
需要注意的是,调整滤波器的阶数和截止频率可以影响滤波器的性能。
阶数过高可能引起滤波器的过长延迟和过高的计算复杂度,而截止频率的选择应根据具体的信号处理任务来确定。
总结起来,基于汉明窗函数设计的FIR低通滤波器是一种常用的数字滤波器,可以通过对汉明窗函数与理想低通滤波器的幅度响应进行乘积来实现对输入信号的滤波功能。
实验7窗函数法设计FIR数字滤波器一、实验目的掌握窗函数法设计F1R数字滤波器的原理和具体方法二、实验设备与环境计算机、Mat1ab软件环境三、实验基础理论1>基本原理窗函数设计法的基本思想为,首先选择一个适当的理想的滤波器Hd(,3),然后用窗函数截取它的单位脉冲响应%(九),得到线性相位和因果的FIR滤波器,这种方法的重点是选择一个合适的窗函数和理想滤波器,使设计的滤波器的单位脉冲响应逼近理想滤波器的单位脉冲响应。
2、设计步骤(1)给定理想滤波器的频率响应Hd("3),在通带上具有单位增益和线性相位,在阻带上具有零响应。
一个带宽为g(3c<Tr)的低通滤波器由下式给定h(e j^=(eW∣ω∣≤ωc虱)一1Oωc<∣ω∣<π其中α为采样延迟,其作用是为了得到因果的系统。
(2)确定这个滤波器的单位脉冲响应为了得到一个h(n)长度为N的因果的线性相位FIR滤波器,我们令N-Ia=-2-(3)用窗函数截取hd(τι)得到所设计FIR数字滤波器h(n)h(n)=h d(n)w(n)3、窗函数的选择常用的窗函数有矩形窗、汉宁窗、海明窗、布莱克曼窗、凯瑟窗等。
Mat1ab提供了一些函数用于产生窗函数,如下表所示:在设计过程中我们需要根据给定的滤波器技术指标,选择滤波器长度N 和窗函数3(n)°表7.2列出了常用的窗函数的一些特性,可供设计时参考。
其中幻是修正的零阶贝塞尔函数,参数B 控制最小阻带衰减,这种窗函数对于相同的N 可以提供不同的过渡带宽。
由于贝塞尔函数比较更杂,这种窗函数的设计方程很难推导,然而幸运的是,有一些经验设计方程可以直接使用。
已知给定的指标叫Msc,Rp 和4,滤波器长度N 和凯瑟窗参数B 可以按如下凯瑟窗设计方程给出过渡带宽:∆ω=ωst -ωp入一7.95 2.285∆ω_(0.1102(4-8.7) ,P=iθ.5842(4-21)04+0.07886(4-21), 四、实验内容1、设计一个数字低通FIR 滤波器,其技术指标如下ωp =0.2τr,RP=0.25dBωst =0.3τr,A s =50dB分别采用矩形窗、汉宁窗、海明窗、布莱克曼窗、凯瑟窗设计该滤波器。
滤波器设计中的滤波器系数与滤波器窗函数滤波器在信号处理中起到了至关重要的作用。
它可以去除波形中的噪声,滤除不需要的频率成分,使得信号更加清晰,有助于提高信号的质量。
在滤波器的设计中,滤波器系数以及滤波器窗函数是两个重要的概念。
一、滤波器系数滤波器系数是滤波器设计中的一个关键参数。
它决定了滤波器在频域上的特性,即滤波器的频率响应。
滤波器的频率响应可以分为低通、高通、带通和带阻四种类型。
不同的滤波器系数会导致不同类型的频率响应。
滤波器系数的选择取决于滤波器设计的要求。
例如,对于带通滤波器设计,需要确定通带和阻带的边界频率,并选择合适的系数使得信号在通带内通过滤波器,而在阻带内被滤除。
滤波器系数可以通过数学方法、模拟方法或者优化算法来确定,不同的方法有不同的效果和复杂度。
二、滤波器窗函数滤波器窗函数是一种数学函数,它在滤波器设计中起到了调整滤波器的频域特性的作用。
窗函数可以进一步优化滤波器的性能,使得滤波器的频率响应更加平滑,波纹更小。
常见的窗函数有矩形窗、汉明窗、海宁窗等。
不同的窗函数有不同的特性,可以根据设计需求选择合适的窗函数。
例如,矩形窗函数的主瓣宽度较宽,适用于需要快速滤波的场景,而汉明窗函数的主瓣宽度较窄,适用于需要更精确滤波的场景。
在滤波器设计中,首先选择合适的滤波器系数,然后再通过窗函数对其进行调整,得到最终的滤波器。
通过这种方式,可以满足设计的要求,获得理想的滤波效果。
三、滤波器系数与滤波器窗函数的关系滤波器系数和滤波器窗函数是紧密相关的。
在滤波器设计中,首先确定滤波器的类型和特性,选择合适的滤波器系数。
然后,通过选择合适的窗函数对滤波器系数进行加权,得到最终的滤波器。
滤波器系数决定了滤波器的频率响应,而窗函数则调整了频率响应的形状。
通过合理地选择滤波器系数和窗函数,可以得到满足设计要求的滤波器。
因此,在滤波器设计中,需要对滤波器系数和窗函数进行综合考虑,找到最优的设计方案。
四、总结滤波器设计中的滤波器系数和滤波器窗函数是两个重要的概念。
)(9cos 15.0)(12cos 15.0)(1919n R n n R N n n w ⎥⎦⎤⎢⎣⎡⎪⎭⎫ ⎝⎛-=⎥⎦⎤⎢⎣⎡⎪⎭⎫ ⎝⎛--=ππ2.3进行语音信号的采集(1)按“开始”-“程序”-“附件”-“娱乐”-“录音机”的顺序操作打开Window s系统中的录音机软件。
如图1所示。
图1 wi ndows 录音机(2)用麦克风录入自己的声音信号并保存成wav 文件。
如图2所示。
图2 保存文件保存的文件按照要求如下:① 音信号文件保存的文件名为“y uxueji ao.wav ”。
②语音信号的属性为“8.000KH z,8位,单声道 7KB /秒” ,其它选项为默认。
2.4语音信号的分析将“yu xuejiao .wav ”语音文件复制到计算机装有Ma tlab 软件的磁盘中相应Mat lab目录中的“work ”文件夹中。
打开Matlab 软件,在菜单栏中选择“File ”-图3语音信号的截取处理图在图3中,其中第一个图为原始语音信号;第二个图是截短后的信号图。
图4频谱分析图其中第二个图是信号的FFT 结果,其横坐标的具体值是X (k)中的序号k;第三个图是确定滤波频率范围的参考图,其横坐标的具体值应当是遵循DFT 定义式和频率分辨率求得的:∑-===10)()]([)(N n k N W n x n x DFT k X π当k等于0时, 020j kn Njk knNe eW ==⋅-=π,从数字角频率上看,对应的正好是0=ω即直流的位置,也就是说,在取滤波频段时,当将主要能量(即红色框的部分)保留,其余频段部分的信号滤除。
)]([)(n x DFT k X =相当于是信号)(n x 的实际频谱)]([)(n x DFT ej X w =采样,而)(n x 又是连续时间语音信号)(t x 的采样。
)(k X 的每两个相邻取值之间的频率间隔大小对应到语音信号)(n x 的频谱中去,其频率间隔大小正好是采样结果的长度采样速率===∆L f f f s det f ∆称频率分辨率,其中Hz f s 8000=,10000=L ,p2=sum(s2.^2)-sum(s1.^2);SNR1=10*log10(p1/p2);p3=sum(s4.^2)/8000;p4=sum(s3.^2)/8000-sum(s4.^2)/8000;SNR2=10*log10(p3/p4);2.6 噪声叠加图5 语音信号与加噪声后语音信号对比图五为语音信号与加噪声后语音信号对。
基于汉明窗函数的FIR低通滤波器设计及性能分析FIR低通滤波器是一种常用的数字滤波器,用于处理数字信号中频率较低的成分,将高频成分滤除。
在设计FIR低通滤波器时,常使用汉明窗函数来实现。
本文将介绍基于汉明窗函数的FIR低通滤波器的设计方法和性能分析。
首先,要设计一个FIR低通滤波器,需要确定以下几个参数:滤波器阶数N、采样频率fs、截止频率fc和窗函数类型。
本文将以汉明窗函数为例,演示如何设计FIR低通滤波器。
1. 滤波器阶数N的确定:滤波器阶数N决定了滤波器的复杂度和性能。
一般来说,阶数越高,滤波器的性能越好,但计算复杂度也相应增加。
因此,需要在滤波器性能和计算复杂度之间做出平衡。
常用的方法是根据滤波器的截止频率和采样频率来确定阶数N。
一般可以使用公式N=4fs/fc来初步估计阶数N,然后根据实际需求进行调整。
2. 窗函数的选择:本文选择汉明窗函数作为设计FIR低通滤波器的窗函数。
汉明窗函数在频域上具有较好的副瓣抑制性能,适合用于低通滤波器设计。
3. 窗函数的定义:汉明窗函数的表达式为:w(n) = 0.54 - 0.46*c os(2πn/(N-1)), 0 ≤ n ≤ N-1其中,N为窗函数的长度,n为窗函数的离散时间索引。
4. FIR低通滤波器的设计:设计FIR低通滤波器的步骤如下:1)确定滤波器阶数N;2)选择截止频率fc;3)计算滤波器系数h(n);4)对滤波器系数h(n)进行归一化处理。
5. 滤波器系数的计算:滤波器系数h(n)的计算公式为:h(n) = wc/pi * sinc(wc*(n-(N-1)/2)/pi)其中,wc为归一化的截止频率,wc=2πfc/fs。
sinc(x)为正弦函数sin(x)/x。
6. 归一化处理:对滤波器系数h(n)进行归一化处理,即将系数乘以汉明窗函数的值。
即:hn(n) = h(n) * w(n),0 ≤ n ≤ N-17. 性能分析:设计完毕后,需要进行性能分析来评估滤波器的性能。
3.1 窗函数法设计FIR 滤波器窗函数设计法又称为傅里叶级数法。
这种方法首先给出()j d H e Ω,()j d H e Ω表示要逼近的理想滤波器的频率响应,则由IDTFT 可得出滤波器的单位脉冲响应为1[]()2j jk d d h k H e e d πππΩΩ-=Ω⎰(3-1)由于是理想滤波器,故[]d h k 是无限长序列。
但是我们所要设计的FIR 滤波器,其h[k]是有限长的。
为了能用FIR 滤波器近似理想滤波器,需将理想滤波器的无线长单位脉冲响应[]d h k 分别从左右进行截断。
当截断后的单位脉冲响应[]d h k 不是因果系统的时候,可将其右移从而获得因果的FIR 滤波器。
另一种设计方案是将线性相位因子(0.5)j M e β-Ω+加入到理想滤波器的频率响应中,然后利用IDTFT 计算出[]d h k 后,取[]d h k 在0≦k ≦M 范围的值为FIR 滤波器单位脉冲响应。
理想滤波器的频率响应()j d H e Ω和设计出的滤波器的频率响应()j d H e Ω的积分平方误差定义为221()()2j j d H eH ed ππεπΩΩ-=-Ω⎰(3-2)2ε也可以表示为22[][]d k h k h k ε∞=-∞=-∑(3-3)12221[][][][]Md d d k k k M h k h k h k h k -∞=-∞==+=+-+∑∑∑上式中的第一项和第三项与所设计出的滤波器参数是没有关系的,为了使上式中的第二项达到最小,可选择 [][],0d h k h k k M=≤≤(3-4)所以用上面的方法得出的滤波器是在积分平方误差最小意义下的最佳滤波器。
Gibbs 现象就是理想滤波器的单位脉冲响应[]d h k 截断获得的FIR 滤波器的幅度函数()A Ω在通带和阻带都呈现出振荡现象。
随着滤波器阶数的增加,幅度函数在通带和阻带振荡的波纹数量也随之增加,波纹的宽度随之减小,然而通带和阻带最大波纹的幅度与滤波器的阶数M 无关。
河北科技大学课程设计报告学生姓名: 学号:专业班级:课程名称:学年学期指导教师:20年月课程设计成绩评定表目录1. 窗函数设计低通滤波器1.1设计目的 (1)1.2设计原理推导与计算 (1)1.3设计内容与要求 (2)1.4设计源程序与运行结果 (3)1.5思考题……………………………………………………………………101.6心得体会 (14)参考文献……………………………………………………………………… 151.窗函数设计低通滤波器1.1设计目的1. 熟悉设计线性相位数字滤波器的一般步骤。
2. 掌握用窗函数法设计FIR 数字滤波器的原理和方法。
3. 熟悉各种窗函数的作用以及各种窗函数对滤波器特性的影响。
4. 学会根据指标要求选择合适的窗函数。
1.2设计原理推导与计算如果所希望的滤波器的理想的频率响应函数为()ωj d e H ,则其对应的单位脉冲响应为()()ωπωωππd e e H n h j j d d ⎰-=21 (4.1)窗函数设计法的基本原理是设计设计低通FIR 数字滤波器时,一般以理想低通滤波特性为逼近函数()ωj e H ,即()⎪⎩⎪⎨⎧≤<≤=-πωωωωωαωc c j jd ,,e e H 0,其中21-=N α()()()[]()a n a n d e e d e eH n h c j j j j d d cc--===⎰⎰---πωωπωπωαωωωαωππωsin 2121用有限长单位脉冲响应序列()n h 逼近()n h d 。
由于()n h d 往往是无限长序列,而且是非因果的,所以用窗函数()n ω将()n h d 截断,并进行加权处理,得到:()()()n n h n h d ω=(4.2)()n h 就作为实际设计的FI R数字滤波器的单位脉冲响应序列,其频率响应函数()ωj e H 为()()nj N n j en h eH ωω∑-==1ﻩ ﻩ(4.3)式中,N 为所选窗函数()n ω的长度。
窗函数和滤波器的作用一、窗函数的概念和作用窗函数是信号处理中常用的一种数学函数,它被用于将信号在时间或频率域上进行截断或加权。
窗函数的作用是限制信号在一定时间或频率范围内的特性,以便更好地进行分析和处理。
窗函数的主要作用有:1. 信号截断:窗函数可以将信号在时间或频率上进行截断,只保留感兴趣的部分信号。
这对于去除噪声、提取特定频率成分等都非常有用。
2. 平滑信号:窗函数可以对信号进行加权,使得信号在截断边界处平滑过渡,避免出现边界效应。
3. 减小频谱泄漏:在频域中,窗函数可以减小频谱泄漏现象,即减小信号在频谱上的能量泄漏到其他频率的问题。
4. 提高频谱分辨率:窗函数可以改善频谱分辨率,使得信号的频率成分更加清晰可辨。
二、窗函数的常见类型常见的窗函数包括矩形窗、汉宁窗、汉明窗、布莱克曼窗等。
每种窗函数都有其特定的数学形式和频域特性,适用于不同的信号处理任务。
1. 矩形窗:矩形窗是最简单的窗函数,其数学形式为常数。
矩形窗在时间域上具有截断信号的作用,但在频域上会产生较大的频谱泄漏。
2. 汉宁窗:汉宁窗是一种常用的平滑窗函数,其数学形式为一个周期为2π的三角函数。
汉宁窗在频域上有较好的抑制能力,能够减小频谱泄漏。
3. 汉明窗:汉明窗是一种类似于汉宁窗的窗函数,其数学形式为一个周期为π的三角函数。
汉明窗在时间域上具有更好的平滑性,能够更好地减小边界效应。
4. 布莱克曼窗:布莱克曼窗是一种在频域上衰减较快的窗函数,其数学形式为一个周期为2π的三角函数加上一个指数函数。
布莱克曼窗在频域上具有较好的抑制能力和较低的频谱泄漏。
三、滤波器的概念和作用滤波器是信号处理中常用的一种工具,它用于改变信号的频率特性,包括增强或削弱特定频率成分、去除噪声、滤波等。
滤波器的主要作用有:1. 增强或削弱特定频率成分:滤波器可以选择性地增强或削弱信号中的特定频率成分。
通过合理选择滤波器的频率响应,可以实现对信号的频率特性进行调节。
低通滤波器加窗函数后的波形+ 频谱(接上一个日志)
2010-06-01 13:38 % **************************************************************************
定义一个在[0,2*pi] 一个周期的DTFT 函数名为ALLDTFT,其实这个就是对频率w 微元取值范围的问题跟之前定义的DTFT 定义是一样的
%***************************************************************************
function[w,magX]=ALLDTFT(x,n)
% 该函数是实现在w 属于[0,2*pi] 的DTFT
% 要求输入信号x[n] 和序号n 的长度一致,主要是提示检查是否匹配正确
% x[n] 的输入信号;
% n 是x[n] 的序号;
% X(w) 是DTFT{x[n]};
% w 是归一化后的频率变量微元;
% magX 是H(w) 的幅频函数归一化并且取分贝做单位后的值.
if length(x)~=length(n)
error('Require length x[n] equal to length {sequence n}');
end
if length(x)==length(n)
R=2000;
k=0:R;
w=(2*pi/R)*k;
X=x*(exp(-j*(n'*w)));
magX=20*log10(abs(X)/abs(X(1)));
w=w/pi;
end
%*************************************************************
%对Lowpass Filter 加窗定义LP 的截止频率wc=0.4
wc=0.4;
hlp=wc/pi*sinc(wc*n);
% Rectangular
h0=hlp.*x0;
figure(6)
subplot(2,1,1)
plot(n,h0);grid;
xlabel('');ylabel('Amplitude');title('Rectangular window');
[w,magH0]=ALLDTFT(h0,n);
subplot(2,1,2);
plot(w,magH0);grid;axis([0,2,-50,0]);
xlabel('');ylabel('Amplitude');title('Amplitude Response');
% Bartlett
h1=hlp.*x1;
figure(7)
subplot(2,1,1)
plot(n,h1);grid;
xlabel('');ylabel('Amplitude');title('Bartlett window');
[w,magH1]=ALLDTFT(h1,n);
subplot(2,1,2);
plot(w,magH1);grid;axis([0,2,-50,0]);
xlabel('');ylabel('Amplitude');title('Amplitude Response');
% Hanning
h2=hlp.*x2;
figure(8)
subplot(2,1,1)
plot(n,h2);grid;
xlabel('');ylabel('Amplitude');title('Hanning window');
[w,magH2]=ALLDTFT(h2,n);
subplot(2,1,2);
plot(w,magH2);grid;axis([0,2,-150,0]);
xlabel('');ylabel('Amplitude');title('Amplitude Response');
% Hamming
h3=hlp.*x3;
figure(9)
subplot(2,1,1)
plot(n,h3);grid;
xlabel('');ylabel('Amplitude');title('Hamming window');
[w,magH3]=ALLDTFT(h3,n);
subplot(2,1,2);
plot(w,magH3);grid;axis([0,2,-100,0]);
xlabel('');ylabel('Amplitude');title('Amplitude Response');
% balckman
h4=hlp.*x4;
figure(10)
subplot(2,1,1)
plot(n,h4);grid;
xlabel('');ylabel('Amplitude');title('balckman window');
[w,magH4]=ALLDTFT(h4,n);
subplot(2,1,2);
plot(w,magH4);grid;axis([0,2,-150,0]);
xlabel('');ylabel('Amplitude');title('Amplitude Response');
%**********************************************************************************
***********
结论:
% 从波形上看直接加矩形窗进行截断低通滤波器的冲激响应阻带衰减会比较小大概在20 dB就完事.
那么通过改变窗函数的表达式, 进行不同的加窗办法,得到的衰减会得以进一步增大, 但是这样的衰减的增大时基于牺牲过渡带的带宽得到的, 也许从上图的hanning window 和hamming window 不易看出, 但是从rectangular window 和blackman window 就能明显的看到第一个波峰的位置会有明显的后移
% 下面是波形鸟**************************************************************
function hd=ideal_lp(wc,M);
%Ideal Lowpass filter computation
%------------------------------------
%[hd]=ideal_lp(wc,M)
% hd=ideal impulse response between 0 to M-1 % wc=cutoff frequency in radians
% M=length of the ideal filter
%
alpha=(M-1)/2;
n=[0:1:(M-1)];
m=n-alpha+eps;
hd=sin(wc*m)./(pi*m);。