Managing sEEG atlas labels programmatically

Dear all,

I have been exploring the brainstorm tool for labeling sEEG electrodes using the anatomy templates. I have followed the tutorial below with some success: https://neuroimage.usc.edu/brainstorm/Tutorials/Epileptogenicity#Anatomical_labelling

Is it possible to apply the desired anatomy template programmatically in matlab without using the GUI?

Also, I need to access the anatomic labels in Matlab and have been exporting a .tsv file using the method in the tutorial, and then importing that back into Matlab. Is possible to do this more simply by extracting the anatomic labels directly from the brainstorm data structures?

Many thanks,
Dan

Hi Dan,

Yes, a MNI parcelation can be added as:

% Paramters
SubjectName  = 'Subject01';
MniAtlasName = 'Hammers95';


% Get iSubject
[~, iSubject] = bst_get('Subject', SubjectName);
% Get iMniAtlas
sMniAtlases = bst_get('MniAtlasDefaults');
iMniAtlas = find(strcmp(MniAtlasName, {sMniAtlases.Name}));
if ~isempty(iMniAtlas)
    % Add MNI Atlas
    import_mniatlas(iSubject, sMniAtlases(iMniAtlas), 0);  
end  

Note: For MNI atlases in the 'Hammers' and 'Schaefer2018' sets, it is necessary to first download those atlas sets IF they have not been used before. This is done with the same code as above, using the set names as MniAtlasName.

Not really, as the anatomical labels are not stored in Brainstorm structures; these labels are generated and saved in a .tsv file by the export_channel_atlas.m script. However, you could automated the read of the resulting .tsv file with in_tsv.m:

[cTsv, ColNames] = in_tsv(tsvFileName);

Best,
Raymundo