Difference between revisions of "DBP2:UNC:Local Cortical Thickness Pipeline"

From NAMIC Wiki
Jump to: navigation, search
(New page: Back to UNC Cortical Thickness Roadmap __NOTOC__ == Objective == We would like to create an end-to-end application within Slicer3 allowing indiv...)
 
 
(80 intermediate revisions by the same user not shown)
Line 1: Line 1:
Back to [[DBP2:UNC:Cortical_Thickness_Roadmap | UNC Cortical Thickness Roadmap]]
+
Back to [[DBP2:UNC:Cortical_Thickness_Roadmap | UNC Cortical Thickness Roadmap]]
__NOTOC__
+
 
 +
[[Image:GAMBITLogo.png|thumb|250px|GAMBIT Logo]]
  
 
== Objective ==
 
== Objective ==
  
We would like to create an end-to-end application within Slicer3 allowing individual and group analysis of local cortical thickness.
+
We would like to create an end-to-end application within Slicer3 allowing group-wise automatic mesh-based analysis of cortical thickness as well as other surface measurements (surface area...)
 +
 
 +
This page describes the related pipeline with its basic components, as well as its validation.
 +
 
 +
 
 +
 
 +
== Pipeline overview ==
 +
 
 +
A Slicer3 high-level module for group-wise cortical thickness analysis has been developed: GAMBIT (Group-wise Automatic Mesh Based analysis of cortIcal Thickness)
 +
 
 +
<div style="margin: 20px;">
 +
<div style="width: 42%; float: left; padding-right: 3%;">
 +
 
 +
Input: CSV file containing RAW images (T1-weighted, T2-weighted, PD-weighted images)
 +
 
 +
* '''1. Individual pipeline'''
 +
** '''1.1. Intensity inhomogeneity correction'''
 +
*** N4 Bias field correction
 +
*** Tool: N4ITKBiasFieldCorrection (Slicer3 module)
 +
** '''1.2. Tissue segmentation'''
 +
*** Probabilistic atlas-based automatic tissue segmentation via an Expectation-Maximization scheme
 +
*** Tool: ABC (UNC/Utah Slicer3 external module)
 +
** '''1.3. Atlas-based ROI segmentation:'''
 +
*** 1.3.1. Skull stripping using previously computed tissue segmentation label image
 +
**** Tool: SegPostProcessCLP (UNC Slicer3 external module)
 +
*** 1.3.2. T1-weighted atlas registration
 +
**** B-spline based or demons deformable atlas registration
 +
**** Tool: BRAINSFit, BRAINSDemonWarp (Slicer3 modules)
 +
*** 1.3.3. Applying transformations to the atlas masks (absolute white matter mask, grey matter mask, CSF to white matter mask, exclusion mask) and parcellations maps
 +
**** Tool: BRAINSResample (Slicer3 module)
 +
** '''1.4. Label map and white matter map creation'''
 +
*** Combine several masks to create label map used for cortical thickness computation
 +
*** Tool: LabelSegPostProcess (UNC Slicer3 external module)
 +
** '''1.5. Cortical thickness computation'''
 +
*** Asymmetric cortical thickness on label map
 +
*** Tool: CortThick (UNC Slicer3 external module)
 +
** '''1.6. White matter map post-processing'''
 +
*** Largest component computation, smoothing, connectivity enforcement, inside filling
 +
*** Tool: WMSegPostProcess (UNC Slicer3 external module)
 +
** '''1.7. Genus zero cortical surface creation and inflation'''
 +
*** 1.7.1. Genus zero cortical image and surface creation
 +
**** Tool: GenusZeroImageFilter (UNC Slicer3 external module)
 +
*** 1.7.2. White matter surface inflation
 +
**** Iterative smoothing using relaxation operator (considering average vertex) and L2 norm of the mean curvature as a stopping criterion
 +
**** Iteration stopped if vertices that have too high curvature (some extremities)
 +
**** Tool: MeshInflation (UNC Slicer3 external module)
 +
*** 1.7.3. (Optional). White matter image fixing if necessary
 +
