TubeTK/OpenIGTLink

From KitwarePublic
Jump to navigationJump to search

Introduction

OpenIGTLink is a communication protocol designed to work on the TCP/IP application layer to handle image, tracking data, transform, device control and monitoring command, and other user-defined data types. An example use case is a computer interfaced to a tracking device, gathers pose information of surgical instruments and packages the information in an OpenIGTLink protocol and sends the data over a network connection to a quantitative imaging workstation that runs

Description

Workflow

Client

  1. Establish connection with server side ( Example: igtl::ClientSocket )
  2. Generate OpenIGTLink message (data-to-be-sent ) and package in Open IGT Link format. (Example: igtl::TransformMessage )
  3. Send data through TCP/IP socket connection

Server side

Types of OpenIGTLink message

Version 1

  1. Transform ( igtlTransformMessage )
  2. Image ( igtlImageMessage )
  3. Position ( igtlPositionMessage )
  4. Status message ( igtlStatusMessage )

Version 2

OpenIGTLink CLI Application in TubeTK

Reference

  1. NAMIC OpenIGTLink wiki page