Difference between revisions of "2016 Summer Project Week/Segmentations Integration"
From NAMIC Wiki
Line 2: | Line 2: | ||
<gallery> | <gallery> | ||
Image:PW-Summer2016.png|[[2016_Summer_Project_Week#Projects|Projects List]] | Image:PW-Summer2016.png|[[2016_Summer_Project_Week#Projects|Projects List]] | ||
+ | Image:SegmentationHighlights01s.png|Highlights of segmentations 1 | ||
+ | Image:SegmentationHighlights02s.png|Highlights of segmentations 2 | ||
Image:20160526_SegmentationObject.PNG|Segmentation object | Image:20160526_SegmentationObject.PNG|Segmentation object | ||
Image:20160526_ConversionGraph.PNG|Conversion graph for automated conversions | Image:20160526_ConversionGraph.PNG|Conversion graph for automated conversions | ||
Image:20160526_SegmentationsArchitecture.png|Segmentations architecture | Image:20160526_SegmentationsArchitecture.png|Segmentations architecture | ||
Image:ContourRepresentations_201507.png|Representations | Image:ContourRepresentations_201507.png|Representations | ||
− | |||
− | |||
</gallery> | </gallery> | ||
Revision as of 12:09, 20 June 2016
Home < 2016 Summer Project Week < Segmentations IntegrationKey Investigators
- Csaba Pinter
- Andras Lasso
- Steve Pieper
- Jean-Christophe Fillion-Robin (to be consulted remotely)
Project Description
Objective
- Integration of the Segmentation infrastructure into Slicer core
- The infrastructure contains the following components:
- SegmentationCore: Pure VTK implementation of the segmentation object, oriented VTK image data and utilities, and the automated conversion mechanism
- Segmentation MRML: Segmentation MRML node, display node, storage node, displayable managers
- Segmentations module: Slicer module for handling segmentation nodes, various re-usable widgets, and subject hierarchy plugins
- Segment Editor: Slicer module for editing segmentation nodes directly. Similar to Editor, but has a C++ core, and extended functionality that makes use of the advanced Segmentations features
- Segment Morphology: Slicer module for performing expand/shrink and logical operations (union, intersection, subtraction) on segments. Its logic can be used in Segment Editor effects
- Segment Registration (?): Distance map based registration of segmentations (from SlicerProstate::DistanceMapBasedRegistration, integration TBD)
- Presentation slides explaining the motivation, features, and details of the infrastructure
Approach, Plan
- Move classes into Slicer core
- Convert to Slicer core coding conventions (curly brackets in line with the contained block)
- vtkSegmentationCore -> vtkAddon?
- Segmentations/MRML -> Libs/MRML/Core
- Segmentations/MRMLDM -> Libs/MRML/DisplayableManager
- Segmentations/Widgets -> MRML/Widgets?
- Segmentations/EditorEffects -> ?
- Segmentations -> Modules/Loadable
- SegmentEditor -> Modules/Scripted
- Discuss possible integration vtkOrientedImageData to VTK core