1 概述与基本定义

短时傅里叶变换(Short-Time Fourier Transform,STFT)是一类将信号从“单一频谱”扩展为“随时间变化频谱”的时频分析方法。传统傅里叶分析把整个观测区间视为同一种统计/周期规律,因此对非平稳信号会产生频率内容被“混合平均”的现象。STFT通过把信号在时间轴上划分为若干局部片段,并在每个片段上乘以窗函数,再对局部片段做傅里叶变换,从而获得“局部频率成分”随时间演化的表征。

1.1 信号的时频表示需求

当信号的频率、幅度或相位特征会随时间变化时,单纯的整体频谱往往难以反映事件发生的先后顺序。例如语音中音素切换、音乐中音色和声变化、工程振动中工况切换等,都体现出“时间-频率结构”。因此需要同时保留时间位置与频率内容的表示形式。

1.2 定义:加窗与局部傅里叶变换

STFT的核心操作可概括为:对信号进行分段,加窗以限制每段的时间范围;对每段加窗后的信号计算傅里叶变换;将所有局部变换结果按时间索引组织起来,形成时频图或时频矩阵。

窗函数使得“局部傅里叶变换”的前提成立:因为每次变换只关注窗覆盖的那一小段时间内的信号行为。窗口越短,时间定位越精细;窗口越长,频率分辨越细。

1.3 符号约定与常见记号

理论推导中,通常用 \(x(t)\) 或 \(x[n]\) 表示连续或离散信号;窗函数用 \(w(t)\) 或 \(w[n]\) 表示;时间移位用 \(a\)(连续形式)或帧索引与步长(离散形式)表示;频率变量通常记为 \(\omega\) 或 \(f\)。STFT结果常写为 \(X(t,\omega)\) 或 \(X[m,k]\),其中 \(m\)表示时间帧、\(k\)表示频率格点。

2 数学形式与推导要点

这一部分强调从“加窗—局部变换”的计算逻辑到可实现表达式的关键环节。不同教材对符号可能略有差异,但基本结构一致。

2.1 连续时间 STFT 的表达

对连续时间信号 \(x(t)\),以窗函数 \(w(t)\) 做时间平移 \(w(t-\tau)\),定义其STFT为 \[ X(\tau,\omega)=\int_{-\infty}^{\infty} x(t)\, w(t-\tau)\, e^{-j\omega t}\, dt . \] 其中 \(\tau\) 表示窗的中心或等效位置,\(\omega\) 为角频率。该表达式体现了:在 \(\tau\) 附近,窗函数将信号“截取”并加权,随后计算局部频率内容。

2.2 离散时间 STFT 的表达

对离散信号 \(x[n]\),常见形式为对帧索引 \(m\) 与频率索引 \(k\) 的离散计算。设窗长度为 \(N\),步长为 \(H\),窗在第 \(m\) 帧对应的时间起点为 \(mH\),则可写为 \[ X[m,k]=\sum_{n=0}^{N-1} x[n+mH]\; w[n]\; e^{-j 2\pi kn/N}. \] 若对频率轴进行重映射或采用非整频率采样,形式会有相应调整,但“帧加窗后做DFT/FFT”的本质不变。

2.3 窗函数的角色:局部化与权重

窗函数 \(w\) 决定了局部化程度以及对窗口内部各时刻的加权。若窗函数在中心附近取较大权重、两端逐渐衰减,则局部变换对边缘处样本的贡献较小,从而减少“截断不连续”带来的频谱畸变。窗函数同时也是重建与能量一致性讨论中的关键对象。

2.4 窗长、采样步长与时频网格

STFT的输出不是连续的二维函数,而是采样后的网格:

  • 窗长(或帧长)决定频率分辨和时间分辨的主要尺度;
  • 步长(hop size)决定相邻帧的时间间隔;
  • 频率格点数量与FFT点数(含零填充)决定频率轴的离散采样密度

因此,STFT的“分辨率”不仅由数学窗长决定,也由网格采样方案共同影响。

3 时间-频率分辨率与不确定性

STFT能同时观察时间与频率,但二者精度不可同时任意提高。其原因与信号在时域和频域的“扩展程度”受限有关,体现为不确定性原理在时频分析中的等价说法。

