[FieldTrip] AAL atlas interpolation and parcellation

Philip Cho pnc9 at georgetown.edu
Sun Dec 20 09:06:00 CET 2020


Dear FieldTrip Community,

I am currently trying to obtain the source-level signal in a few
anatomically defined ROIs, and so I'm interpolating the AAL atlas onto the
8196-vertex cortical surface template (since I previously used that to
inverse-normalize onto my subject MRIs), and I'm using ft_sourceparcellate
to obtain my results. However, I'm facing an error, which I believe stems
from the fact that some labels (e.g. putamen, pallidum, cerebellum, vermis)
are not present in my tissue after interpolation. Please let me know if any
advice is available. Thank you very much.

My code is as follows:

function parc_source = mous2_sourceParcellate(sublist)

%load atlas
atlas =
ft_read_atlas('C:\fieldtrip-20201205\template\atlas\aal\ROI_MNI_V4.nii');

%load sourcemodel (to get its .pos field)
ftpath   = 'C:\fieldtrip-20201205';
sourcemodel = ft_read_headshape(fullfile(ftpath,
'template\sourcemodel\cortex_8196.surf.gii'));

cfg_int = [];
cfg_int.interpmethod = 'nearest';
cfg_int.parameter = 'tissue';
atlas_int = ft_sourceinterpolate(cfg_int,atlas,sourcemodel);

for sub = sublist
    %load source
    load(['D:\MOUS2\results\sourceanalysis_low_depth\source_low_depth_'
sub{1} '.mat']);
    source_allWords = ft_datatype_source(source_allWords);
    source_allWords.pos = sourcemodel.pos;

    %parcellate
    cfg = [];
    cfg.method = 'mean';
    cfg.parameter = 'all';
    parc_source = ft_sourceparcellate(cfg,source_allWords,atlas_int);
end



And the last part of the command line message, including the error, is as
follows:

there is no "Putamen_L" in "tissue"
there is no "Pallidum_L" in "tissue"
there is no "Pallidum_R" in "tissue"
there is no "Cerebellum_Crus1_R" in "tissue"
there is no "Cerebellum_Crus2_L" in "tissue"
there is no "Cerebellum_Crus2_R" in "tissue"
there is no "Cerebellum_3_L" in "tissue"
there is no "Cerebellum_3_R" in "tissue"
there is no "Cerebellum_4_5_L" in "tissue"
there is no "Cerebellum_6_L" in "tissue"
there is no "Cerebellum_6_R" in "tissue"
there is no "Cerebellum_7b_L" in "tissue"
there is no "Cerebellum_7b_R" in "tissue"
there is no "Cerebellum_8_L" in "tissue"
there is no "Cerebellum_8_R" in "tissue"
there is no "Cerebellum_9_L" in "tissue"
there is no "Cerebellum_9_R" in "tissue"
there is no "Cerebellum_10_L" in "tissue"
there is no "Cerebellum_10_R" in "tissue"
there is no "Vermis_1_2" in "tissue"
there is no "Vermis_3" in "tissue"
there is no "Vermis_4_5" in "tissue"
there is no "Vermis_6" in "tissue"
there is no "Vermis_7" in "tissue"
there is no "Vermis_8" in "tissue"
there is no "Vermis_9" in "tissue"
there is no "Vermis_10" in "tissue"
Warning: using "tissue" for the parcellation
 In ft_sourceparcellate at line 117

there are in total 8196 positions, 8196 positions are inside the brain,
7222 positions have a label
7222 of the positions inside the brain have a label
7222 of the labeled positions are inside the brain
974 of the positions inside the brain do not have a label
creating 116 parcels for parameter mom by taking the mean
computing parcellation
Index exceeds the number of array elements (0).

Error in ft_sourceparcellate>cellmean1 (line 488)
y = x{1};

Error in ft_sourceparcellate (line 226)
          tmp(j,:,:) = cellmean1(dat(seg==j));

Error in mous2_sourceParcellate (line 25)
    parc_source = ft_sourceparcellate(cfg,source_allWords,atlas_int);
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.science.ru.nl/pipermail/fieldtrip/attachments/20201220/7163c71a/attachment.htm>


More information about the fieldtrip mailing list