Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • D Documentation
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • anywave
  • Documentation
  • Wiki
  • ICA

Last edited by Bruno Colombet Jul 18, 2025
Page history
This is an old version of this page. You can view the most recent version or browse the history.

ICA

Description

Computes mixing and unmixing matrices using Independant Component Analysis method.
The ICA plugin will apply differents algorithms to extract independent components from the signals.
The default and most used algorithm in EEG/MEG is infomax.

This plugin can be run using the command line.

Running the process

image

Select algorithm

image

Currently only two algorithms are available: infomax and sobi.
Note that depending on the selected algorithm the Extra parameters section of the GUI may vary.

Filter the data (or not)

You may apply high pass/low pass filters on data. If the values are set to zeros, a warning message will appear requesting a confirmation that you will process on raw data.
The Decimate Data is off by default. Check it on to speed up computation by removing some data points.

Select the channels

image
You can process ICA on raw channels present on the current data file OR choose to compute only on channels present in the current Montage.

If you process SEEG data you can also restrict the computation to a particular SEEG Electrode.

Avoid artefacts and/or compute only on some part of the data

If the current file contains markers, you will see a Data Input Options appears in the GUI:
image

You may use the options to avoid marked artefacted data and or restrict the computation on some marked parts of data.

Ignore bad channels

That is the default behavior. If bad channels had been marked previously, they will be ignored during the computation.

Number of components

By default the maximum of components will be extracted from the data.
You can however reduce the dimensions of the data (using a PCA) to get less components.

Output

If you are currently working on data stored in a BIDS the output MATLAB file will be stored in the derivatives folder of your BIDS.
If you are not working with BIDS the output MATLAB file will be generated in the current data file folder. The file name is BIDS alike providing useful information just by reading it.

MATLAB file description

If you develop your own ICA algorithm in MATLAB, you can create a compatible file to load with AnyWave to see the components time series.
To do so you must create a file like the one AnyWave generates.

variable name type description/values modality string MEG, EEG, SEEG hpf double high pass filter used or 0. lpf double low pass filter used or 0. sr double data sampling rate in Hz. labels cell array of strings labels of electrodes mixing matrix (m x ic) used to reject component(s) and rebuild the signals unmixing matrix (ic x m) used to generate components time series

m = number of channels.
ic = number of independent components.

IMPORTANT: labels must contains the electrodes used to compute. AnyWave will unmix those channels to get the ICA time series.

NOTE: the order of the labels must match the columns of matrix mixing. The labels must exit in the data file (the names must match otherwise AnyWave will not be able to compute the time series by unmixing the original signals).
Each column of mixing is a component mapping for an electrode. The columns are used to compute components mappings.

Run ICA from the command line

Clone repository
  • Build_AnyWave
  • CLI
  • CLI_List
  • Changes
  • ExportData
  • ICA
  • Imaginary Coherence
  • MATLAB anywave function
  • MATLAB_BIDS
  • MATLAB_change_sig_prop
  • MATLAB_debug
  • MATLAB_get_data
  • MATLAB_get_markers
  • MATLAB_get_props
  • MATLAB_init
View All Pages