Difference between revisions of "Cerebellum CNN"

From IACL
Jump to navigation Jump to search
(Removed link pending publication.)
(Update.)
 
(15 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<meta name="title" content="Cerebellum Parcellation with Convolutional Neural Networks"/>
+
<!-- <meta name="title" content="ACAPULCO: Cerebellum Parcellation with Convolutional Neural Networks"/> -->
 
{{h2|Cerebellum Parcellation with Convolutional Neural Networks}}
 
{{h2|Cerebellum Parcellation with Convolutional Neural Networks}}
 
{{TOCright}}
 
{{TOCright}}
This work originally appeared at {{pub|conf=spie2019}} It can be downloaded as a Singularity image once the work has appeared in press at SPIE-MI 2019.
+
<u>A</u>utomatic <u>c</u>erebellum <u>a</u>natomical <u>p</u>arcellation using <u>U</u>-Net with <u>l</u>ocally <u>c</u>onstrained <u>o</u>ptimization&nbsp;(ACAPULCO) is our current cerebellum parcellation method. The associated publication is:
<!-- from {{iacl|~aaron/data/composed_parc.simg|Cerebellar CNN Segmentation Code}}. -->
 
  
 +
{{iacl-pub| author=S. Han, A. Carass, Y. He, and J.L. Prince| title=Automatic Cerebellum Anatomical Parcellation using U-Net with Locally Constrained Optimization| jrnl=ni| number=218:116819| when=2020| doi=10.1016/j.neuroimage.2020.116819}}
  
{{h3|What the Singularity image can do}}
 
The Singularity performs the following steps:
 
* [https://www.nitrc.org/projects/robex ROBEX] is used to estimate a brain mask. This mask is then smoothed to generate a brain weight image.
 
* N4 from [http://stnava.github.io/ANTs/ ANTs] is used to perform the bias field correction. The bias field is estimated using the weight image calculated above.
 
* The images are rigidly registered to the [http://www.bic.mni.mcgill.ca/ServicesAtlases/ICBM152NLin2009 ICBM2009c] nonlinear symmetric template using the ANTs package. The first MPRAGE image from the longitudinal series of a subject is registered to this template and other images with different contrasts/from the following sessions are registered to the first MPRAGE image.
 
* 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 [https://fsl.fmrib.ox.ac.uk/fslcourse/lectures/practicals/intro2/index.html fsl], but it is not done in this singularity image.
 
* (OPTIONAL) Generate a HTML report file. To generate the report, the images are converted to .png files which could occupy a large hard disk space.
 
  
 +
{|align="center" style="width:75%; border:2px #e99095 solid; background:#ffffff; text-align:left;"
 +
|-
 +
| colspan="3" align="center" | '''ACAPULCO'''
 +
|-
 +
<!--
 +
| {{iacl|~shuo/data/acapulco_022.tar.gz|Docker image CPU}}
 +
| 1.8GB
 +
|-
 +
| {{iacl|~shuo/data/acapulco_022_gpu.tar.gz|Docker image GPU}}
 +
| 2.5GB
 +
|-
 +
-->
 +
| {{iacl|~shuo/data/acapulco_030.sif|Singularity image CPU}}
 +
| Feb 27  2022
 +
| 1.8GB
 +
|-
 +
| {{iacl|~shuo/data/acapulco_030_gpu.sif|Singularity image GPU}}
 +
| Feb 27  2022
 +
| 2.5GB
 +
|-
 +
|}
  
* [https://www.gnu.org/software/parallel/ GNU Parallel] is used to run jobs in parallel.
 
  
 +
If you use it please cite the above paper. If you have any questions, please email Shuo Han at <code>shan50 _AT_ jhu.edu</code>.
  
{{h3|Installation}}
 
* Install [https://www.sylabs.io/guides/2.6/user-guide/installation.html singularity 2.6]
 
  
 +
{{h3|Instructions}}
  
{{h3|File structure (important)}}
+
The instructions are available [https://gitlab.com/shuohan/keras-unet-cerebellum/-/blob/master/README.md here].
* The images should be organized in the [http://bids.neuroimaging.io/ BIDS format]. For this singularity to run, the file structure is (be sure to create a subfolder `data/` under the processing folder):
 
  
<data_dir>/
+
{{h3| Delineation protocols: region names and voxel values}}
    data/
 
      sub-<subject-label>/
 
          ses-<session-label>/
 
            anat/
 
                sub-<sub-label>_ses-<ses-label>_acq-mprage_[run-<run-label>]_T1w.nii.gz
 
  
Note the '''"acq"''' label is required and run label is optional.
+
* Adult training data:
 +
"Background":            0,
 +
"Corpus Medullare":      12,
 +
"Left I-III":            33,
 +
"Right I-III":            36,
 +
"Left IV":                43,
 +
"Rigt IV":                46,
 +
"Left V":                53,
 +
"Right V":                56,
 +
"Vermis VI":              60,
 +
"Left VI":                63,
 +
"Right VI":              66,
 +
"Vermis VII":            70,
 +
"Left Crus I":            73,
 +
"Left Crus II":          74,
 +
"Left VIIB":              75,
 +
"Right Crus I":          76,
 +
"Right Crus II":          77,
 +
"Right VIIB":            78,
 +
"Vermis VIII":            80,
 +
"Left VIIIA":            83,
 +
"Left VIIIB":            84,
 +
"Right VIIIA":            86,
 +
"Right VIIIB":            87,
 +
"Vermis IX":              90,
 +
"Left IX":                93,
 +
"Right IX":              96,
 +
"Vermis X":              100,
 +
"Left X":                103,
 +
"Right X":              106
  
The processing will create subfolders '''"n4"''', '''"mni"''', '''"parc"''', and '''"post"''' under the folder '''"<data_dir>"'''. The final parcellation results are in '''"<data_dir>/post"'''.
 
'''"*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 final post-processed result.
 
  
ICV is calculated from the ROBEX mask. A '''".tsv"''' file of the ICV is stored in '''"<data_dir>/n4"''' as '''"*_T1w_mask_icv.tsv"'''.
 
  
The volumes of the cerebellar regions are calculated from the '''"*post.nii.gz"''' and stored in '''"<data_dir>/post"''' as '''"*post_volumes.tsv"'''.
+
* Pediatric training data:
 
+
  "Background":             0,
An optional report is stored as '''"<data_dir>/report.html"'''.
+
  "Right Lobules I-V":      3,
 
+
"Right Lobule VI":         4,
Using a bash/python/perl etc. script to organize your data using soft (symbolic) link is recommended.
+
"Right Crus I":           5,
 
+
"Right Crus II/VIIB":     6,
 
+
"Right Lobule VIII":       7,
{{h3|Example Usage}}
+
"Right Lobule IX":         8,
* Assuming the singularity image is ~/parc.simg
+
"Right Lobule X":         9,
singularity run ~/parc.simg -d ~/processing
+
  "Left Lobules I-V":       10,
 
+
  "Left Lobule VI":         11,
* Generate a report html
+
  "Left Crus I":           12,
singularity run ~/parc.simg -d ~/processing -r
+
  "Left Crus II/VIIB":     13,
 
+
  "Left Lobule VIII":       14,
* Run multiple 16 jobs in parallel
+
  "Left Lobule IX":         15,
singularity run ~/parc.simg -d ~/processing -r -j 16
+
  "Left Lobule X":         16,
 
+
  "Vermis I-V":             17,
* Print help
+
  "Vermis VI-VII":         18,
  singularity run ~/parc.simg -h
+
"Vermis VIII-X":         19,
 
+
"Corpus Medullare":       20
 
 
{{h3|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"
 

Latest revision as of 18:19, 2 November 2022

Cerebellum Parcellation with Convolutional Neural Networks

Automatic cerebellum anatomical parcellation using U-Net with locally constrained optimization (ACAPULCO) is our current cerebellum parcellation method. The associated publication is:

  • S. Han, A. Carass, Y. He, and J.L. Prince, "Automatic Cerebellum Anatomical Parcellation using U-Net with Locally Constrained Optimization", NeuroImage, 218:116819, 2020. (doi)


ACAPULCO
Singularity image CPU Feb 27 2022 1.8GB
Singularity image GPU Feb 27 2022 2.5GB


If you use it please cite the above paper. If you have any questions, please email Shuo Han at shan50 _AT_ jhu.edu.


Instructions

The instructions are available here.

Delineation protocols: region names and voxel values

  • Adult training data:
"Background":             0,
"Corpus Medullare":       12, 
"Left I-III":             33, 
"Right I-III":            36, 
"Left IV":                43, 
"Rigt IV":                46, 
"Left V":                 53, 
"Right V":                56, 
"Vermis VI":              60, 
"Left VI":                63, 
"Right VI":               66, 
"Vermis VII":             70, 
"Left Crus I":            73, 
"Left Crus II":           74, 
"Left VIIB":              75, 
"Right Crus I":           76, 
"Right Crus II":          77, 
"Right VIIB":             78, 
"Vermis VIII":            80, 
"Left VIIIA":             83, 
"Left VIIIB":             84, 
"Right VIIIA":            86, 
"Right VIIIB":            87, 
"Vermis IX":              90, 
"Left IX":                93, 
"Right IX":               96, 
"Vermis X":              100,
"Left X":                103,
"Right X":               106


  • Pediatric training data:
"Background":              0,
"Right Lobules I-V":       3,
"Right Lobule VI":         4,
"Right Crus I":            5,
"Right Crus II/VIIB":      6,
"Right Lobule VIII":       7,
"Right Lobule IX":         8,
"Right Lobule X":          9,
"Left Lobules I-V":       10,
"Left Lobule VI":         11,
"Left Crus I":            12,
"Left Crus II/VIIB":      13,
"Left Lobule VIII":       14,
"Left Lobule IX":         15,
"Left Lobule X":          16,
"Vermis I-V":             17,
"Vermis VI-VII":          18,
"Vermis VIII-X":          19,
"Corpus Medullare":       20