nipy / mindboggle

Automated anatomical brain label/shape analysis software (+ website)
http://mindboggle.info
Other
146 stars 54 forks source link

Volume label differences between FS and ANTS (thoughts re: analysis?). #124

Closed jlhanson5 closed 7 years ago

jlhanson5 commented 7 years ago

Hello Mindboggle List,

I got MB started and was just looking at some volumetric data. Examining a few subjects, I noticed a fair bit of discrepancy between FS and ANTS volumetric labels (from the volume_per_ants_label.csv and volume_per_freesurfer_label.csv in tables). The bivariate correlation between all the labels was r= ~ .6. For a few regions, the percent difference was quite high (20-30% difference between FS and ANTS). I wondered if folks had run into similar patterns?

One work-around I thought of was to try and pull the combined ANTS-FS segmentation (from Combine_freesurfer_ants_cerebrum_graywhite), and work with that file. I, however, realized that file didn't include subcortical regions (like the amygdala, hippocampus, etc.).

I wondered if there might be other files output by mindboggle that might help in interrogating volumetric differences, etc.? Or other ways that people have tried to leverage MB for volumetric data?

Any thoughts or suggestions are greatly appreciated! Jamie.

binarybottle commented 7 years ago

Thank you for making this comparison. Yes, there will be differences in the volumes of labeled regions assigned by FreeSurfer and ANTs due to the differences in the way FreeSurfer and ANTs perform atlas-based registration. Some regions will have greater discrepancies between assigned labels than others depending on the their shapes, locations, and sizes.

binarybottle commented 7 years ago

I forgot to mention that you could do the following:

  1. Apply the ANTs transforms generated by antsCorticalThickness.sh (or, equivalently, by mindboggle123) to nonlinearly register the joint fusion atlas used by Mindboggle to the T1 brain image.
  2. Mask the labeled T1 with a gray matter mask derived from any tissue class segmentation (e.g., generated by ANTs or FreeSurfer) for that T1 (not the hybrid segmentation, which as you point out, removes subcortical structures).
  3. Run individual mindboggle functions to compute volume shape measures for each labeled region:

For (1) above, on line 442 of the main nipype script mindboggle/mindboggle/mindboggle, you can find a brief description:

# ------------------------------------------------------------------------           
# For transforming volume labels --                                                  
# Make list of ANTs MNI152-to-subject nonlinear transforms                           
# to use Apply_ants_transforms:                                                      
#                                                                                    
# Note regarding Apply_ants_transforms:                                              
# To warp the subject image to the template, one would call                          
# Apply_ants_transforms...-i ${subject} -r ${template}                               
#                       -t ${prefix}SubjectToTemplate1Warp.nii.gz                    
#                       -t ${prefix}SubjectToTemplate0GenericAffine.mat              
# To warp the template image to the subject, one would call                          
# Apply_ants_transforms...-i ${template} -r ${subject}                               
#                       -t ${prefix}TemplateToSubject1GenericAffine.mat              
#                       -t ${prefix}TemplateToSubject0Warp.nii.gz                    
# ------------------------------------------------------------------------