FastICA-based independent component analysis for MEG / EEG artifact removal. More...


Go to the source code of this file.
Classes | |
| struct | UTILSLIB::IcaResult |
| Result of an ICA decomposition. More... | |
| class | UTILSLIB::ICA |
| Independent Component Analysis using the FastICA algorithm (deflationary, logcosh nonlinearity). More... | |
Namespaces | |
| namespace | UTILSLIB |
| Shared utilities (I/O helpers, spectral analysis, layout management, warp algorithms). | |
FastICA-based independent component analysis for MEG / EEG artifact removal.
SPDX-License-Identifier: BSD-3-Clause Copyright (c) 2026 MNE-CPP Authors
Independent Component Analysis recovers a set of statistically independent latent sources from their linear, instantaneous mixture at the sensors. This class implements the deflationary FastICA algorithm of Hyvärinen and Oja: after centring and PCA-whitening the data to remove second-order correlations, each component direction is found one at a time as the fixed point of the logcosh / tanh contrast function, with Gram– Schmidt deflation against previously extracted components to guarantee orthogonality.
In a typical MEG / EEG pipeline the extracted components carry topographies and time courses that often map cleanly onto physiological artifacts — cardiac field, ocular blinks and saccades, EMG bursts — which can then be zeroed in component space before back-projection to the sensors.
Reference: A. Hyvärinen and E. Oja, "Independent Component Analysis: Algorithms and Applications", Neural Networks 13(4-5):411-430 (2000).
Definition in file ica.h.