短时傅里叶变换(Short-Time Fourier Transform,简称 STFT)是一种分析非平稳信号频谱随时间变化的方法,是对传统傅里叶变换的一种改进。
📌 一、传统傅里叶变换有什么局限?
普通的傅里叶变换(FT)可以把一个信号变成频谱,但它假设信号是稳定不变的(即平稳的),适用于整段时间的整体频率分析。
但现实中很多信号(比如语音、机械振动、风电机组故障信号等)是时变的 —— 某个时刻频率成分可能突变,傅里叶变换无法定位什么时候发生了什么频率变化。
🔍 二、STFT 是怎么改进的?
STFT 的核心思想是:
“给信号加个窗,把长信号分成一段一段(短时),每一段再做傅里叶变换。”
步骤如下:
- 给信号加一个滑动窗口函数(如汉明窗、矩形窗等),提取当前时间段的局部信号;
- 对这一小段做傅里叶变换,获得当前这段的频谱;
- 移动窗口,重复以上过程;
- 最终得到一个时间-频率二维图:横轴是时间,纵轴是频率,颜色代表强度(功率或振幅)—— 这就是常说的频谱图(spectrogram)。
👨🏫 通俗解释:
想象你在听一首音乐,里面有吉他、鼓、钢琴。
- 傅里叶变换就像你听完整首曲子后告诉别人:“这首歌里有哪些乐器”;
- STFT 就像你每隔1秒暂停听一下,分析当前这1秒的声音,然后再继续下一秒——你就可以知道:“第3秒开始有鼓声,第10秒钢琴变响了”。
🖼️ 举个实际例子(比如风电机组):
你用 STFT 分析发电机电流信号:
- 第10秒开始频率升高,可能是负载波动;
- 第25秒出现高频噪声,可能是轴承故障;
- 你就能定位到异常 “发生在哪一刻”,这是普通傅里叶变换做不到的。