Our Open Source Platforms

We develop, maintain, and support software toolkits and applications that are used by tens of thousands of developers, researchers, and practitioners worldwide. These projects all use commercial-friendly, permissive open source licenses and work across a variety of platforms. We offer custom solutions, support, training, and books related to these platforms.

The Visualization Toolkit (VTK) is a software system for 3D computer graphics, image processing, and visualization. It supports many visualization algorithms and modeling techniques. VTK can perform parallel processing, and it can render scientific data in a web browser. VTK is used worldwide in commercial applications as well as in research and development. Applications that use VTK include Molekel, ParaView, VisIt, VisTrails, MOOSE, 3D Slicer, MayaVi, and OsiriX. VTK is written in C++ and is wrapped for access via Python, Java, and Tcl. ActiViz provides support for VTK in .Net/C# projects.

ParaView builds interactive, scientific visualizations to analyze data using qualitative and quantitative techniques. It has a client–server architecture to facilitate remote visualization of datasets, and it generates level of detail (LOD) models to maintain interactive frame rates for large datasets. ParaView is designed for data parallelism on shared-memory or distributed-memory multicomputers and clusters. It can also be run as a single-computer application.

ParaView is an application framework as well as a turnkey application. ParaView’s application framework allows for its components to be reused to quickly develop vertical applications that have specific functionality for a particular problem domain.

CMake is our cross-platform build tool for controlling the software compilation process using simple platform- and compiler-independent configuration files. CMake generates native makefiles and workspaces that can be used in the compiler of choice.

CMake integrates with CDash to provide a comprehensive suite of tools. CDash is the testing server that aggregates, analyzes, and displays the results of software testing processes submitted from clients located around the world. Developers rely on CDash to convey the state of a software system and to continually improve its quality.

ITK Logo

Originally developed to facilitate digital exploration of the Visible Human Project, the Insight Toolkit (ITK) has become part of the national infrastructure of medical research software. ITK is a library of segmentation and registration imaging algorithms tailored for medical investigations.

The toolkit supports a variety of imaging data formats including Digital Imaging and Communications in Medicine (DICOM), MRI, CT, and ultrasound. In addition, ITK features an automated wrapping process to generate interfaces between its C++ and interpreted programming languages such as Python and JavaScript to enable developers to create software using a variety of programming languages. It has a flexible, modular structure that is easy to extend and integrate into various projects.

3D Slicer

3D Slicer is an open source and extensible application for visualization and medical image analysis. 3D Slicer works with optical imaging, MRI, CT, and ultrasound data. We have applied 3D Slicer to research and commercial applications ranging from pre-clinical animal studies, to surgical planning and guidance, to ultrasound image analysis, to medical robot control, to population studies.

3D Slicer uses VTK and ITK: VTK for its 2D and 3D rendering pipelines, linear and non-linear transformation, segmentation infrastructure, mesh processing, and virtual reality integration and ITK for image processing plus reading and writing images.

The Kitware Image and Video Exploitation and Retrieval (KWIVER) toolkit is a collection of open source software packages designed to address challenging image and video analysis problems.  Its repositories are created and continuously updated by our team and by members of the computer vision community. KWIVER includes high-quality implementations of key computer vision, deep learning, and machine learning techniques that are targeted at real-world problems. It includes the Social Multimedia Query Toolkit (SMQTk); the Motion-imagery Aerial Photogrammetry Toolkit (TeleSculptor); Super3D for image and video super-resolution image and video enhancement using 3D models; the Video and Image-Based Retrieval and Analysis Toolkit (VIBRANT) for video tracking; and the Video and Imagery Analytics for the Marine Environment (VIAME) toolkit for underwater image and video analysis.  It also includes software engineering libraries for multi-processing, pipeline-based computation; dependency management; and more. In addition to its open source version, KWIVER has a restricted version at KWIVER.mil that offers additional capabilities to U.S. government customers and their contractors. The software at KWIVER.mil has unlimited rights to the government within the stated distribution restrictions.

The Resonant platform consists of open source, web-based tools for data management, analytics, and visualization. The data management tools can handle large datasets across multiple sources such as Structured Query Language (SQL), Hadoop, and Amazon S3. The tools maintain control over file permissions, users, and user groups. Multiple analytics tools provide the ability to manipulate data, with mix-and-match task execution capabilities, using multiple languages such as R and Python. Visualization is based on libraries and frameworks, which can be used to make custom applications to meet any specific need. These tools can be used individually or as a package to provide a complete end-to-end data solution.

CMB

Computational Model Builder (CMB) manages the resources required for simulation definition from start to finish. These include geometric models, simulation information, and meshes. It was designed to allow domain experts to build computational models without expert knowledge of computer science. Its plugin-based architecture supports tools and simulation codes such as Open CASCADE, Nek5000, Hydra-TH, Dakota, Parallel Hierarchic Adaptive Stabilized Transient Analysis (PHASTA), ParaView, Mesh-Oriented datABase (MOAB), Albany, and MeshKit. Yet, CMB remains a lightweight application that can be easily modified and scaled to meet the requirements of any simulation and workflow.

The primary focus of Tomviz is to provide a complete solution, from raw projection images to reconstructed electron tomography data, for materials using a state-of-the-art graphical interface. It is capable of rendering data as shaded contours or volumetric projections in addition to slices, measurements, and other representations. Tomviz can use datasets, color maps, and other visualization settings in combination with tomographic reconstructions, and it offers alignment, image processing, reconstruction, multi-correlative statistics, filters, and user-customized Python scripts in a reproducible data processing pipeline.

Pulse Physiology Engine is a full-body virtual human simulator that aims to guide medical study. The platform includes an engine of well-validated physiological systems that come ready to use. Pulse also includes a common data model that standardizes ontology, data definitions, and interfaces to promote their synthesis with other systems.

interactive Medical Simulation Toolkit

The interactive Medical Simulation Toolkit (iMSTK) is designed to support the rapid prototyping of virtual medical trainers and planners. It enables end-to-end application development by offering components for medical simulators such as physics-based simulation, haptic feedback, collision detection and response, external tracking and virtual reality support, and real-time rendering and visualization techniques.

The Reconstruction Toolkit (RTK) is an open-source and cross-platform software for fast circular cone-beam CT reconstruction based on the Insight Toolkit (ITK). RTK is developped by the RTK consortium.

RTK supports basic operators for reconstruction, e.g., filtering, forward, projection and backprojection, Multithreaded CPU and GPU versions, Tools for respiratory motion correction, I/O for several scanner, Preprocessing of raw data for scatter correction