fooof-tools/fooof
Parameterizing neural power spectra into periodic & aperiodic components.
What it solves
It provides a way to analyze neural power spectra by separating the signal into its aperiodic (1/f-like) and periodic (oscillatory peaks) components. This allows researchers to measure specific properties of oscillations—such as center frequency, power, and bandwidth—without having to predefine frequency bands or ignore the underlying aperiodic background.
How it works
The tool uses a model-driven approach to fit power spectra in linear space. It decomposes the spectrum into two parts:
- Aperiodic Component: A background signal that exists across all frequencies.
- Periodic Components: A variable number of peaks that rise above the aperiodic component.
Users can configure the model with settings for peak width limits, maximum number of peaks, minimum peak height, and the aperiodic mode to refine how the signal is parameterized.
Who it’s for
It is designed for researchers working with electrophysiological data, specifically those analyzing EEG, MEG, ECoG, and LFP data.
Highlights
- Physiologically Informed: Specifically designed for the parameterization of neural power spectra.
- Flexible Fitting: Supports fitting a single power spectrum or processing a group of spectra using a group model.
- Comprehensive Reporting: Includes built-in functions to plot fits and generate reports on model parameters.
- Cross-Language Support: While written in Python, it has wrappers or reimplementations available for Matlab, Julia, and R.
Related
- Project
- Project
- Project
- Project