Difference between revisions of "User:Inorton/Slicer4:DTMRI Thoughts"
From NAMIC Wiki
Line 8: | Line 8: | ||
** 2-4 thresholded fMRI activation volumes (coregistered and resliced to structural in SPM) | ** 2-4 thresholded fMRI activation volumes (coregistered and resliced to structural in SPM) | ||
** DTI | ** DTI | ||
− | * Preprocess DTI | + | * Preprocess DTI (convert to NRRD, estimate tensors) |
* Coregister all images using BrainsFit | * Coregister all images using BrainsFit | ||
* Segment tumor or pathology region | * Segment tumor or pathology region |
Revision as of 03:48, 24 January 2011
Contents
Clinical perspective
We are using Slicer3 for 2-4 Neurosurgery planning cases per week. We have used the Slicer3 FiducialSeeding functionality in the OR (with OpenIGTLink/BioImageSuite/BrainLab driving the seeding location).
Workflow
- Scan and push images to clinical PACS and our clinical fMRI processing workstation (has SCP and dicom db capability)
- Pull/copy images from clinical PACS and processing workstation to research laptop/workstation
- Load all images:
- T1, T2, (sometimes CT, PET, CBV from perfusion MR, etc.)
- 2-4 thresholded fMRI activation volumes (coregistered and resliced to structural in SPM)
- DTI
- Preprocess DTI (convert to NRRD, estimate tensors)
- Coregister all images using BrainsFit
- Segment tumor or pathology region
- Bring to clinician to use FiducialSeeding to explore area around tumor.
- (if requested, re-load DICOMs on clinical navigation suite and re-select tracts identified in Slicer)
Background Thoughts
Audiences
- Clinical/research end users: need simple, efficient, relatively intuitive workflow to generate tractography and perform selection and statistics operations.
- Clinical developers: integrate DTI functionality for domain-specific purposes (neurosurgery, neurology, etc.)
- Pipeline developers: the underlying implementations need to be abstracted sufficiently to allow creation of pipeline tools for large-study purposes.
- DTI Researchers:
- Could use Slicer+ipython+numpy+... instead of matlab and custom code. Advantages: data-reading and visualization boilerplate code already exists. Challenges: learning curve; the python suite is less integrated than matlab, but it's getting better; pure matlab is relatively more stable (mex stuff can introduce problems).
- Implementation of new algorithms in Slicer opens up larger potential userbase.
Slicer advantages
See big list of DTI software here: User:inorton/DTI_Software_List.
There are several excellent DTI-centric applications. What advantages does Slicer have for DTI work?
- More user-friendly data loading: TrackVis requires command line preprocessing; MedInria and TrackVis require manual gradient entry; DTI studio is limited to ROI exploration only (as far as I know)
- Many segmentation options already available - no external tool (TrackVis, DTI Studio) or separate interface (MedInria) required.
- Already integrated with intra-operative systems via OpenIGTLink functionality
- Open-source license (TrackVis closed, MedInria non-commercial, DTI Studio closed)
- DicomToNRRDConverter test suite: validate DICOM loading from many different scanner types, with special emphasis on DTI private header information.
Slicer improvement areas
(this is referring to Slicer3 interactive DTMRI tools: these areas need improvement in Slicer 4)
- FiducialSeeding is too slow with high-density seeding, low step-values, or large seeding regions. This is probably intrinsic. Possible improvements include using a multi-threaded seeding filter, or using the GPU (?). But that may be superfluous: with good selection tools, dense pre-seeding in whole-brain or at least extended area of interest may be a better option.
- Current fiber data model is inefficient for interactive use on large sets (tens of thousands) of fiber tracts.
- Missing good interactive ROI selection, clustering, and editing capability for pre-computed fibersets.
- Need subset selection and coloring.
- Need interactive, user-friendly tract/bundle statistics generation.
- Labelmap seeding is not multi-threaded so whole-brain tractography takes.. longer than I would like.
- Disjointed interface: no one-stop integrated GUI for full DICOMs->tracts->measurements workflow.
Existing NA-MIC resources
- teem: the Slicer3 interactive DTI implementation uses teem through the vtkTeem libraries.
- GTRACT: command-line tools for DTI pipeline processing
- UNC DTI Tools (FiberViewer):
Existing open-source external resources
See big list of DTI software here: User:inorton/DTI_Software_List
- (BSD-like licenses)
- DiPy: diffusion imaging in python. Currently pre/alpha but in active development. (BSD license)
- DTI-query and CINCH: (BSD license)