Time-Frequency Spectra with the S-transform
Most interesting data series consist of signal and noise series that are usually non-stationary, i.e. the properties fluctuate with time.Fourier analysis (FT) of the whole time series provides the spectrum of the whole time series, but is not capable of showing the time variation of the spectrum.The S-transform, also known as the Stockwell Transform (ST), uses a scalable, translating Gaussian window to determine the local spectrum at every point on the time series.The local spectrum supplements the local temporal information in the time series, and aids in the detection of onsets and cessations of events.For a N point time series, the output of the FT is a N point complex spectrum; the output of ST is a N x N, 2D time-frequency matrix, giving a N point spectrum at every point on the time series.Since the original time series contains only N points, the additional N2 - N points is a measure of the non-independent, redundant information computed for the ST.The redundancy is useful in presenting the similarities in the neighbouring local spectra and contributes to the visual continuity and smoothness to the 2-D time-frequency spectrum. The computation and storage of N2 - N additional points is a major drag on the usage of ST. Several approaches to reducing the computational burden are presented.Local spectra aids in analysis of 1D data. In images, the 2D local spectra aids in definition of texture and image segmentation.For 3 and 4 colour images, Trinion ST and Quaternion ST have been defined.In use since 1997, ST has found applications in numerous disciplines, including medical data series and images; power quality disturbance; atmospheric physics; exploration geophysics etc.The ST has been implemented in ARM and Raspberry Pi processors by several researchers.
This presentation is introductory, for the interested practitioner.Mathematical content will be at the absolute minimum.
What this presentation is about and why it matters
This talk introduces the S-transform (also called the Stockwell Transform), a time–frequency analysis tool that produces a full time–frequency map for a sampled signal. Unlike a single global Fourier spectrum, the S-transform produces a local spectrum at every time sample by viewing the signal through a frequency-scaled Gaussian window. That makes it easy to see when frequencies start, stop, or change — which is crucial in real-world engineering problems such as fault detection in power systems, seismic arrival-time analysis, radar/communications, and audio/bio-signal analysis.
Why it matters for practicing engineers: many signals are non-stationary (their frequency content changes over time). Relying only on a global Fourier transform can be misleading for these signals. The S-transform is a practical, invertible method that gives amplitude and absolute phase at each time–frequency point, helping with diagnostics, feature detection, and visualization during exploratory analysis.
Who will benefit the most from this presentation
- Signal processing engineers and scientists who analyze non-stationary signals (seismology, biomedical, audio, power monitoring, radar).
- Students and practitioners learning time–frequency methods who want a conceptual, low-math introduction.
- Engineers looking for interpretable visual diagnostics (onset detection, chirp tracking, dispersion) and practical trade-offs between resolution and computation.
- Developers who plan to implement or optimize S-transform variants (DOST, Hartley S-transform) on embedded platforms like ARM or Raspberry Pi.
What you need to know
This talk is deliberately introductory, but a few core ideas will help you get more from it:
- Sampling basics: A sampled record of N points yields N independent pieces of information. Frequency answers are periodic in the discrete domain and are limited by the Nyquist frequency (highest resolvable) and the Rayleigh frequency (lowest resolvable over the record length).
- Gabor uncertainty: Time and frequency localization trade off with each other. The talk frames this using the Gabor statement that the product of time and frequency uncertainty cannot be made arbitrarily small. In symbols: $\Delta t\cdot\Delta f\gtrsim 1$. This underlies why windows must be chosen carefully.
- Windowed local spectra: The S-transform computes a local spectrum at every time sample by multiplying the signal with a Gaussian window whose width depends on frequency. The normalized Gaussian can be written as $\frac{1}{\sigma\sqrt{2\pi}}e^{-t^{2}/(2\sigma^{2})}$ where $\sigma$ scales with frequency.
- Comparison to related methods: STFT (Short-Time Fourier Transform) uses a fixed window length; wavelet transforms use scaled wavelets (different normalization conventions exist); DOST (Discrete Orthonormal Stockwell Transform) remaps the time–frequency plane for efficiency. The S-transform sits between STFT and wavelets conceptually: it uses sinusoidal kernels modulated by frequency-dependent Gaussians.
- Practical trade-offs: The classical S-transform produces an N×N complex matrix (N voices × N time points), which is rich but heavy: storage grows as O(N^2) and naive computation can be costly. The talk surveys practical enhancements (DOST, Hartley S-transform, asymmetric windows, quaternion/trinion extensions for color images) that address accuracy or resource use.
Glossary
- S-transform / Stockwell Transform: A time–frequency transform that uses a frequency-scaled Gaussian window to compute a local Fourier spectrum at each time point.
- STFT (Short-Time Fourier Transform): Local Fourier spectra computed using a fixed-length window sliding along time.
- Wavelet Transform: A transform using scaled and shifted prototype wavelets; good for multi-resolution analysis of frequency content.
- DOST (Discrete Orthonormal Stockwell Transform): An efficient, discrete basis for approximating the S-transform with reduced computation and storage.
- Gaussian window: The bell-shaped weighting function used in the S-transform; its width is frequency-dependent in the S-transform.
- Gabor uncertainty principle: The trade-off rule that limits simultaneous precision in time and frequency.
- Nyquist frequency: The highest frequency that can be represented for a given sampling rate (half the sampling frequency).
- Rayleigh frequency: The lowest resolvable frequency given the finite record length (one cycle over the full record).
- Instantaneous frequency: Local frequency value as a function of time (what chirps and dispersive waves exhibit).
- Hartley transform / Hartley S-transform: A real-valued transform alternative that can reduce storage and compute by avoiding complex arithmetic.
Why you should watch
This presentation is a clear, practitioner-friendly tour of the S-transform and its place among time–frequency tools. The speaker balances intuition, simple math, and concrete examples — including seismogram analysis and bird-song audio — that demonstrate why a time–frequency first step is valuable for unfamiliar signals. If you want a low-math explanation of how the S-transform works, why redundancy in the time–frequency plane is useful, and what practical variants exist to tame computation, this talk delivers good guidance and pointers to further reading and MATLAB code.
Enjoy the talk: it’s a concise, well-illustrated introduction that connects theory with hands-on concerns and applications you can reuse in engineering practice.
This overview is AI-generated from the session transcript. Spot an issue? Let us know.
Happy that you liked the presentation. Appreciate the compliment.
Boulem Boashash did generalized gabor transforms... any relationship?
Boulem Boashash was the Associate Editor of IEEE Trans Signal Processing who handled our original S-Transform paper in 1993. So I am assuming that the ST at that time (1993-1996) did not overlap with anything he had worked on. Boushash has worked extensively on time-frequency methods. It is possible that he has extended the fixed length Gabor Transform (which uses a Gaussian) by scaling. I did a cursory Google search 'Boulem Boashash Generalised Gabor Transform' but did not find a specific reference. It maybe in his book.
Hi Lalu,
Thanks for your interesting talk. I'm wondering if the S-Transform has applications in signal source separation ? - I'm thinking of audio/music.
Thanks for listening to my presentation. I have not addressed this problem before. Off the cuff, the ST may be able to help in source separation, if the sound from a source arrives at a specific time, and has a specific spectral characteristic. Can be an interesting aspplication.
Hello, thank you for the presentation. The S-transform pictures starting at time 14:20 of the presentation look like a matlab spectrogram plot. As I listen to your presentation, I am thinking that the matlab spectrogram must be a type of time-frequency analysis. Is it similar to the S-transform? Do you know, would the only difference be the windowing function?
I would like to add to my earlier comment. Yes, a spectrogram is the very earliest type of time-frequency analysis, using a STFT (Short Term Fourier Transform). It is fast, but does not resolve the lowest frequencies atr all.
You are right. It is a Matlab spectogram, with a Hann window. Sorry the video stalled. I was just a few slides from showing the S-transform plot.
Wonderful, thank you for the presentation.
Thanks for your comments. Hope you managed to see the entire video.
This video is broken at the end (cut). There are about 15 minutes missing. Will try to fix this asap.
Fixed now. The video should play through the end.
This is similar to proportional bandwidth spectrum analysis. BW is proportional to center frequency... Called constant Q filter banks... Optimal matched filter for detecting and estimating linear FM sweeps is BW proportion to sqrt center frequency. Once built 10 octave spectrum analyzer with 1000 proportional bands per octave. Ear is constant Q filter bank.
You are right Fred. Viewing this problem as a filter banks concept also leads to very similar results. Wavelet Transform can (and is) treated as filter banks.
S Transform of the Brain Fever Bird call was missing at the end
the ppt contains the missing segment...
Stephane, can you open the zoom early?
missed the last few minutes.... darn
seems like the video stopped
Something has happened to the video
I think we missed the last part of the presentation. :(
Is it just me or does it end too soon? For me it stopped at 46:43 kind of in the middle of a sentence. I tried reloading but got the same thing.
The same for me. Seems the video was cut off during upload or something.
Thank you! I especially appreciated the resources and backgrounds of Gabor and Hamilton.