| Base Library | General infrastructure for the development of (medical) imaging algorithms and software |
| Animations | Animating objects within the ImFusion SDK |
| DataComponent API | Extends ImFusion::Data with custom information in a type-safe fashion |
| Data Model | Storage and hierarchical organization of datasets |
| ImFusionGUI | Generic Abstraction Layer for Visualization and User Input Events |
| Input Event Handling | Platform-agnostic abstraction layer for input event handling |
| Display and views | Interfaces and base classes for building a visualization viewport |
| High-level display classes | High-level classes and helpers to build a radiology workstation software |
| Qt Wrappers | Wrappers for usage in Qt-based Applications |
| OpenGL Image Processing | Classes for high-level image processing using OpenGL |
| Images | Data structures and interfaces for working with image data |
| Image Masks | On-the-fly pixel masking of images |
| License System | Interfaces and examples for interacting with the license system |
| OpenGL | Using OpenGL within the ImFusion SDK |
| Poses | Using Poses within the ImFusion SDK |
| Progress Reporting | Reporting progress of long-standing tasks/algorithms |
| Visualization and Views | |
| Interactions | User interaction with views and overlays |
| 2D Visualization | Tools and classes for 2D visualization |
| 3D Visualization | Tools and classes for 3D visualization |
| Annotations | Augmenting visualizations with annotations |
| Workspaces API | Basic scripting and snapshot functionality |
| Core Library | Essential support library |
| Filesystem Library | Lightweight filesystem library |
| Geometry Library | Basic geometry library |
| Generic Utilities | Generic utility classes and helper functions of the ImFusionCore library |
| Platform-specific functions | Selection of platform-specific functions |
| Container Utilities | Utility functions for (STL) container access and manipulation |
| String Processing | Utility functions for working with std::string |
| Multi-Threading Utilities | Utility classes for multi-threading |
| Non-cryptographic Hashing | Tools and functions to compute non-cryptographics hashes, for instance to use them in std::unordered_map |
| Application Settings | Persistent platform-independent application settings |
| Assertion Library | Assertion library |
| Logging | Lightweight logging framework of the ImFusion SDK |
| Plugin Architecture | Infrastructure and functionality to dynamically extend application functionality via shared libraries |
| Random Number Generation | Convenient random number generation that offers automatic seeding and works with standard distributions (boost distributions are the default, but a distribution of choice can be used) |
| Resource System | Resource system to retrieve at runtime binary data embedded into the application/library |
| Object Serialization | Serialization of data structures to and from generic storage |
| Signals and Slots | Lightweight implementation of the signal-slot design pattern |
| OpenGL Wrapper Library | Low-level OpenGL Wrappers |
| Context management | Interfaces and wrapper classes for managing OpenGL contexts |
| GLSL Shaders | Interfaces and wrapper classes for working with OpenGL/GLSL shaders |
| Texture management | Interfaces and wrapper classes for working with OpenGL textures/images |
| Buffers | Interfaces and wrapper classes for working with OpenGL buffers |
| Debugging | Access to OpenGL Debug context facilities |
| High-level Renderers | High-level classes for Rendering |
| Utilities | Helper classes and functions for working with OpenGL |
| Plugins | List of plugins shipped with this version of the SDK |
| Dicom Plugin | Plugin for handling DICOM data |
| Low-level/Core API | Low-level data structures for handling DICOM data |
| Intermediate-level API | Intermediate-level API for loading/storing DICOM data |
| GUI classes | Qt GUI classes for DICOM data |
| DataComponents | DICOM-specific or related DataComponents |
| Extensions | Extending the default DICOM import/export with custom functionality |
| Stream Plugin | Plugin for real-time streaming of image and tracking data |
| Network Communication | Network communication functionality |
| Recording | Generic Recording and Playback of Streams |
| Stream Groups | Bundling Multiple Streams Together |
| Instantiating Streams in ImFusion Suite | Utilities to make Streams available in the ImFusion Suite |
| Streams and StreamData | Fundamental classes for streaming data |
| Navigation Plugin | Plugin for real-time navigation and visualization of tracking tools |
| Machine Learning Plugin | Plugin for executing machine learning models on medical images |
| Data Structures | Data structures used in machine learning workflows, in particular DataItem and its elements DataElements |
| Data Pipelines | Classes used to define a data pipeline, mostly used for model training purposes |
| Data Operations | Set of pre- or post-processing operations acting on Data Structures that implement the Operation interface |
| Operations List | List of all classes implementing the Operation interface |
| Samplers List | Subset of Operation classes implementing the ImageROISampler interface |
| Machine Learning Models | Classes involved for the execution of a MachineLearningModel |
| Registration Plugin | Plugin providing functionality for registering medical images |
| Image Registration | Rigid and non-rigid registration of images |
| Similarity Measures | Similarity Measures |
| Visualization Helpers | Tools to visualize registration results |
| Segmentation Plugin | Plugin providing functionality for manual and automatic segmentation of images |
| Labeling | Algorithms and classes for handling label maps |
| Structures | High-level algorithms and classes for working with multiple label maps |
| Ultrasound Plugin | Plugin providing classes to process 3D freehand US data within the ImFusion SDK |
| Live Ultrasound Plugin | Plugin providing classes to process real-time 3D US data (image and tracking streams) within the ImFusion SDK |
| ImageMath Plugin | Plugin for element-wise arithmetic operators with seamless compute dispatching to GPU or CPU |
| Extending ImageMath | How to extend the ImageMath plugin |
| Core/Low-level API | Low-level data structures for element-wise arithmetic operators |
| Pitfalls | Common pitfalls |
| X-ray and Computed Tomography Plugin | Plugin providing classes to process X-Ray and CT data within the ImFusion SDK |
| X-ray 2D-3D Registration | Algorithms for registration of X-Ray projections and a volume |
| CT Artifacts Reduction | Algorithms for artifacts reduction in CT reconstructions in both projections and CT domain |
| CT Legacy | All algorithms belong to the CT plugins that have been or will be deprecated |
| Cone Beam Geometry | Modern geometrical framework for cone-beam X-ray acquisitions |
| Cone Beam Data | ConeBeamData (concept), including algorithms for X-ray projections generation, I/O, and processing |
| CT Reconstruction | Tomographic reconstruction techniques to compute the 3D CT images from a set of X-ray projections in different acquisition geometries |
| CT Solver | |
| CT Event Handler | |
| Computer Vision Plugin | Plugin for computer vision functionality |
| ICP and Mesh Alignment | Comprehensive guide to point cloud and mesh alignment using ICP and MeshAlignmentAlgorithm |
| Marker Detection | Comprehensive guide to marker detection |
| Monocular Depth Estimation | Guide to monocular depth estimation from single RGB images |
| Optical Flow | Guide to optical flow estimation from RGB image sequences |
| Stereo Reconstruction | Guide to 3D reconstruction from a sequence of stereo images using the StereoReconstructionAlgorithm class |
| Camera Calibration | Comprehensive guide to Camera Calibration |
| Stereo Structure | Comprehensive guide to Stereo Image |
| Anatomy Plugin | Plugin for storing and manipulating hierarchically structured data about anatomical structures |
| Styling in the Anatomy Plugin | CSS-like styling of objects in the Anatomy plugin |
| Spine Plugin | Plugin for machine learning based localization, classification and segmentation of the spine |
| Atracsys Tracking Plugin | The Atracsys Tracking Plugin enables connectivity with an Atracsys tracking device, allowing users to control the device and stream tracking data as a TrackingStream into the ImFusion framework |
| NDI Tracking Plugin | The NDI Tracking Plugin enables connectivity with an NDI tracking device, allowing users to control the device and stream tracking data as a TrackingStream into the ImFusion framework |
| Endoscopy Plugin | Plugin for endoscopic applications |
| RGB-D Plugin | Functionality for accessing RGB-D sensors and working with RGB-D data |
| Custom RGBD Stream | Comprehensive guide to implementing a CustomRGBDStream with the ImFusion RGB-D Plugin |
| RGBD Reconstruction | Comprehensive guide to surface reconstruction from RGB-D data using the RGBDReconstructionAlgorithm |
| Robotics plugin | Functionality for robot control |