3.1 时间分辨率的影响因素

时间分辨率主要由窗函数的有效持续时间决定。若窗在时间上更窄,则窗覆盖的信号片段更短,事件发生的时间位置会被更精细地定位;但代价通常是频率轴上谱峰更宽、更难区分相近频率分量。

此外,步长也会影响“可见的时间变化速度”:步长过大时,短时事件可能跨越多个帧而被稀释,导致时频轨迹看起来“跳跃”或不连续。

3.2 频率分辨率的影响因素

频率分辨率与窗函数的频域宽度相关。更长的时间窗会在频域上形成更窄的主瓣,从而提高对频率细微差异的区分能力。与此同时,长窗可能导致时间上更模糊,尤其对快速变化信号会产生展宽效应。

3.3 时间-频率权衡的直观解释

可把STFT理解为“在某个短时间里估计频率”。估计需要足够的数据点来稳定频率估计:片段越长,估计越稳;但片段越长就越难假设信号在这段时间内保持“近似平稳”。因此二者冲突表现为:窗口短则时间清晰、频率模糊;窗口长则频率清晰、时间模糊。

3.4 常见窗口对应的典型特性

不同窗函数在主瓣宽度、旁瓣衰减以及能量分布上有所差异:

  • 更窄主瓣通常带来更好的频率分辨;
  • 更强旁瓣抑制有助于减少谱泄漏;
  • 但主瓣变窄或旁瓣变低往往会相互牵制。

实际选择通常取决于目标:是优先做峰值定位,还是优先抑制泄漏、获得更稳健的能量分布。

4 窗函数选择与性质

窗函数的选择不仅影响谱图的观感,还会影响后续可逆重建、谱能量解释与数值稳定性

4.1 窗函数的常见类型(如汉宁、哈明等)

常见窗包括汉宁窗、哈明窗及其变体,它们在时域平滑性较好,能有效缓解直接截断导致的频谱振铃。窗的参数化形式可通过调节形状在旁瓣与主瓣之间折中。

在实践中,“默认窗”往往用于通用分析;而在需要更高旁瓣抑制或更窄主瓣时,会根据任务目标替换窗函数。

4.2 旁瓣与主瓣:谱泄漏讨论

谱泄漏指当信号频率成分不与离散频率格点严格对齐时,能量会从目标频率附近“泄漏”到其他频率。窗函数通过改善边界处的平滑程度来降低泄漏。其效果可从频谱的主瓣和旁瓣结构理解:主瓣决定了同一分量能量的集中程度,旁瓣决定了泄漏的衰减速度。

4.3 窗函数的归一化与能量解释

窗函数的尺度会影响STFT幅度与能量度量。若窗进行不同归一化处理,同一信号得到的谱幅度或功率会呈比例变化。为获得一致的能量解释,常采用使窗能量、或在重叠相加框架下满足特定条件的归一化方式。这样才能保证谱能量与时域能量之间关系具有可比性。

4.4 窗函数对重建与数值稳定性的影响

可逆重建不仅依赖窗函数形状,还依赖窗在时间平移后的组合方式。某些窗在特定重叠条件下可形成稳定的重建算子;若选择不匹配的窗和步长,可能出现重建误差、能量偏差或数值误差被放大。

因此窗的选择通常与“目标任务是否需要重建”“期望的步长”“计算精度”等因素共同考虑。

5 STFT 的能量与谱量度解释

STFT输出既可看作复数谱(包含幅度与相位),也可提取幅度或能量相关量形成更便于解释的量度。

5.1 时频能量分布与幅度/功率谱

对 \(X[m,k]\) 可定义幅度谱 \(X[m,k]\),以及功率谱或能量谱 \(X[m,k]^2\)。幅度谱常用于观察频率分量的相对强弱;功率谱更贴近能量或方差意义的度量,也更常用于对数变换与统计分析。

5.2 幅度谱、功率谱与对数谱(dB)

将幅度或功率取对数可压缩动态范围,使弱成分更易在图上辨识。工程中常将功率谱以 \(10\log_{10}(\cdot)\) 显示,将幅度谱以 \(20\log_{10}(\cdot)\) 显示(取决于使用的是功率还是幅度)。对数谱的视化效果通常更接近人类对响度变化的感知方式,但其数值含义需在定义时明确。

