武汉理工大学《数字信号处理课程设计》说明书
1窗函数
1.1基本概念
在实际进行数字信号处理时,往往需要把信号的观察时间限制在一定的时间间隔内,只需要选择一段时间信号对其进行分析。这样,取用有限个数据,即将信号数据截断的过程,就等于将信号进行加窗函数操作。而这样操作以后,常常会发生频谱分量从其正常频谱扩展开来的现象,即所谓的“频谱泄漏”。当进行离散傅立叶变换时,时域中的截断是必需的,因此泄漏效应也是离散傅立叶变换所固有的,必须进行抑制。而要对频谱泄漏进行抑制,可以通过窗函数加权抑制DFT的等效滤波器的振幅特性的副瓣,或用窗函数加权使有限长度的输入信号周期延拓后在边界上尽量减少不连续程度的方法实现。而在后面的FIR滤波器的设计中,为获得有限长单位取样响应,需要用窗函数截断无限长单位取样响应序列。另外,在功率谱估计中也要遇到窗函数加权问题。
窗函数的基本概念。设x(n)是一个长序列,w(n)是长度为N的窗函数,用w(n)截断
x(n),得到N点序列xn(n),即
xn(n) = x(n) w(n)
在频域上则有
XNej????1πj?j?????Xe?Wed???π2π????由此可见,窗函数w(n)不仅仅会影响原信号x(n)在时域上的波形,而且也会影响到频域内的形状。
1.2设计原理
窗函数设计法的基本原理是用有限长单位脉冲响应序列h?n?逼近hd?n?。由于hd?n?往往是无限长序列,而且是非因果的,所以用窗函数??n?将hd?n?截断,并进行加权处理,得到:
h?n??hd?n???n?h?n?就作为实际设计的FIR数字滤波器的单位脉冲响应序列,其频率响应函数Hej???为
He????h?n?ej?n?0N?1j?n式中,N为所选窗函数??n?的长度。用窗函数法设计的滤波器性能取决于窗函数??n?的
1
武汉理工大学《数字信号处理课程设计》说明书
类型及窗口长度N的取值。设计过程中,要根据对阻带最小衰减和过渡带宽度的要求选择合适的窗函数类型和窗口长度N 。
2 四种基本的窗函数
2
武汉理工大学《数字信号处理课程设计》说明书
对时间序列作傅里叶变换时,实际上要作周期延拓,如果取长序列的一段进行处理,还要先作截断。截断会引起频谱的泄漏问题,这是由于抽样后的离散序列与矩形截断序列相乘,在频域造成两者的频谱卷积形成的。为了避免频谱泄露对结果的影响,在对非周期信号作时间截断时,除尽量增加截断序列的宽度外,也应选其频谱的旁瓣较小的截断窗函数,以减小泄漏的影响。在信号处理中窗函数是一种除在给定区间之外取值均为0的实函数。常用的窗函数很多,例如矩形窗、三角窗、Hanning窗、Hamming窗、Parzen窗、Kaiser窗、Chebyshev窗、Tukey窗、Poisson窗、Caushy窗、Gaussian窗和Blackman窗等等,定义方式不同,性质也不同,可以根据实际需要来选择合适的截断窗函数减轻泄露问题。
窗函数在光谱分析、滤波器设计以及音频数据压缩等方面有广泛的应用。在这里,应用窗函数对输入数据进行截断(时域加窗),从而得到要处理的数据及其长度。
表2.1 MATLAB窗函数
窗 矩形窗 巴特利特窗 三角窗 布莱克曼窗 海明窗 汉宁窗 凯塞窗 切比雪夫窗
窗 函 数 Boxcar Barlett Triang Blackman Hamming Hanning Kaiser Chebwin
3
武汉理工大学《数字信号处理课程设计》说明书
表2.2各种窗函数的基本参数
窗函数 矩形窗 三角形窗 汉宁窗 海明窗 不莱克曼窗 凯塞窗(α=7.865)
旁瓣峰值幅度/dB 过渡带宽 阻带最小衰减/dB -13 -25 -31 -41 -57 -57 4π 8π/N 8π/N 8π/N 12π/N 10π/N -12 -25 -44 -53 -74 -80 这样选定窗函数类型和长度N之后,求出单位脉冲响应h?n??hd?n????n?,并按照上式求出H?ej??。H?ej??是否满足要求,要进行演算。一般在h?n?尾部加零使长度满足2的整数次幂,以便用FFT计算H?ej??。如果要观察细节,补零点数增多即可。如果H?ej??不满足要求,则要重新选择窗函数类型和长度N ,再次验算,直至满足要求。
如果要求线性相位特性,则h?n?还必须满足
h?n???h?N?1?n?
根据上式中的正、负号和长度N的奇偶性又将线性相位FIR滤波器分成四类。要根据所设计的滤波特性正确选择其中一类,例如,要设计线性相位低通特性,可以选择
h?n??h?N?1?n?这一类,而不能选择h?n???h?N?1?n?这一类。
主程序框图如图2.1所示。其中幅度特性要求用dB表示。
4
相关推荐: