Additional information on the software tools can be found on their respective webistes, including details on the specific open-source license for each toolkit.
The Insight Toolkit was developed by six principal organizations, three commercial (Kitware,GE Corporate R&D, and Insightful) and three academic (UNC Chapel Hill, University of Utah, and University of Pennsylvania). Additional team members include Harvard Brigham & Women's Hospital, the University of Pittsburgh, and Columbia University. Program management and funding for the project was provided, in part, by the National Library of Medicine at the National Institutes of Health. NLM's funding was complemented by other NIH institutes.
The goals for the project include the following:
- Support the Visible Human Project.
- Establish a foundation for future research.
- Create a repository of fundamental algorithms.
- Develop a platform for advanced product development.
- Support commercial application of the technology.
- Create conventions for future work.
- Grow a self-sustaining community of software users and developers.
CMake is an extensible, open-source system that manages the build process in an operating system and in a compiler-independent manner. Unlike many cross-platform systems, CMake is designed to be used in conjunction with the native build environment. Simple configuration files placed in each source directory (called CMakeLists.txt files) are used to generate standard build files (e.g., makefiles on Unix and projects/workspaces in Windows MSVC) which are used in the usual way. CMake can compile source code, create libraries, generate wrappers and build executables in arbitrary combinations. CMake supports in-place and out-of-place builds, and can therefore support multiple builds from a single source tree.
CMake also supports static and dynamic library builds and generates a cache file that is designed to be used with a graphical editor. For example, when CMake runs, it locates include files, libraries, and executables, and may encounter optional build directives. This information is gathered into the cache, which may be changed by the user prior to the generation of the native build files.
Image-Guided Surgery Toolkit
The Image-Guided Surgery Toolkit is a high-level component-based framework providing common functionality for image-guided surgery applications.
This software framework consists of a set of high-level components integrated with other low-level open source software libraries and application programming interfaces (API) from hardware vendors.
The cornerstone of IGSTK is robustness. IGSTK provides the following high-level functionality:
- Ability to read and display medical images including CT and MRI in DICOM format.
- An interface to common tracking hardware (e.g. AURORA from Northern Digital Inc.).
- A graphical user interface and visualization capability including a four-quadrant view (axial, sagittal, coronal, and 3D) and a multi-slice axial view (from 1 by 1 to many by many, such as 10 by 10).
- Registration: point based registration and a means for selecting these points.
- Robust common internal software services for logging, exception-handling and problem resolution.
This work is funded by NIBIB/NIH grant R01 EB00719.