Skip to content

Instantly share code, notes, and snippets.

@agramfort
Forked from matt-erhart/gist:9377713
Last active August 29, 2015 13:57
Show Gist options
  • Save agramfort/9537314 to your computer and use it in GitHub Desktop.
Save agramfort/9537314 to your computer and use it in GitHub Desktop.
#%% import ####################################################################
import mne
import numpy as np
import os
from mne.datasets import sample
data_path = sample.data_path()
#%% load group avg data #######################################################
os.environ["SUBJECTS_DIR"] = data_path + '/subjects'
src_path = data_path + '/subjects/fsaverage/bem/fsaverage-ico-5-src.fif'
src = mne.read_source_spaces(src_path)
stc_dir = data_path + '/MEG/sample'
subject_id, surface = 'fsaverage', 'pial'
cond = '19'
stc = mne.read_source_estimate(stc_dir + '/' + 'fsaverage_audvis-meg')
#%% mask unknown ##############################################################
brain_mask, _ = mne.labels_from_parc('fsaverage', parc='aparc.a2009s',hemi='both',
regexp='Unknown')
bibrain_mask = mne.BiHemiLabel(brain_mask[0],brain_mask[1],name='Unknown')
brain_mask_stc = stc.in_label(bibrain_mask)
stc.data[brain_mask_stc.vertno[0],:] = 0
stc.data[len(stc.vertno[0]) + brain_mask_stc.vertno[1],:] = 0
#%% make functional label #####################################################
tmin, tmax = 0.09+.03, 0.12+.03
aparc_label_name = 'S_calcarine'
stc_mean = stc.copy().crop(tmin, tmax).mean()
label, _ = mne.labels_from_parc('fsaverage', parc='aparc.a2009s',
regexp=aparc_label_name)
bilabel = mne.BiHemiLabel(label[0], label[1], name=aparc_label_name)
stc_mean_label = stc_mean.in_label(bilabel)
data = np.abs(stc_mean_label.data)
stc_mean_label.data[data < 0.3 * np.max(data)] = 0.
func_labels, _ = mne.stc_to_label(stc_mean_label, src=src, smooth=5, connected=True)
# take first as func_labels are ordered based on maximum values in stc
func_label = func_labels[0]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment