v2.0.0
Loading...
Searching...
No Matches
spectrogram.h File Reference

Gaussian-windowed short-time Fourier transform (STFT) spectrogram. More...

#include "dsp_global.h"
#include <Eigen/Core>
Include dependency graph for spectrogram.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  UTILSLIB::SpectogramInputData
 Input parameters for short-time Fourier transform spectrogram computation. More...
class  UTILSLIB::Spectrogram
 Computes time-frequency spectrograms via short-time Fourier transform with configurable window and overlap. More...

Namespaces

namespace  UTILSLIB
 Shared utilities (I/O helpers, spectral analysis, layout management, warp algorithms).

Detailed Description

Gaussian-windowed short-time Fourier transform (STFT) spectrogram.

SPDX-License-Identifier: BSD-3-Clause Copyright (c) 2026 MNE-CPP Authors

Author
Christoph Dinh chris.nosp@m.toph.nosp@m..dinh.nosp@m.@mne.nosp@m.-cpp..nosp@m.org
Since
2.0.0
Date
March 2026

Spectrogram slides a Gaussian window of user-defined size along a 1-D input signal, applies an FFT to each windowed segment and stacks the resulting magnitude spectra column-wise into a time–frequency matrix. The window's standard deviation controls the classical time–frequency resolution trade-off (Heisenberg–Gabor uncertainty): wider windows give sharper frequency localisation at the expense of temporal blur, and narrower windows do the opposite.

The implementation parallelises across windowed segments via Qt Concurrent's map–reduce pattern; SpectogramInputData carries the per-window parameters and Spectrogram::reduce sums the partial spectrograms back into the final matrix. Use this when a single global STFT view is sufficient — for multitaper or wavelet representations see MultitaperTfr and MorletTfr.

Definition in file spectrogram.h.