Published August 23, 2022 | Version v0.4
Software Open

MNE-ICALabel: Automatically annotating ICA components with ICLabel in Python

  • 1. Columbia University
  • 2. Johns Hopkins University
  • 3. Human Neuroscience Platform, Fondation Campus Biotech Geneva, Geneva, Switzerland
  • 4. Institute of Neuroscience and Medicine (INM-3), Research Center Jülich, Germany
  • 5. Institute of Bioengineering, Center for Neuroprosthetics, EPFL, Geneva, Switzerland

Description

Summary

Scalp electroencephalography (EEG) and magnetoencephalography (MEG) analysis is typically very
noisy and contains various non-neural signals, such as heartbeat artifacts. Independent component
analysis (ICA) is a common procedure to remove these artifacts [@Bell1995]. However, removing
artifacts requires manual annotation of ICA components, which is subject to human error and very
laborious when operating on large datasets. This work makes the popular ICLabel model
[@iclabel2019] available in Python by creating a software package compatible with the MNE-Python
[from v1.1; @Agramfort2013] software toolkit in a modern PyTorch format [@Pytorch2019]. The ICLabel
model was previously only available in an outdated version of TensorFlow that was no longer
supported, and migrating the model now to an updated PyTorch version will ensure the model will not
break due to unmaintained versions of software. This enables the automatic labeling of ICA
components, improving the preprocessing and analysis pipeline of electrophysiological data.

The Python ICLabel model is fully tested against and matches exactly the output produced in its
MATLAB counterpart [@iclabel2019]. Moreover, this work builds the API on top of the robust
MNE-Python ecosystem, enabling a seamless integration of automatic ICA analysis.

Files

Files (10.8 MB)

Name Size Download all
md5:1e2a0d569431fa14ea59caaeb88cdc04
10.8 MB Download