We maintain the ImFusion Public Demos Repository on Github. It contains a couple of small example projects demonstrating how to integrate the ImFusion SDK into custom applications and how to extend the SDK with new functionality, for instance:
- AnnotationHandle: Explains how to add simple interactive handles to
GlPointBasedAnnotation via a plugin.
- BrushStandaloneApplication: Builds a standalone application with an interactive Brush tool for labeling medical images.
- Example2D3DRegistration: Demonstrates how to use and customize the x-ray 2D/3D registration algorithm in an example plugin.
- ExampleAnatomyPlugin: Shows how you can use the AnatomyPlugin to represent
AnatomicalStructures and combine them in a AnatomicalStructureCollection.
- ExampleDicomBrowser: Explains how to build a simple DICOM browser using the ImFusionDicom plugin.
- ExampleDicomExtension: Implements a sample
DicomExtension to read and write custom DICOM tags.
- ExampleImageMath: Contains basic examples on how to use our ImageMath plugin.
- ExampleITK: Shows how to use ITK with the ImFusion SDK.
- ExampleMachineLearningInference: Explains how to integrate a deep learning model, trained independently using Python, into the ImFusion framework.
- ExampleMainWindowBaseApplication: Shows how to build a simple standalone application for displaying medical DICOM data using the ImFusion SDK.
- ExampleOpenCV: Demonstrates integration with OpenCV for computer vision tasks.
- ExampleOpenGL: Shows how to use OpenGL for rendering and image processing.
- ExamplePlugin: Provides a template for creating new plugins.
- ExampleRGBDReconstruction: Demonstrates how to use the RGBD plugin for 3D reconstruction from RGB-D data.
- ExampleStandaloneApplication: Builds a standalone application using the SDK.
- QMLRendererDemo: Explains how to natively integrate the ImFusionLib rendering stack into a QML application.
- SlicerExtension: Basic example demonstrating how the ImFusion SDK can be integrated into 3D-Slicer via an Extension module..
- StreamExamples: Shows how to create
Streams and to work with their data.
- TotalSegmentatorAnatomyPlugin: Shows how to integrate TotalSegmentator in a custom plugin and use it to create ImFusion anatomical structure descriptions.
- TractographyPlugin: Demonstrates how to create a custom data type (fiber tracts, used for instance in Diffusion Tensor Imaging) in the ImFusion SDK and integrate it into the visualization stack using the
GlObject and DataDisplayHandler interfaces.