**** Correction of the white matter map image (corresponding to vertices that have high curvature) with connectivity enforcement
 +
**** Tool: WMImageFixing (UNC Slicer3 external module)
 +
**** Go back to step 1.7.1
 +
** '''1.8. Cortical thickness attribute computation'''
 +
*** Cortical thickness interpolation on genus-zero surface
 +
*** Tools: MeshCortThick, MeshMath (UNC Slicer3 external modules)
 +
** '''1.9. Sulcal depth computation'''
 +
*** Sulcal depth computation using genus-zero surface and inflated one
 +
*** Tool: MeshMath (UNC Slicer3 external module)
 +
** '''1.10. Particles initialization for cortical correspondence'''
 +
*** Initializing particles on inflated genus-zero surface using 98-lobe parcellation map and genus zero surface
 +
*** Tools: MeshMath, ParticleInitializer (UNC Slicer3 external modules)
 +
** '''1.11. Surface area computation'''
 +
*** Local surface area measurement on smoothed genus-zero surface
 +
*** Tool: MeshMath (UNC Slicer3 external  module)
 +
* '''2. Particle-based shape correspondence'''
 +
** Correspondence on inflated surfaces using particle system
 +
** '''2.1. Correspondence Preprocessing'''
 +
*** Distance maps creation from inflated genus-zero surfaces with slight gaussian blurring
 +
*** Tool: ParticleCorrespondencePreProcessing (UNC Slicer3 external module)
 +
** '''2.2. Correspondence optimization'''
 +
*** Particle-based shape correspondence optimization (using sulcal depth) with Procrustes alignement
 +
*** Tool: ShapeWorksRun (Utah Slicer3 external module)
 +
** '''2.3. Correspondence Postprocessing'''
 +
*** Re-meshing of folded and inflated meshes using template
 +
*** Tool: ParticleCorrespondencePostProcessing (UNC Slicer3 external module)
 +
** '''2.4. Scalar attributes interpolation'''
 +
*** Cortical thickness and sulcal depth interpolation on surface in correspondence
 +
*** Tool: MeshMath (UNC module)
 +
* '''3. Group statistical analysis'''
 +
** Tool: QDEC, a FreeSurfer/Slicer module
 +
