v2.0.0
Loading...
Searching...
No Matches
decoding_ica_label.cpp File Reference

Implementation of the static ICA component labeller. More...

#include "decoding_ica_label.h"
#include <Eigen/Core>
#include <QDebug>
#include <cmath>
Include dependency graph for decoding_ica_label.cpp:

Go to the source code of this file.

Detailed Description

Implementation of the static ICA component labeller.

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.2.1
Date
May 2026

For each row of the ICA-source matrix the implementation scores the component against the EOG reference (maximum absolute Pearson correlation across EOG channels), against the ECG reference (same statistic across ECG channels) and against a muscle spectral heuristic (fraction of total power above 30 Hz estimated from a Hamming-windowed periodogram); whichever score first crosses its threshold determines the assigned IcaComponentLabel, otherwise the component is labelled Brain. Components labelled Eog, Ecg or Muscle are reported by MlIcaLabel::findArtifactComponents in the order required by the ICA reconstruction code so the calling pipeline can pass them straight through apply / exclude.

Definition in file decoding_ica_label.cpp.