Open-Source Software for IGT

SimITK and SimVTK


SimITK/SimVTK development environment enables rapid prototyping of image analysis, visualization, and image-guided surgery techniques.

SimITK/VTK is an implementation of the ITK and VTK C++ libraries in Matlab, specifically the Simulink visual programming environment.

The advantage to this visual programming approach compared to scripting or C++ applications, are short development times and high maintailabilty due to the existence of pre-built SimITK/VTK models.

The main interest of this project is image-guided therapy. To support this, SimVTK blocks are available for surgical tracking devices and ultrasound video acquisition.

You may download a copy of the software package from here.


Ultrasound has become a very important modality in image-guided therapy. At present, however, the collection, synchronization and transfer of ultrasonic images are more cumbersome than necessary. This development presents a reusable solution to these problems. We propose a software package called SynchroGrab, which allows the collection of interventional ultrasound images as well as their synchronization with a stream of pose measurements. The software includes support for an open-interface ultrasound system, namely the Sonix RP, from Ultrasonix (Vancouver, Canada). Using an open-interface system like the Sonix RP allows customization of the imaging process and the capture of the ultrasound images directly from memory without the need for a frame-grabbing card. Pose measurement is currently performed with an Optotrak Certus by Northern Digital (Waterloo, Canada). However, extensibility was a primary goal in the design of this software, so the support of new devices can be achieved simply by sub-classing the relevant base class. SynchroGrab also performs reconstruction of 3D ultrasound volumes from synchronized data streams. Moreover, the recorded images, volumes and tracking information are available for visualization or further processing either directly from the file system or from a network connection compliant with the OpenIGTLink protocol, which is supported by Slicer 3.

You may download a copy of the software package from here. You may also download a copy of the presentation that describes the development details, from here.