Extension Developer Guide
Use DevStudio to create Components, Actions, or Viewers in Python or C++.
CamiTK’s Modular Architecture
CamiTK is built on a modular architecture that allows you to extend its functionality by creating custom extensions. Extensions can be Components (new data types), Actions (new algorithm or processing logic), or Viewers (visualization UI).
Components
New data types with or without file format support.
Actions
Create or process Components (e.g., segmentation, registration).
Viewers
Display Components (e.g., 3D rendering, image visualization).
DevStudio: Simplify Extension Development
DevStudio
DevStudio (introduced in CamiTK 6.0.0) simplifies the creation of extensions by:
- Generating boilerplate code for Python and
C++ extensions.
- Providing a GUI to define your extension's parameters, inputs, dependencies and documentation.
DevStudio supports creating new Action extensions in both Python and C++. After defining your extension in DevStudio, it generates the necessary files for you to complete and your extension is automatically registered and loaded into the CamiTK application.
Examples of Extensions
What You Can Build
- Create a new mesh from equation or data
- Compute an image threshold
- Register two images
- Segment the liver from a CT image using PyTorch.
- Stream data from a camera device.
- Move a 3D object with a localizer/surgical navigation device.
- Export a Component in a new file format.
- Call your library/process on a supported data (image, mesh...)
Create a new Python extension using DevStudio (video)
Choose Your Language
Python Extensions
Develop extensions using CamiTK's Python API. Ideal for rapid prototyping and machine learning integration.
Learn MoreC++ Extensions
Develop high-performance extensions using CamiTK's C++ API. Ideal for computationally intensive tasks.
Learn MoreLearn more…
Dive deeper into CamiTK framework
Continue exploring related documentation
Browse the related documentation pages available in this section.