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
  • plugin_ica

Last edited by Bruno Colombet Jun 06, 2024
Page history

plugin_ica

Description

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.
Two extras algorithm have been added, CCA and SOBI that seem to work better on EEG signals.

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
  • MATLAB_API
  • MATLAB_BIDS
  • MATLAB_debug
  • MATLAB_functions
  • MATLAB_get_data
  • MATLAB_get_data_ex
  • MATLAB_get_markers
  • MATLAB_get_props
  • MATLAB_init
  • MATLAB_run
View All Pages