|
|
(52 intermediate revisions by 7 users not shown) |
Line 1: |
Line 1: |
− | == Goal ==
| + | <big>'''Note:''' We are migrating this content to the slicer.org domain - <font color="orange">The newer page is [https://www.slicer.org/wiki/Slicer3:DTMRI here]</font></big> |
− | | |
− | Development of the infrastructure for DT-MRI processing and visualization and fiber processing and visualization. A secondary goal is the integration of new and existing methods and algorithms for DT-MRI processing using the provided infrastructure. This integration will have as goal the porting of the current DT-MRI capabilities existing in Slicer 2.x and the addition of new features.
| |
− | | |
− | == Global Features ==
| |
− | | |
− | The general features can be grouped in:
| |
− | | |
− | * Core features for DTMRI processing
| |
− | * Solution enviroments for DTMRI analysis
| |
− | | |
− | The first group will provide the necessary tools to build the Solutions that will be the user front-end.
| |
− | | |
− | === Core features ===
| |
− | ==== Data Model ====
| |
− | MRML Node definition for different data representations involved in DTI analysis
| |
− | * Diffusion Weighted Images: [http://www.na-mic.org/ViewVC/index.cgi/trunk/Libs/MRML/vtkMRMLDiffusionWeightedVolumeNode.h?view=log vtkMRMLDiffusionWeightedVolumeNode] and [http://www.na-mic.org/ViewVC/index.cgi/trunk/Libs/MRML/vtkMRMLDiffusionWeightedVolumeDisplayNode.h?view=log vtkMRMLDiffusionWeightedVolumeDisplayNode].
| |
− | * Diffusion Tensor Images: [http://www.na-mic.org/ViewVC/index.cgi/trunk/Libs/MRML/vtkMRMLDiffusionTensorVolumeNode.h?view=log vtkMRMLDiffusionTensorVolumeNode], [http://www.na-mic.org/ViewVC/index.cgi/trunk/Libs/MRML/vtkMRMLDiffusionTensorVolumeDisplayNode.h?view=log vtkMRMLDiffusionTensorVolumeDisplayNode] and [http://www.na-mic.org/ViewVC/index.cgi/trunk/Libs/MRML/vtkMRMLDiffusionTensorDisplayPropertiesNode.h?view=log vtkMRMLDiffusionTensorDisplayPropertiesNode].
| |
− | * Fiber Bundles: [http://www.na-mic.org/ViewVC/index.cgi/trunk/Libs/MRML/vtkMRMLFiberBundleNode.h?view=log vtkMRMLFiberBundleNode] and [http://www.na-mic.org/ViewVC/index.cgi/trunk/Libs/MRML/vtkMRMLFiberBundleDisplayNode.h?view=log vtkMRMLFiberBundleDisplayNode].
| |
− | | |
− | ==== Storage and I/O ====
| |
− | * DWI and DTI I/O: NRRD is the format supported by Slicer 3 for storing DWI and DTI images.
| |
− | ** NNRD reader/writer: [http://www.na-mic.org/ViewVC/index.cgi/trunk/Libs/vtkTeem/vtkNRRDReader.h?view=log vtkNRRDReader] and [http://www.na-mic.org/ViewVC/index.cgi/trunk/Libs/vtkTeem/vtkNRRDWriter.h?view=log vtkNRRDWriter].
| |
− | ** Storage node: [http://www.na-mic.org/ViewVC/index.cgi/trunk/Libs/MRML/vtkMRMLNRRDStorageNode.h?view=log vtkMRMLNRRDStorageNode].
| |
− | *
| |
− | | |
− | ==== Displaying Logic ====
| |
− | * Slicer Layer Logic
| |
− | * Geometry Layer Logic:
| |
− | | |
− | ==== Diffusion Modelling ====
| |
− | * Tensor Estimation from DWI: this part is a clear candidate for the an implementation using CLP. A desired feature would be the possibility of estimating tensors using different methods, namely:
| |
− | ** Least Squares
| |
− | ** Weighted Least Squares
| |
− | ** Non-linear methods
| |
− | ** Maximum Likelihood approach
| |
− | | |
− | Teem currently provides a clean interface to do this estimation in a voxel by voxel fashion. Gordon and Raul have worked on a vtk filter to encapsulate the estimation process.
| |
− | | |
− | * Diffusion Weighted Images preprocessing: another candidate for CLP. Integration of Rician noise filtering done at Utah.
| |
− | * Tools for
| |
− | ** Computation of scalar measurements from tensor fields
| |
− | ** Fast rendering of tensor fields using glyphs: line, box, ellipsoid, superquadric.
| |
− | ** Fiber Tracking using integration techniques
| |
− | ** Statistics along fiber tracts
| |
− | ** Multiple ROI seeding and logic interconnections between ROIs
| |
− | ** Fiber clustering techniques
| |
− | * Algorithms for DT-MRI registration: Xiadoing et al from GE have presented a nice method for DWI registration that has great potential and deals in a clean way with many of the technical difficulties of registering only tensor fields.
| |
− | * Algorithms for DT-MRI segmentation.
| |
− | | |
− | === Solution enviroments ===
| |
− | | |
− | * Connectivity solution: enviroment for ROI definition and fiber bundling based on clustering techniques or logic operations.
| |
− | | |
− | Multiple ROI seeding and logical interconnection between ROIs.
| |
− | | |
− | * Fiber editing solution: enviroment for manually editing individual fibers/bundles, reassignation of fibers to bundles.
| |
− | * Fiber analysis solution: enviroment to run statistical analysis on fiber bundles.
| |
− | * DT-MRI segmentation: enviroment for segmentation of DT-MRI fields
| |
− | * DT-MRI registration: enviroment for registration of DT-MRI fields (possibly via DWI registration -- work done at GE and presented in MICCAI '06).
| |
− | | |
− | == Plan ==
| |
− | | |
− | We will achieve the aforementioned goal in two stages:
| |
− | | |
− | === Stage 1 ===
| |
− | | |
− | * Design and Implementation of the basic infrastructure to handle DWI datasets and DT-MRI datasets
| |
− | ** Development of the hierchachy of MRML nodes for the DWI and Tensor dataset representation
| |
− | ** Development of Storage nodes to I/O these new datasets. Given the current limitation of the Archtype readers, we will temporally fall back on the vtkNRRDReader/Writer existing in Slicer2.x for I/O operations.
| |
− | ** Definition of the basic logic for the display of DWI datasets and Tensor datasets
| |
− | | |
− | * Design and Implementation of the basic infrastructure to handle fiber and fiber bundles.
| |
− | ** Development of Fiber MRML nodes for Fiber and Fiber bundles representation.
| |
− | ** Development of logic componets for fiber optimal rendering. There is a need for finding a good trade off between performance (real time interaction with fibers) and number of actors assigned to the fibers. This is an area that Kitware might contribute on.
| |
− | ** Tracking method porting/implementation. It is argueable that we want to incorporate this as a CLP module if we want to keep real-time performance in terms of interactive tractography.
| |
− | | |
− | === Stage 2 ===
| |
− | | |
− | * Implementation of core features based on the infrastructure.
| |
− | * Development of solution enviroments.
| |
− | | |
− | | |
− | == Applications/Use Cases for DTI in Slicer3 ==
| |
− | * Quantitative measurement
| |
− | ** Tract-based
| |
− | ** Region of interest-based
| |
− | * fMRI seeding
| |
− | * Surgical planning
| |
− | * anatomical investigation/atlas creation
| |