5.3 与整体能量守恒的关系(格点情形)

在某些窗函数与步长选择下,STFT在离散格点上满足能量守恒或近似守恒关系,即时域能量与时频域能量之间存在比例常数。该性质与窗的归一化以及重叠方式密切相关。若不满足严格条件,能量可能在映射中产生系统性偏差,需要在解释或后续处理时加以修正。

5.4 相位信息的含义与限制

复数形式的STFT包含相位信息,可用于重建或分析瞬时变化的相位结构。然而在单纯的“幅度/功率谱图”视角下,相位往往被丢弃或忽略,导致某些相干现象无法通过幅度统计体现。例如两个频率分量的相位关系可能决定它们在时域相加时的增强或抵消,但在幅度谱中不易直接观察。

因此,相位在STFT中重要,但其物理含义与可解释性通常依赖特定任务与额外建模。

6 可逆性与重建

STFT并不仅是分析工具,也可在满足条件时实现从时频域回到时域的重建。

6.1 逆 STFT 的基本思想

逆变换通常基于一个生成模型:把每个时间帧的谱信息映射回时域片段,再按窗口平移方式叠加。因为窗函数在时域上具有有限支撑,且帧之间有重叠,重建依赖于这些叠加在每个采样点上形成一致的覆盖权重。

6.2 重建所需条件(如适当的窗与重叠)

能否完全或近似可逆,取决于窗函数、步长以及频域采样方式。常见条件会要求在重叠相加后,窗的加权和在每个时间采样点处接近常数或至少可逆,从而保证不会出现某些时间点被覆盖不足或重复放大。

不同窗与步长组合会导致重建误差差异,因此参数匹配是重建的核心。

6.3 重叠相加(Overlap-Add)框架

Overlap-Add框架是实际实现逆STFT的常用思路:对每一帧进行逆变换得到时域片段,再把片段乘(或已包含)窗口并在时间轴上按步长对齐,最后将重叠区域求和。若窗的重叠覆盖满足重建条件,则叠加后的结果与原信号一致或接近。

6.4 数值实现中的误差来源

实现中可能出现的误差包括:

  • 边界处理(信号开头与结尾补零、截断方式不同);
  • 浮点数舍入误差;
  • 使用不完全的频域采样或非标准FFT归一化;
  • 窗与步长不匹配导致覆盖权重不理想。

因此在工程中通常会进行归一化校正或选择标准参数组合以降低误差。

7 离散实现与算法

STFT的离散实现通常通过FFT完成,核心是帧分割、加窗、计算DFT并组织输出。

7.1 通过 FFT 计算 STFT

离散STFT中每帧的频谱计算可直接用DFT表示,而DFT可高效地用FFT算法实现。对于每个时间帧,将截取到的片段与窗相乘后输入FFT,即得到该帧在各频率格点上的复数谱值。

7.2 帧分割、零填充与边界处理

帧分割需要定义信号如何映射到帧序列:起始点通常从第一个采样开始或根据中心对齐策略处理。若窗长大于剩余样本,可进行零填充以保持帧长度一致;若采用中心对齐,也可能在两端以零或其他策略填充。

零填充不会增加真实的频率分辨率,但会使频率采样更密集,从而改善峰值定位的视觉或估计精度。

7.3 步长选择与计算复杂度

步长越小,帧之间重叠越多,时频图时间轴分辨更细,但计算量增加。步长越大则相反。选择步长时常要兼顾:

  • 所需的时间跟踪精度;
  • 重建条件是否可满足;
  • 计算预算与存储成本。

7.4 实用的参数设置建议

工程常用策略是:选择适合任务的窗长度(与目标事件时间尺度匹配),并用与窗相衔接的步长保证重建或获得平滑时频轨迹;频域点数可根据需要设定(必要时引入零填充提高频率网格密度)。实际参数也需结合数据采样率、信号带宽与目标特征的典型宽度进行调整。

8 相关概念与对比

STFT并非孤立存在,它与多种谱分析与时频工具存在形式与思想上的联系。

