Discrete STFT: Gabor transform


Gabor frame

Let $\boldsymbol{x} \in\mathbb{R}^T$ be a finite numerical signal. Let $\boldsymbol{w}\in\mathbb{R}^{L}$ be a numerical analysis window. The discrete Gabor transform of $\boldsymbol{x}$ is $$ X[\tau,\nu] = \sum_{t=0}^{T-1} x[t]w[t-A\tau]e^{-i2\pi\frac{\nu}{M}t} $$

  • $A$ controls the redundancy in time (the hope size, in samples, between two windows)
  • $M$ controls the redundancy in frequency (usually M=L or M=2L)

Using the matrix notation, all the time-frequency coefficients $X[\tau,\nu]$ can be computed by the analysis operator $\boldsymbol{\Phi}$: $$ \boldsymbol{X} = \boldsymbol{\Phi}^*\boldsymbol{x} $$

Each column of $\boldsymbol{\Phi}$ is one time-frequency atom. The number $K$ of columns depends of the time-frequency redundancy, with necessarily: $$ K > T $$ The Gabor transform is a redundant representation