External Email - Use Caution
Dear FreeSurfer experts,
Happy new year! I hope you all are doing well!
I recently wrote the following question to the HCP-User Google Group and was directed to cross-post in the FreeSurfer list server by Dr. Matt Glasser.
I have created individualized rs-fMRI maps as dlabel fsLR 32k space using Kong
et al. (2021) and I would like to resample them to a FreeSurfer annotation in anatomical space without losing individual parcel assignments. The method below resamples the maps but loses parcel assignments.
echo "running -cifti-seperate"
wb_command \
-cifti-separate \
$dlabel_in \
COLUMN \
-label CORTEX_LEFT $dlabel_dir/${dlabel_in_base_name}.L.fsLR_32k.label.gii \
-label CORTEX_RIGHT $dlabel_dir/${dlabel_in_base_name}.R.fsLR_32k.label.gii
for hemi in L R; do
gii_in=$dlabel_dir/${dlabel_in_base_name}.${hemi}.fsLR_32k.label.gii
sphere_in=$standard_dir/resample_fsaverage/fs_LR-deformed_to-fsaverage.${hemi}.sphere.32k_fs_LR.surf.gii
sphere_out=$standard_dir/resample_fsaverage/fsaverage_std_sphere.${hemi}.164k_fsavg_${hemi}.surf.gii
gii_out=$dlabel_dir/${dlabel_in_base_name}.${hemi}.fsaverage_164k.label.gii
area_in=$standard_dir/resample_fsaverage/fs_LR.${hemi}.midthickness_va_avg.32k_fs_LR.shape.gii
area_out=$standard_dir/resample_fsaverage/fsaverage.${hemi}.midthickness_va_avg.164k_fsavg_${hemi}.shape.gii
echo "running -label-resample for "$hemi""
wb_command \
-label-resample \
$gii_in \
$sphere_in $sphere_out \
ADAP_BARY_AREA \
$gii_out \
-area-metrics \
$area_in $area_out
hemilower=$(echo $hemi | tr '[:upper:]' '[:lower:]')
fshemi=${hemilower}h
annot_out=${out_dir}/${fshemi}.${dlabel_in_base_name}.fsaverage.annot
echo "running mri_convert for "$fshemi""
mris_convert \
--annot $gii_out \
$FREESURFER_HOME/subjects/fsaverage/surf/${fshemi}.pial \
$annot_out
echo "running mri_surf2surf"
mri_surf2surf \
--srcsubject fsaverage \
--trgsubject $sub_id \
--hemi $fshemi \
--sval-annot $annot_out \
--tval $SUBJECTS_DIR/$sub_id/label/${fshemi}.${dlabel_in_base_name}.${sub_id}.annot \
--sd ${SUBJECTS_DIR}
mri_segstats \
--annot $sub_id $fshemi Ind_parcellation_MSHBM_${sub_num}_w20_MRF5.${sub_id} \
--i $SUBJECTS_DIR/$sub_id/surf/${fshemi}.thickness \
--sum ${out_dir}/${fshemi}.Ind_parcellation_MSHBM_${sub_num}_w20_MRF5.${sub_id}.thickness
done
The original dlabel has a parcel label table with the following column names, "KEY" (int, 0-400), "NAME" (string, detailed below), and "RED,
"GREEN," "BLUE," "ALPHA" for RGB/1 (image_1).
NAME is <atlas_hemi_network_region_int>, where atlas is always "17networks," hemi is "LH" or "RH," network is one of 17 networks (e.g., "DefaultA"), region is ¡Ã1 unique anatomical region
for each network (e.g., "FPole" and "IPL" for "DafaultA"), and int is an integer ID for repeat parcels in the same network and region (e.g., "DefaultA_IPL_1" and "DefaultA_IPL_2").
However, when converted to a FreeSurfer annotation file using the method above, parcels are collapsed across <network> and the name is taken from the first instance (image_2).
For example, I have parcels "17networks_LH_DefaultA_IPL_1" and "17networks_LH_DefaultA_IPL_2" in the dlabel, but only a single label called "17networks_LH_DefaultA_IPL_1" including
the two parcels in the annotation file. This is also occurring across hemispheres, where "17networks_RH_DefaultA_IPL_1" and "17networks_RH_DefaultA_IPL_2" (both on the right hemisphere) are both included in a single "17networks_LH_DefaultA_IPL_1" label in
the rh.parcellation.annot file.
Notably, the networks assignment appears correct in FreeSurfer native space. However, I would like the networks to remain parcellated for morphometric analyses.
Any help would be greatly appreciated.
Bram
Bram R. Diamond, MS
Clinical Psychology Doctoral Candidate
Northwestern University Feinberg School of Medicine
Mesulam Center for Cognitive Neurology & Alzheimer¡¯s Disease
300 E. Superior Street | Tarry 8 | Chicago, IL 60611