8.1 与普通傅里叶变换的关系

当窗函数覆盖整个信号并且仅取一个时间帧时,STFT退化为普通傅里叶变换(在离散情形下对应单次DFT/FFT)。因此STFT可以视为“多次、带局部化的傅里叶分析”。

8.2 与滤波器组/多分辨分析的联系

从线性系统视角,窗函数与滑动采样可等价地构成一组滤波器,使得每个频率通道提取特定频带内容。多分辨分析强调不同尺度提供不同分辨能力,而STFT的固定窗长体现为“单尺度”时频折中:对所有时间区域使用同一时间尺度的窗。

8.3 与小波变换的时频特性对比

小波变换通过缩放窗获得“多尺度”的时频分辨特性:在某些尺度上同时兼顾时域与频域的不同折中。相比之下,STFT使用固定窗长,分辨率折中在全时段一致。因而STFT更适合短时平稳段落近似成立、或希望获得规则网格与简单实现的场景。

8.4 与梅林变换/其他谱分析方法的差异

梅林变换等方法通常基于与频率相关的尺度变化,使得对某些信号(如相对比例关系随频率变化明显)可能更匹配。STFT则采用固定尺度滑窗,因此在“频率相关尺度需求”较强时可能不如尺度自适应的方法贴合;但STFT优势在于实现成熟、解释直观、与FFT框架高度兼容。

9 理论扩展与常见改进

在基础STFT之上,人们会调整采样格、窗函数或频轴映射,以改善数值表现或匹配特定信号结构。

9.1 不同采样格(时间步与频率步)的影响

离散STFT可在时间步与频率步上采取不同采样密度。时间步越密,时域轨迹更平滑;频率步越密(如增加FFT点数或零填充),频率轴更细致。采样密度与重建条件、计算复杂度相互制约,需要在精度与成本之间选择。

9.2 修正的窗函数与广义 STFT

广义STFT引入更一般的分析窗与合成窗组合,即分析阶段使用一个窗,重建阶段使用另一个窗。此时只要满足对应的双窗重建条件,就可实现可逆或稳定重建。这类扩展在系统工程与特定窗设计中更常见。

9.3 频率轴校正与谱峰定位

离散频率格点与真实连续频率之间可能存在偏差,尤其当信号不与FFT bin对齐时。通过频率轴校正、峰值插值或改进的谱估计策略,可以更准确地定位主成分频率。是否需要此类修正取决于任务精度要求。

9.4 自适应窗与信号驱动参数选择(概念层面)

自适应策略旨在根据局部信号特征调整窗长或窗形状,使得不同时间段获得更合适的时频折中。例如在快速变化区采用较短窗,平稳区采用较长窗,以降低整体失真。此类方法通常比固定窗复杂,但能提高对非平稳结构的贴合度。

10 应用场景(概念性)

STFT被广泛用于从复杂时域信号中提取时频特征、可视化谱结构或执行后续信号处理。

10.1 语音与音频的时频分析

语音信号通常包含快速的谱变化与局部稳态段。STFT能将元音与辅音相关的频谱结构随时间展开,便于特征提取(如生成时频图特征)、噪声观察或事件检测。对音频特征可视化时,常配合对数功率谱以增强感知相关细节。

10.2 振动信号与机械监测

机械振动和故障特征往往表现为特定频段能量的增强、以及随时间发生的调制或突变。STFT可用于监测频带能量变化趋势,辅助诊断与趋势分析。对工况切换频率的跟踪也常借助其时间分辨能力。

10.3 音乐信号的谱图可视化

音乐包含和声结构与随时间演化的音色。STFT生成的时频图常用于观察音高轨迹(在一定条件下表现为随时间移动的能量带)、谱包络变化以及和声叠加后的能量分布。此类可视化也常被用于教学或作品分析。

10.4 一般非平稳信号检测与特征提取

在非平稳检测任务中,STFT提供的局部频率描述可作为统计特征或输入模型。典型处理包括:在特定频带计算能量统计量、对时频图做阈值检测、或将时频表示作为机器学习特征输入。其核心优势在于结构直观、实现便捷,并可与多种后续算法无缝结合。