2012 Summer Project Week:MultiVolumeSupport
From NAMIC Wiki
Home < 2012 Summer Project Week:MultiVolumeSupport
Key Investigators
- BWH: Andrey Fedorov, Steve Pieper
- GE: Jim Miller
- OHSU: Brendan Moloney
Objective
MultiVolume support is a new feature of Slicer4 available in version 4.1. This module is "work in progress", and the goal of this project is to work on adding new features related to multivolume support, discuss use cases and plan future development related to this module.
Approach, Plan
Specific items we will discuss:
- Self-sufficient format that would allow to store multi-volume frames together with the metadata (NRRD? NIfTI?)
- May require updating NRRD for both Slicer and ITK
- Integration of MultiVolume nodes with the DCE modeling capabilities under development
- Application of the MultiVolumes concept to the other potential use cases (Steve's DataHub?) and what changes would be required
- Discuss what are the features needed for the existing use-cases, and work on implementation of some of them.
Progress
- Andrey worked on removing the dependency of MultiVolumeNode on the DWV node -- this seems to be mostly done; (see progress on MultiVolume* github projects)
- Jim has been working on
- adding support for IO of attributes into NRRD format (vtkNRRDStorageNode and IDImageIO)
- adding support of new volume attributes to CLI logic
- rethinking the architecture of volumes and the intuitive naming for the multi-volume related concepts
- MultiVolume has been discussed at the Slicer 4 "new features" meeting 2012_Project_Week_Breakout_Session:_Slicer4
- feature suggestions and bug reports have been reported on mantis
- Brendan has been working on:
- New UI for MultiVolumeImporter. This will allow:
- Importing individual files (i.e. 4D Nifti)
- A simpler and more flexible way to specify the DICOM tag to sort with (keywords instead of tag numbers)
- Can reorder the input files that are not in the correct alpha-numeric order
- New logic for MultiVolumeImporter.
- Automatically detect the best method of loading the input files.
- DICOM files will be imported using my own python package "dcmstack" (https://github.com/moloney/dcmstack).
- Files that can be handled with Nibabel (http://nipy.sourceforge.net/nibabel/) will use that for loading.
- Otherwise it will fall back to the current loading logic using ITK for loading.
- This is nearly finished, but is held up by a bug involving numpy (http://www.na-mic.org/Bug/view.php?id=2249)
- New UI for MultiVolumeImporter. This will allow:
Delivery Mechanism
MultiVolumes support is available to the NA-MIC Kit as a Slicer4 loadable module included in the stable release.
References
- http://wiki.slicer.org/slicerWiki/index.php/Documentation/4.1/Modules/MultiVolumeImporter
- http://wiki.slicer.org/slicerWiki/index.php/Documentation/4.1/Modules/MultiVolumeExplorer
- http://github.com/millerjv/PkModeling
- http://wiki.slicer.org/slicerWiki/index.php/Documentation/4.1/Extensions/PkModeling