1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- %% a4_ica_labeling
- % required functions:
- % - cm_label_ica_gui_20180116
- currentFile = mfilename('fullpath');
- [pathstr,~,~] = fileparts(currentFile);
- cd(fullfile(pathstr,'..'))
- rootpath = pwd;
- % inputs
- pn.eeg_BIDS = fullfile(rootpath, 'data', 'inputs', 'rawdata', 'eeg_BIDS');
- pn.channel_locations = fullfile(rootpath, 'data', 'inputs', 'rawdata', 'channel_locations');
- pn.events = fullfile(rootpath, 'data', 'inputs', 'rawdata', 'events');
- pn.tools = fullfile(rootpath, 'tools');
- % outputs
- pn.eeg_ft = fullfile(rootpath, 'data', 'outputs', 'eeg');
- pn.history = fullfile(rootpath, 'data', 'outputs', 'history');
- addpath(fullfile(pn.tools, 'fieldtrip')); ft_defaults;
- addpath(fullfile(pn.tools, 'helpers'));
- %% define IDs for visual screening
- ID = 'sub-001';
- %% load data & start GUI
- % load data (full data)
- load(fullfile(pn.eeg_ft, [ID, '_task-xxxx_eeg_ica.mat']),'data');
- if ~isfield(data.iclabels,'emg')
- data.iclabels.emg = [];
- end
- % load config (ICA version)
- load(fullfile(pn.history, [ID, '_task-xxxx_config.mat']),'config');
- % settings for ICA
- % ica config
- cfg.method = config.ica1.cfg.method; %'runica';
- cfg.trials = 'all';
- cfg.numcomponent = 'all';
- cfg.demean = 'no';
- cfg.runica.extended = 1;
- % ICA solution for segments
- cfg.unmixing = data.unmixing;
- cfg.topolabel = data.topolabel;
- % ICA (from weights)
- % components
- comp = ft_componentanalysis(cfg,data);
-
- % include electrode information
- comp.elec = data.elec;
- % include ICA labeling
- comp.iclabels = data.iclabels;
- % clear cfg
- clear cfg
- % label ICs
- % settings
- cfg.topoall = 'yes';
- cfg.chanlocs = data.chanlocs;
- % label electrodes
- data.iclabels = cm_label_ica_gui_20180116(cfg,comp);
- % keep labels in config
- config.ica1.iclabels.manual = data.iclabels;
- % clear variables
- clear cfg
- % save data (full data)
- save(fullfile(pn.eeg_ft, [ID, '_task-xxxx_eeg_ica.mat']),'data');
- % save config (ICA version)
- save(fullfile(pn.history, [ID, '_task-xxxx_config.mat']),'config');
- % clear variables
- clear BLOCK ID comp config data
|