Difference between revisions of "OpenIGTLink/Slicer"
Line 2: | Line 2: | ||
=Introduction= | =Introduction= | ||
− | The OpenIGTLink module | + | The OpenIGTLink module is a communication interface between 3D Slicer and Open-IGT-Link-compliant devices. It enables the 3D SLicer to import various types of data such as real-time images, tracking data and other user-defined commands and data. The module supports multiple device connections. Each of connections can be configured as either server mode (the Slicer waits connections from devices) or client mode (the Slicer request connection to clients) independently. |
+ | |||
+ | The module works with MRML to exchange coordinate and image data with other clinical modules e.g. NeuroNav and ProstateNav in the Slicer. The module has a dedicated graphical user interface to manage and control multiple connections. | ||
=How to Get Started= | =How to Get Started= |
Revision as of 03:38, 3 June 2008
Home < OpenIGTLink < SlicerIntroduction
The OpenIGTLink module is a communication interface between 3D Slicer and Open-IGT-Link-compliant devices. It enables the 3D SLicer to import various types of data such as real-time images, tracking data and other user-defined commands and data. The module supports multiple device connections. Each of connections can be configured as either server mode (the Slicer waits connections from devices) or client mode (the Slicer request connection to clients) independently.
The module works with MRML to exchange coordinate and image data with other clinical modules e.g. NeuroNav and ProstateNav in the Slicer. The module has a dedicated graphical user interface to manage and control multiple connections.
How to Get Started
The OpenIGTLink module is currently available in the svn branch repository (http://www.na-mic.org/svn/Slicer3/branches/IGT). The module is activated in default configuration and you don't need to change any setting to use it. The module is being developed on Mac OS X and Linux. It should also work on Windows, but has not sufficiently tested yet.
First, get source code using SVN. On Linux and Mac OS X, run following commands:
$ mkdir <working directory> $ cd <working directory> $ svn co http://www.na-mic.org/svn/Slicer3/branches/IGT Slicer3
Run building script:
$ cd Slicer3 $ ./Scripts/getbuildtest.tcl
It takes about 20-30 min. to complete the building process (in case of Intel Core 2 Duo 2.0 GHz). Once the building process is completed, you can lunch the Slicer by:
$ cd .. $ cd Slicer3-build $ ./Slicer3
How to Test It (Linux)
You need to have OpenIGTLink server or client. We offer scanner and tracker simulator program, which can be obtained from NA-MIC SandBox.
To get the source code, run following commands:
$ mkdir <working directory> $ svn co http://www.na-mic.org/svn/NAMICSandBox/trunk/BRPTools/ScannerIO ScannerIO
Then configure the source code
$ cd ScannerIO $ ccmake .
Usually, you don't need to change any setting. Just press 'c' key by 'g' key to generate Makefiles. Press 'q' to quit the ccmake interface. Now you are ready to build the program.
$ make
To send dummy coordinate data to the Slicer running on 132.174.54.204 with frame rate of 10 fps, run:
$ cd bin $ ./TrackerSim 10 c 132.174.54.204 18944
TODO
- OpenIGTLink Client
- Most of devices (e.g. MR scanner, robot) are waiting for connection from navigation software
- Slicer needs GUI interface to set up address/port for OpenIGTLink connection
- Data export through OpenIGTLink
- Each module send out image/coordinate data through MRML node
- OpenIGTLink module monitors MRML nodes
- Each module send out image/coordinate data through MRML node
- Connection Management Interface on Slicer 3
- Connection to IGSTK
- IGSTK only supports Tracker Daemon
- Integration with clinical modules
- NeuroNav
- ProstateNav