短时傅立叶变换分析

Posted 月疯

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了短时傅立叶变换分析相关的知识,希望对你有一定的参考价值。

通过傅立叶变换可以得到信号的频谱。信号的频谱的应用非常广泛,信号的压缩、降噪都可以基于频谱。

然而傅立叶变换有一个假设,那就是信号是平稳的,即信号的统计特性不随时间变化。声音信号就不是平稳信号,在很长的一段时间内,有很多信号会出现,然后立即消失。如果将这信号全部进行傅立叶变换,就不能反映声音随时间的变化。

短时傅立叶变换(short-time fourier transform)就能解决这个问题。声音信号虽然不是平稳信号,但在较短的一段时间内,可以看作是平稳的。符合直觉的解决方案是取一小段进行傅立叶变换,这也正是短时傅立叶变换的核心思想。

 

窗函数:

从一段长的信号,截取一段信号,相当于将原始信号乘以一个方窗。方窗的傅立叶变换并不是理想的冲击函数,而是sinc函数。sinc函数除了主瓣以外,还有较高的副瓣。较高的副瓣意味着在真实频点以外,副瓣的位置上,频谱也会不为零。如果在副瓣的位置上恰好有一个幅度很小的信号,就会被完全淹没。 

sinc函数:方窗的傅里叶变换就是sinx/x

 

对于方窗较高的副瓣电平,解决方案是使用窗函数,代替简单地截取一段信号。通常使用的窗函数有hanning窗、hamming窗、Blackman-Haris窗等。

hamming窗的副瓣电平是-43dB,远小于方窗的副瓣电平-13dB。

 

 

加窗带来了新的问题。在窗的边缘,信号会乘上一个很小的数。这意味着数据并没有充分被利用,两个相邻窗之间的信号没有完全反映到频谱当中。解决办法是两个相邻的窗有一定的重叠。通常重叠区间可以选择为窗宽度的50%或者25%。

重叠还有另一个目的。信号进行短时傅立叶变换得到谱图(spectrogram),进行一些处理之后,有时还需要恢复成为时间序列。恢复的时候必须弥补窗函数带来的影响。

hanning窗、hamming窗都是简单的正弦函数的叠加。当重叠区间较大时,窗函数的影响几乎可以忽略不计。

 

 

窗介绍:

常数的傅立叶变换是冲击函数,没有宽度。窗函数的傅立叶变换都有一定宽度。方窗的主瓣宽度最小,其次是hanning窗、hamming窗。窗函数的宽度会影响频谱的分辨率。 

窗函数主瓣宽度
方窗2
hanning窗4
hamming窗4
BlackMan窗4
BlackMan-harris窗8

 

 

 

 

M表示窗的宽度;

Bs表示 主瓣宽度;

Fs表示采样频率;

Fk+1-Fk表示频率分辨率,即相邻俩个频率之间的差值。

以上是关于短时傅立叶变换分析的主要内容,如果未能解决你的问题,请参考以下文章

利用短时傅里叶变换(STFT)对信号进行时频谱分析和去噪声

傅立叶分析与小波分析整理

傅立叶分析和小波分析之间的关系?

形象易懂讲解算法I——小波变换

小波变换教程

傅立叶变换大量音频文件?