CIBC:Documentation:Seg3D:FeatureRequests:July25-07-List
From SCIRun Documentation Wiki
Organization of Seg3D capabilities
Overall Organization
There are three main components of the design and implementation of Seg3D. One can discuss separate status and plans for each of these 3 components. Development may proceed, to some extent, in parallel on each of these three fronts. The first priority in terms of development and testing is the infrastructure. GUI development is an ongoing project that requires interaction and feedback from the various collaborations. Collaborator input is also necessary in order to identify new algorithms to add into Seg3D.
- Infrastructure
- manage stack of volumes
- pipe data to and from filters
- manage state
- ...
- GUI/Interaction
- user interaction with the program
- exposing appropriate settings
- ...
- Segmentation algorithms
- algorithms
- determining useful parameter settings
- ...
- Visualization
- which types of vis are useful for segmentation?
- how much of BioImage capabilities should we import?
- Documentation
Challenges/Solutions
Here is a list of pending limitations or areas in which Seg3D needs improvement in order to be useful together with some possible solution approaches.
- Infrastructure
- file reading
- build on ITK file readers as they handle many formats
- try to find ways to avoid some of their defaults, such as loading into floats
- develop simple standalone file manipulation apps for file conversions
- data/memory handling (all volume data are immediately read and handled as floats)
- consider primary storage as efficient int or char and casting as necessary for ITK filters
- for very large data, develop a paging system of some sort
- develop support for managing different subvolumes, even at different resolutions
- file reading
- GUI/Interaction
- continue to remove GL widgets from interface
- create consistent look and feel for filter controls
- ``e.g., "OK" button is ambiguous
- ask Chems for help in window layout
- Segmentation algorithms
- Currently supports 5 filters and manual segmentation
- 5 filters are prototypes of main categories of ITK filters
- manual segmentation is based on volumes and painting rather than parametric curves
- need more algorithms
- layer merging and slitting operations
- resampling tool (integrate more deeply later)
- padding/cropping support
- active contouring
- dynamic segmentation for time dependent data
- don't pursue until we have collaborator willing to pursue it
- to complete this list, look to collaborations
- Currently supports 5 filters and manual segmentation
- Visualization
- update volume rendering to SLIVR
- select among following BioImage feature list:
- resample dialog., in the Seg3D code but not exposed
- histo equalization (not worth doing)
- median filter: broken in BioImage because of stub axis that Teem doesn't need. Dave suggested a fix approach for JR to try
- MIP planes as edges of a box: useful so we should implement
- sliders for imaged levels and contrast: build a new GUI (look at MATLAB and others for examples)
- color maps for planes: replicate what we do in BioImage
- clipping planes: include with smaller set of standard SCIRun interactions. Support is in the viewer so need to expose it
- Display information: look at Osirix and microview for examples
- Sampling rate: include this with other volume rendering settings that pop up and go away when not needed
- gradient threshold: make it part of painting controls
- layer specific display options:
- painting
- support for time dependent data
- Documentation
- update videos to reflect new interface (plan on more upgrades as we continue to update UI
- develop user manuals that include information on different filters