18.4.3 Short-Time Fourier Transform (Pro Only)

STFT Result.png

Non-stationary signals are those whose statistic characteristics vary with time. The classic Fourier transform is not very suitable for analyzing these kinds of signals in that it cannot provide any information on how the frequency changes over time. Thus a time-frequency analysis, such as STFT, should be used instead.

Short-time Fourier transform (STFT), is a method of analysis used for analyzing non-stationary signals. It extracts several frames of signals with a window that moves with time. If the time window is sufficiently narrow, each frame extracted can be viewed as stationary so that Fourier transform can be used. With the window moving along the time axis, the relation between the variance of frequency and time can be identified.

A STFT performed on a sequence, {ix(n)}, can be defined as

STFT\left \{x[n]\right \} \equiv X(m, \omega)=\sum_{n=-\infty}^\infty x[n]\omega [n-m]e^{-j\omega n}

where \omega (n) represents the sliding window that emphasizes local frequency components within it.

The result of STFT is a matrix that has N rows and M columns, where

N= 
\begin{cases} 
  FFTLength/2+1,  & \mbox{if input signal is real} \\
  FFTLength, & \mbox{if input signal is not real}
\end{cases}

and

M=floor(\frac{DataSize-Window Size}{WindowSize-OverlapSize})+1\,\!

Short-Time Fourier Transform-1.gif

The window chosen can affect the analysis. User should pay attention to the size and shape of the window.

The size of the window is related to the time resolution and frequency resolution of STFT. The shorter the window, the higher the time resolution. However, this is usually accompanied by poor frequency resolution. For a long window, the frequency resolution is high, but the time resolution is low. This phenomenon reflects Heisenberg's uncertainty principle.

Different window shapes produce different results, and Origin provides up to nine different windows for addressing specific needs:Rectangle, Welch, Triangular, Bartlett, Hanning, Hamming, Blackman, Gaussian and Kaiser.

It is important to choose proper size of overlapping sections for the windows. For instance, a non-zero overlap size usually helps to detect changes between adjacent data frames. However, it requires increased computation time. The overlapping size is also related to the size of the STFT result matrix.

When the size of the FFT sections is greater than the size of windows, zeros will be padded on both sides of each windowed data segment. This generally increases the frequency resolution.

If an image graph is plotted from the result, you may see more clearly how the frequency changes over time.

Please note that the usefulness of the STFT is limited as it is a fixed resolution method. Multi-resolution analysis, such as wavelet transform, should be performed to improve the signal analysis for some applications.

To Use STFT Tool
  1. Make a workbook or a graph active.
  2. Select Analysis: Signal Processing: FFT: STFT from the Origin menu.

Topics covered in this section: