admin 管理员组

文章数量: 1086019


2024年3月13日发(作者:exynos4412源码下载)

第5章 窗函数

在应用Fourier变换对信号进行处理时,窗函数是被经常提起的一个名词。一般而言,窗函数是

指数值在给定区间之外为零的实函数,实际上就是一种加权函数,用来在Fourier变换前对信号进行

加权相乘,这个过程仿佛是透过一个窗口对信号进行观察一样,窗函数在光谱分析、滤波器设计以

及音频数据压缩等方面有广泛的应用。实际上,笔者在前面的章节中已经使用了一种简单的窗函数:

矩形窗,矩形窗是信号处理中最常用的一种窗函数,多数读者是在不知不觉中使用了矩形窗。

1. 常用窗函数

笔者在本章中列出了几种常用窗函数的表达式、时域与频域增益的曲线图形,并提供了实现这

些窗函数的C++代码,希望可以帮助读者在实际工作中选择正确的窗函数。

1.1 矩形窗

矩形窗是最简单的一种窗函数,只在给定区间内的取值为1,笔者就不在这里列出它的表达式。

矩形窗的优点是主瓣比较集中,缺点是旁瓣较高,并有负的旁瓣,导致Fourier变换中的高频干扰和

泄漏。

图5-1中列出了矩形窗函数的时域曲线及其在频域的增益曲线,本章中所有频谱增益的计算都

采用了笔者前面介绍的HRFT算法。

1.2

1

0.8

0.6

0.4

0.2

0

00.20.40.60.81

0

-100

-200

-300

-400

-500

-600

-10-50510

图5-1 矩形窗的时域曲线及其增益曲线

1.2 三角窗

三角窗的形状是一个三角形,计算表达式为:

w[n]1

2n1N

(5-1)

N1

其中,

n0,1,,N1

,下面公式中

n

的取值范围相同。

图5-2中列出了三角窗函数的时域曲线及其在频域的增益曲线。

10

-100

-200

0.8

0.6

-300

0.4

-400

0.2

-500

-600

00.20.40.60.81

0

-10-50510

图5-2 三角窗的时域曲线及其增益曲线

1.3 Hanning窗

Hanning窗是一种常用的窗函数,表达式为:

w[n]0.50.5cos(

2

n

)

(5-2)

N1

Hanning窗的主瓣加宽并降低,旁瓣则显著减小。从减小泄漏观点出发,Hanning窗优于矩形窗,

但Hanning窗主瓣加宽,相当于分析带宽加宽,频率分辨率比矩形窗有所下降。

图5-3中列出了Hanning窗函数的时域曲线及其在频域的增益曲线。

10

-100

-200

0.6

-300

0.4

-400

0.2

-500

-600

00.20.40.60.81

0.8

0

-10-50510

图5-3 Hanning窗的时域曲线及其增益曲线

1.4 Hamming窗

Hamming窗也是一种常用的窗函数,表达式为:

w[n]0.538360.46164cos(

2

n

)

(5-3)

N1

Hamming窗加权的系数能够使旁瓣达到更小,但其旁瓣衰减速度比Hanning窗衰减速度慢。与

Hanning窗一样,Hamming窗也是很有用的一种窗函数。

图5-4中列出了Hamming窗函数的时域曲线及其在频域的增益曲线。


本文标签: 曲线 函数 矩形 旁瓣 时域