CIBC:Core:Imaging
From NCRR Biomedical Software Development, Engineering, and Dissemination Wiki
Contents |
Thoughts on Medical Imaging (MI) at the CIBC
--Cates 16:22, 19 Oct 2005 (MDT)
The current state of open-source MI software.
- There is a growing need for open source software and, more importantly, software standards in the MI community. Several groups (e.g. NAMIC, ISC) are pushing software standards for segmentation, registration, visualization and validation.
- Standards for collaborative, open-source software development and testing are a very important part of this effort. CS and non-CS researchers, program managers and students are literally begging for reliable, tested, imaging tools that "just work out-of-the-box".
- ITK is gaining acceptance as the standard for segmentation, registration, and certain types of image processing. VTK is already an accepted standard for visualization. Both toolkits have a robust software process and good support within the community.
- Other toolkits are extending the functionality of ITK & VTK for more specific imaging and diagnostic medical applications. These toolkits have bought into the open-source process pioneered by NIH and the ITK project.
What do other groups within the MI community do?
- Many labs are adopting standard software "kits" such as the one promoted by NAMIC.
- Non-CS labs use a mix of custom research software and commercially available tools.
- CS labs often focus on toolkits, combining fltk, vtk, itk, tcl to produce small, tailored applications. New toolkits are appearing that add application-specific functionality to generic toolkits, e.g. MITK, IGSTK.
What software tools are missing from the MI community?
- Truly open-source visual programming environments.
- Advanced visualization.
- Interactive widgets. (VTK will soon set a very high bar.)
What imaging capabilities do we currently have in SCIRun?
- Limited support for image data.
- Limited support for ITK algorithms.
- Limited support for image visualization.
- Limited support for image interaction (widgets).
- Bottom line: There is no dedicated support for images in SCIRun. Thus far we have relied mostly on existing functionality and retro-fitted it to support image processing.
Recommendations for the CIBC
- More fully adopt ITK as our imaging platform. This requires a more serious commitment of resources than may have previously been made?
- Participate more actively in the MI open-source movement. We have a significant presence in this community and could more fully exploit our influence.
- Bring our software process up to the standards set by the major players in the community. Aspire to gaining the ISC and NAMIC "seal-of-approval", which potentially includes distribution of our code within a standard open-source MI software kit.
- Consider re-engineering SCIRun as a collection of lightweight modules to better support agile development and deployment.
- Think about alternatives to SCIRun. Are there combinations of other open-source toolkits we can consider that are cheaper and more flexible than SCIRun to use?
- A visual programming environment for ITK could become the community open-source standard.
- A high quality visualization application (BioImage-style) could become a community open-source standard.
- A generic segmentation PowerApp could become a community open-source standard.
For more specific ideas within SCIRun, see CIBC:Project:LevelSetPowerApp CIBC:Project:ImageViewer
