Cerebellum CNN

From IACL
Revision as of 01:48, 26 November 2019 by Shuo (talk | contribs)
Jump to navigation Jump to search

<meta name="title" content="Cerebellum Parcellation with Convolutional Neural Networks"/>

Cerebellum Parcellation with Convolutional Neural Networks

This work originally appeared at Proceedings of SPIE Medical Imaging (SPIE-MI 2019), San Diego, CA, February 16 - 21, 2019. It can be downloaded as a Singularity image. The download is 1.3GB. If you use this work please cite:

  • S. Han, Y. He, A. Carass, S.H. Ying, and J.L. Prince, "Cerebellum parcellation with convolutional neural networks", Proceedings of SPIE Medical Imaging (SPIE-MI 2019), San Diego, CA, February 16 - 21, 2019. (doi)

What the Singularity image can do

The Singularity performs the following steps:

  • ROBEX is used to estimate a brain mask. This mask is then smoothed to generate a brain weight image. The mask is not used for skull-stripping. It is only used for the bias field correction below.
  • N4 from ANTs is used to perform the bias field correction. The bias field is estimated using the weight image calculated above.
  • The image is rigidly registered to the ICBM2009c nonlinear symmetric template using the ANTs package.
  • The cerebellum of an MNI-registered MPRAGE image is parcellated using the method described in "Shuo Han, et al., Cerebellum parcellation with convolutional neural networks, SPIE 2019 Medical Imaging Image Processing".
  • Removing the neck should improve the results, such as using "robustfov" from fsl, but it is not done in this Singularity image.
  • The parcellation is transformed back to the original space using ANTs with the "MultiLabel" interpolation.
  • Generate .png files of slices in the axial, coronal, and sagittal views for quality control.

Installation

Example Usage

  • The Singularity image can only run on CPU although TensorFlow and Keras are used, because the Singularity image only contains the CPU version of TensorFlow.
  • Assume that the Singularity image is ~/cerebellum-parcellation.simg, the image to parcellate is image.nii.gz, and the output folder is ~/output
singularity run ~/cerebellum-parcellation.simg -i ~/image.nii.gz -o ~/output
  • If the image.nii.gz is under /path/to/image which is not under your home directory
singularity run -B /path/to/image:/mnt ~/cerebellum-parcellation.simg -i /mnt/image.nii.gz -o /mnt/output
  • Print help
singularity run ~/cerebellum-parcellation.simg -h

File structure

The processing will create subfolders "n4"', "mni", "parc", and "pics" under the output folder. The final parcellation result is directly under the output folder.

  • "*n4.nii.gz" is the bias field corrected image
  • "*n4_mni.nii.gz" is the image in the MNI space
  • "*n4_mni_seg.nii.gz" is the parcellation from the deep networks
  • "*n4_mni_seg_post.nii.gz" is the post-processed result.
  • "*n4_mni_seg_post_inverse.nii.gz" is the final post-processed result in the original space.
  • The subfolder "pics/final" contains the axial, coronal, and sagittal slices of the file "*n4_mni_seg_post_inverse.nii.gz".

Cerebellum labels

   "12":  "Corpus_Medullare",
   "33":  "Left_Lobules_I-III",
   "36":  "Right_Lobules_I-III",
   "43":  "Left_Lobule_IV",
   "46":  "Right_Lobule_IV",
   "53":  "Left_Lobule_V",
   "56":  "Right_Lobule_V",
   "63":  "Left_Lobule_VI",
   "60":  "Vermis_VI",
   "66":  "Right_Lobule_VI",
   "73":  "Left_Lobule_VIIAf",
   "76":  "Right_Lobule_VIIAf",
   "74":  "Left_Lobule_VIIAt",
   "70":  "Vermis_VII",
   "77":  "Right_Lobule_VIIAt",
   "75":  "Left_Lobule_VIIB",
   "78":  "Right_Lobule_VIIB",
   "83":  "Left_Lobule_VIIIA",
   "80":  "Vermis_VIII",
   "86":  "Right_Lobule_VIIIA",
   "84":  "Left_Lobule_VIIIB",
   "87":  "Right_Lobule_VIIIB",
   "93":  "Left_Lobule_IX",
   "90":  "Vermis_IX",
   "96":  "Right_Lobule_IX",
   "103": "Left_Lobule_X",
   "100": "Vermis_X",
   "106": "Right_Lobule_X"