** Tool: [http://www.math.mcgill.ca/keith/surfstat/ SurfStat], a Matlab toolbox
 +
 
 +
</div>
 +
<div style="width: 55%; float: left;">
 +
 
 +
<center>
 +
{|
 +
| [[Image:MeshBasedCortThick_T1Image.jpg|thumb|175px|T1-weighted image]]
 +
| [[Image:MeshBasedCortThick_T1CorrectedImage.jpg|thumb|175px|T1 corrected image]]
 +
|}
 +
{|
 +
| [[Image:MeshBasedCortThick_T1LabelImage.jpg|thumb|175px|Label image]]
 +
| [[Image:MeshBasedCortThick_T1WMMesh.jpg|thumb|175px|White matter mesh]]
 +
|}
 +
 
 +
{|
 +
| [[Image:MeshBasedCortThick_BrainROIAtlas_AllROIMesh.jpg|thumb|200px|T1-weigthed atlas with subcortical structures]]
 +
| [[Image:MeshBasedCortThick_T1StrippedAllROIMesh.jpg|thumb|200px|ROI segmentation on T1-weigthed stripped image]]
 +
|}
 +
{|
 +
| [[Image:MeshBasedCortThick_WMMesh.jpg|thumb|200px|Genus-zero cortical surface]]
 +
| [[Image:MeshBasedCortThick_WMMeshInflated.jpg|thumb|200px|Inflated cortical surface]]
 +
|}
 +
{|
 +
| [[Image:MeshBasedCortThick_CorticalThickness.jpg|thumb|200px|Cortical thickness on genus-zero cortical surface]]
 +
| [[Image:MeshBasedCortThick_CorticalThicknessInflated.jpg|thumb|200px|Cortical thickness on inflated genus-zero cortical surface]]
 +
|}
 +
{|
 +
| [[Image:MeshBasedCortThick_SulcalDepth.jpg|thumb|200px|Sulcal depth on genus-zero cortical surface]]
 +
| [[Image:MeshBasedCortThick_SulcalDepthInflated.jpg|thumb|200px|Sulcal depth on inflated genus-zero cortical surface]]
 +
|}
 +
{|
 +
| [[Image:MeshBasedCortThick_Particles.jpg|thumb|200px|Particles on inflated genus-zero cortical surface]]
 +
|}
 +
</center>
 +
</div>
 +
</div>
 +
 
 +
== Download ==
 +
 
 +
All the tools used in the current pipeline are Slicer3 modules, some of them being UNC external modules. The user can thus compute an individual regional cortical thickness analysis by running the 'GAMBIT' module, either within Slicer3 or as a command line.
 +
 
 +
=== GAMBIT download ===
  
== General information ==
+
Source code, executables and tutorial are available on [http://www.nitrc.org/projects/gambit NITRC]
  
=== Pipeline description (steps) ===
+
=== Complementary downloads ===
  
Input: T1-weighted image
+
==== Brain atlases ====
 +
Four brain atlases are available on MIDAS and on NITRC:
 +
:* [http://www.insight-journal.org/midas/item/view/2277 Pediatric atlas]
 +
:* [http://www.insight-journal.org/midas/item/view/2328 Adult atlas]
 +
:* [http://www.insight-journal.org/midas/item/view/2330 Elderly atlas]
 +
:* [http://www.insight-journal.org/midas/item/view/2283 Primate atlas]
  
:* 1. Tissue segmentation
+
==== Pediatric MRI Brain data ====
:** Tool: itkEMS (UNC Slicer3 external module)
+
[http://insight-journal.org/midas/community/view/24 Data of 2 autistic children and 2 normal controls] (male, female) scanned at 2 years with follow up at 4 years from a 1.5T Siemens scanner. Files include structural data, tissue segmentation label map and subcortical structures segmentation.
:* 2. Skull stripping
 
:** Tool: SegPostProcess (UNC Slicer3 external module)
 
:* 3. Atlas-based structures segmentation: subcortical structures, cerebellum, lateral ventricles
 
:** 3.1 Deformable registration of T1-weighted pediatric atlas
 
:***Tool: RegisterImages (Slicer3 module)  
 
:** 3.2. Applying transformations to the structures
 
:*** Tool: ResampleVolume2 (Slicer3 module)
 
:* 4. WM and GM volume creations
 
:** Tool:
 
:* 5. Genus zero images and surfaces
 
:** Tool:
 
:* 6. Label map creation
 
:** Tool:
 
:* 7. Laplacian cortical thickness
 
:** Tool:
 
  
=== Usage (Command Line) ===
+
==== Tutorials ====
 +
• '''GAMBIT tutorial''' : end-to-end Slicer3 module to perform group-wise automatic mesh-based analysis of cortical thickness [[Media:GAMBIT_TutorialContestSummer2010.ppt|‏ [ppt]]][[Media:GAMBIT_TutorialContestSummer2010.pdf|‏ [pdf]]]
  
needs to be done
 
  
 +
<center>
 +
{|
 +
|[[Image:GAMBIT QC CorticalThickness.png|thumb|600px|Cortical thickness overlayed on inflated cortical surfaces]]
 +
|valign="center"|[[Image:GAMBIT_QC_SulcalDepth.png|thumb|600px|Sucal depth overlayed on inflated cortical surfaces]]
 +
|}
 +
</center>
 +
 +
== Pipeline validation ==
  
 
=== Analysis on a small pediatric dataset ===
 
=== Analysis on a small pediatric dataset ===
  
needs to be done
+
Tests will be computed on a small pediatric dataset which includes 2 year-old and 4 year-old cases.
 +
* 16 autistic cases
 +
* 1 developmental delay
 +
* 3 normal control
 +
 
 +
=== Comparison to state of the art ===
 +
 
 +
We would like to compare our pipeline with state of the art, such as FreeSurfer.
 +
 
 +
== Planning ==
 +
 
 +
=== Done ===
 +
 
 +
* Workflow for group analysis (Slicer3 external module using BatchMake):
 +
** Development of UNC Slicer3 modules
 +
** Modules applied on small pediatric dataset from the Autism study
 +
* Pediatric and adult brain atlases available to the community via MIDAS
 +
** T1-weighted atlas
 +
** Tissue segmentation probability maps
 +
** Subcortical structures probability maps
 +
** LBinary mask images
 +
* GAMBIT available to the community via NITRC: executables (UNC external modules for Slicer3) and tutorial dataset
 +
* Tutorial with application example on a small dataset
 +
* GAMBIT source code (CVS) available to the community
  
 
=== In progress ===
 
=== In progress ===
  
 +
* Step 1.7: Parameter exploration on autism dataset to improve inflation-fixing steps
 +
* Step 2: Particle correspondence testing with pediatric surfaces (Meeting with Josh Cates at UNC - February 2010)
 +
* New version of GAMBIT including quality control through MRML scene, and WM, GM models generation
 +
* GAMBIT executable can be downloaded directly within Slicer3 using the extension wizard
 +
 +
== References ==
  
=== Future work ===
+
*C. Vachet, H.C. Hazlett, M. Niethammer, I. Oguz, J.Cates, R. Whitaker, J. Piven, M. Styner, Group-wise Automatic Mesh-Based Analysis of Cortical Thickness, Proc. SPIE 7962, 796227 (2011)
:* UNC Slicer3 external modules available on NITRIC
+
*Oguz I., Niethammer M., Cates J., Whitaker R., Fletcher T., Vachet C., Styner M. [http://www.na-mic.org/publications/item/view/1671 Cortical Correspondence with Probabilistic Fiber Connectivity.] Inf Process Med Imaging. 2009;21:651-63. PMID: 19694301. PMCID: PMC2751643.
:* Workflow for individual analysis
+
*C. Vachet, H.C. Hazlett, M. Niethammer, I. Oguz, J.Cates, R. Whitaker, J. Piven, M. Styner, Mesh-based Local Cortical Thickness Framework, UNC Radiology Research Day 2009 abstract
:* Workflow for group analysis
+
*Oguz, I., Cates, J., Fletcher, T., Whitaker, R., Cool, D., Aylward, S., Styner, M., Cortical correspondence using entropy-based particle systems and local features, IEEE Symposium on Biomedical Imaging ISBI 2008. 1637-1640.
 +
*J. Cates J., Fletcher P.T., Styner M., Hazlett H.C., Whitaker R. [http://www.na-mic.org/publications/item/view/1473 Particle-Based Shape Analysis of Multi-object Complexes.] Int Conf Med Image Comput Comput Assist Interv. 2008;11(Pt 1):477-485. PMID: 18979781. PMCID: PMC2753605.
 +
*Cates, J., Fletcher, P., Whitaker, R.: Entropy-based particle systems for shape correspondence. MFCA Workshop, MICCAI 2006, 90–99

Latest revision as of 19:45, 8 June 2011

Home < DBP2:UNC:Local Cortical Thickness Pipeline
Back to  UNC Cortical Thickness Roadmap
GAMBIT Logo

Objective

We would like to create an end-to-end application within Slicer3 allowing group-wise automatic mesh-based analysis of cortical thickness as well as other surface measurements (surface area...)

This page describes the related pipeline with its basic components, as well as its validation.


Pipeline overview

A Slicer3 high-level module for group-wise cortical thickness analysis has been developed: GAMBIT (Group-wise Automatic Mesh Based analysis of cortIcal Thickness)

Input: CSV file containing RAW images (T1-weighted, T2-weighted, PD-weighted images)

  • 1. Individual pipeline
    • 1.1. Intensity inhomogeneity correction
      • N4 Bias field correction
      • Tool: N4ITKBiasFieldCorrection (Slicer3 module)
    • 1.2. Tissue segmentation
      • Probabilistic atlas-based automatic tissue segmentation via an Expectation-Maximization scheme
      • Tool: ABC (UNC/Utah Slicer3 external module)
    • 1.3. Atlas-based ROI segmentation:
      • 1.3.1. Skull stripping using previously computed tissue segmentation label image
        • Tool: SegPostProcessCLP (UNC Slicer3 external module)
      • 1.3.2. T1-weighted atlas registration
        • B-spline based or demons deformable atlas registration
        • Tool: BRAINSFit, BRAINSDemonWarp (Slicer3 modules)
      • 1.3.3. Applying transformations to the atlas masks (absolute white matter mask, grey matter mask, CSF to white matter mask, exclusion mask) and parcellations maps
        • Tool: BRAINSResample (Slicer3 module)
    • 1.4. Label map and white matter map creation
      • Combine several masks to create label map used for cortical thickness computation
      • Tool: LabelSegPostProcess (UNC Slicer3 external module)
    • 1.5. Cortical thickness computation
      • Asymmetric cortical thickness on label map
      • Tool: CortThick (UNC Slicer3 external module)
    • 1.6. White matter map post-processing
      • Largest component computation, smoothing, connectivity enforcement, inside filling
      • Tool: WMSegPostProcess (UNC Slicer3 external module)
    • 1.7. Genus zero cortical surface creation and inflation
      • 1.7.1. Genus zero cortical image and surface creation
        • Tool: GenusZeroImageFilter (UNC Slicer3 external module)
      • 1.7.2. White matter surface inflation
        • Iterative smoothing using relaxation operator (considering average vertex) and L2 norm of the mean curvature as a stopping criterion
        • Iteration stopped if vertices that have too high curvature (some extremities)
        • Tool: MeshInflation (UNC Slicer3 external module)
      • 1.7.3. (Optional). White matter image fixing if necessary
        • Correction of the white matter map image (corresponding to vertices that have high curvature) with connectivity enforcement
        • Tool: WMImageFixing (UNC Slicer3 external module)
        • Go back to step 1.7.1
    • 1.8. Cortical thickness attribute computation
      • Cortical thickness interpolation on genus-zero surface
      • Tools: MeshCortThick, MeshMath (UNC Slicer3 external modules)
    • 1.9. Sulcal depth computation
      • Sulcal depth computation using genus-zero surface and inflated one
      • Tool: MeshMath (UNC Slicer3 external module)
    • 1.10. Particles initialization for cortical correspondence
      • Initializing particles on inflated genus-zero surface using 98-lobe parcellation map and genus zero surface
      • Tools: MeshMath, ParticleInitializer (UNC Slicer3 external modules)
    • 1.11. Surface area computation
      • Local surface area measurement on smoothed genus-zero surface
      • Tool: MeshMath (UNC Slicer3 external module)
  • 2. Particle-based shape correspondence
    • Correspondence on inflated surfaces using particle system
    • 2.1. Correspondence Preprocessing
      • Distance maps creation from inflated genus-zero surfaces with slight gaussian blurring
      • Tool: ParticleCorrespondencePreProcessing (UNC Slicer3 external module)
    • 2.2. Correspondence optimization
      • Particle-based shape correspondence optimization (using sulcal depth) with Procrustes alignement
      • Tool: ShapeWorksRun (Utah Slicer3 external module)
    • 2.3. Correspondence Postprocessing
      • Re-meshing of folded and inflated meshes using template
      • Tool: ParticleCorrespondencePostProcessing (UNC Slicer3 external module)
    • 2.4. Scalar attributes interpolation
      • Cortical thickness and sulcal depth interpolation on surface in correspondence
      • Tool: MeshMath (UNC module)
  • 3. Group statistical analysis
    • Tool: QDEC, a FreeSurfer/Slicer module
    • Tool: SurfStat, a Matlab toolbox
T1-weighted image
T1 corrected image
Label image
White matter mesh
T1-weigthed atlas with subcortical structures
ROI segmentation on T1-weigthed stripped image
Genus-zero cortical surface
Inflated cortical surface
Cortical thickness on genus-zero cortical surface
Cortical thickness on inflated genus-zero cortical surface
Sulcal depth on genus-zero cortical surface
Sulcal depth on inflated genus-zero cortical surface
Particles on inflated genus-zero cortical surface

Download

All the tools used in the current pipeline are Slicer3 modules, some of them being UNC external modules. The user can thus compute an individual regional cortical thickness analysis by running the 'GAMBIT' module, either within Slicer3 or as a command line.

GAMBIT download

Source code, executables and tutorial are available on NITRC

Complementary downloads

Brain atlases

Four brain atlases are available on MIDAS and on NITRC:

Pediatric MRI Brain data

Data of 2 autistic children and 2 normal controls (male, female) scanned at 2 years with follow up at 4 years from a 1.5T Siemens scanner. Files include structural data, tissue segmentation label map and subcortical structures segmentation.

Tutorials

GAMBIT tutorial : end-to-end Slicer3 module to perform group-wise automatic mesh-based analysis of cortical thickness ‏ [ppt]‏ [pdf]


Cortical thickness overlayed on inflated cortical surfaces
Sucal depth overlayed on inflated cortical surfaces

Pipeline validation

Analysis on a small pediatric dataset

Tests will be computed on a small pediatric dataset which includes 2 year-old and 4 year-old cases.

  • 16 autistic cases
  • 1 developmental delay
  • 3 normal control

Comparison to state of the art

We would like to compare our pipeline with state of the art, such as FreeSurfer.

Planning

Done

  • Workflow for group analysis (Slicer3 external module using BatchMake):
    • Development of UNC Slicer3 modules
    • Modules applied on small pediatric dataset from the Autism study
  • Pediatric and adult brain atlases available to the community via MIDAS
    • T1-weighted atlas
    • Tissue segmentation probability maps
    • Subcortical structures probability maps
    • LBinary mask images
  • GAMBIT available to the community via NITRC: executables (UNC external modules for Slicer3) and tutorial dataset
  • Tutorial with application example on a small dataset
  • GAMBIT source code (CVS) available to the community

In progress

  • Step 1.7: Parameter exploration on autism dataset to improve inflation-fixing steps
  • Step 2: Particle correspondence testing with pediatric surfaces (Meeting with Josh Cates at UNC - February 2010)
  • New version of GAMBIT including quality control through MRML scene, and WM, GM models generation
  • GAMBIT executable can be downloaded directly within Slicer3 using the extension wizard

References

  • C. Vachet, H.C. Hazlett, M. Niethammer, I. Oguz, J.Cates, R. Whitaker, J. Piven, M. Styner, Group-wise Automatic Mesh-Based Analysis of Cortical Thickness, Proc. SPIE 7962, 796227 (2011)
  • Oguz I., Niethammer M., Cates J., Whitaker R., Fletcher T., Vachet C., Styner M. Cortical Correspondence with Probabilistic Fiber Connectivity. Inf Process Med Imaging. 2009;21:651-63. PMID: 19694301. PMCID: PMC2751643.
  • C. Vachet, H.C. Hazlett, M. Niethammer, I. Oguz, J.Cates, R. Whitaker, J. Piven, M. Styner, Mesh-based Local Cortical Thickness Framework, UNC Radiology Research Day 2009 abstract
  • Oguz, I., Cates, J., Fletcher, T., Whitaker, R., Cool, D., Aylward, S., Styner, M., Cortical correspondence using entropy-based particle systems and local features, IEEE Symposium on Biomedical Imaging ISBI 2008. 1637-1640.
  • J. Cates J., Fletcher P.T., Styner M., Hazlett H.C., Whitaker R. Particle-Based Shape Analysis of Multi-object Complexes. Int Conf Med Image Comput Comput Assist Interv. 2008;11(Pt 1):477-485. PMID: 18979781. PMCID: PMC2753605.
  • Cates, J., Fletcher, P., Whitaker, R.: Entropy-based particle systems for shape correspondence. MFCA Workshop, MICCAI 2006, 90–99