External Email - Use Caution
Hello FreeSurfer Developers,
I'm attempting to create annotation files from label files which have been estimated at the level of the individual. Therefore, some subjects may not have all ROIs. When attempting to take those label files and concatenate them into individual subject-specific annotation files I run into a few issues.
The command I have used previously: mris_label2annot --s sub-DAEK --hemi lh \ --ctab /mnt/c/Users/Ben/Documents/GitHub/parcellationPipeline/li2019_to_dti/yeo2011nodesLUT.txt \ --a yeo2011nodes \ --surf orig \ --maxstatwinner \ --ldir-default
stdout: subject sub-DAEK hemi lh SUBJECTS_DIR /mnt/c/Users/Ben/freesurfer/subjects ColorTable /mnt/c/Users/Ben/Documents/GitHub/parcellationPipeline/li2019_to_dti/yeo2011nodesLUT.txt AnnotName yeo2011nodes nlables 0
1. The first issue is that -ldir and -ldir-default don't seem to work as anticipated. After reading many threads on the FS mailing list archives I saw that the LUT should have identical ROI IDs as the file names with the exception of the label file extension. Thus, my LUT looks like the following: * 0 Unknown 0 0 0 0
1 lh.Net_2_ROIs_1_lh 25 5 25 0
2 rh.Net_2_ROIs_1_rh 25 100 40 0
3 lh.Net_2_ROIs_2_lh 70 130 180 0
4 rh.Net_2_ROIs_2_rh 100 100 0 0
5 lh.Net_3_ROIs_1_lh 196 58 250 0
6 rh.Net_3_ROIs_1_rh 100 25 0 0
7 lh.Net_3_ROIs_2_lh 120 70 50 0
8 rh.Net_3_ROIs_2_rh 220 20 10 0
9 lh.Net_3_ROIs_3_lh 220 20 100 0
10 rh.Net_3_ROIs_3_rh 180 40 120 0
11 lh.Net_4_ROIs_1_lh 122 186 220 0
-----------------and so on.
* When I list the dir from my subject's label directory the following is presented:
i. lh.Net_10_ROIs_1_lh.label
lh.Net_2_ROIs_1_lh.label
lh.Net_13_ROIs_3_lh.label
lh.Net_5_ROIs_1_lh.label
rh.Net_2_ROIs_1_rh.label
rh.Net_3_ROIs_3_rh.label
------------and so on.
* However, when I provide the -l arg with the full path, the file is found and the nlabels arg in stdout is the number of -l args I supply.
1. The next issues is that if I go the route of -l args (there are 116 ROIs so this is not desirable) I receive issues because not all subjects have all the label files that the LUT file expects. Therefore the resulting annotation file has mislabeled ROIs. * Is there a way to force the unfound labels to unknown or a way to bypass this issue? * I recognize the one way to do this may be to create individual specific LUT files but that seems tedious and unnecessary if there is a better way that you all may be wiser to.
1. Another issue I have been running into is that if I even attempt to just remove the -l args where labels do not correspond exactly with the LUT file I have a number of overlapping label file vertices issues. * How do you recommend correcting for this, my best guess is some sort of thresholding scheme. However, these are functional networks so I am unsure what the best route for thresholding would be.
Thanks so much for your help in advance! Ben
freesurfer@nmr.mgh.harvard.edu