title: The NifTK software platform for image-guided interventions: platform overview and NiftyLink messaging.
abstract: OBJECTIVE
  To perform research in image-guided interventions, researchers need a wide variety of software components, and assembling these components into a flexible and reliable system can be a challenging task. In this paper, the NifTK software platform is presented. A key focus has been high-performance streaming of stereo laparoscopic video data, ultrasound data and tracking data simultaneously.
  
  
  METHODS
  A new messaging library called NiftyLink is introduced that uses the OpenIGTLink protocol and provides the user with easy-to-use asynchronous two-way messaging, high reliability and comprehensive error reporting. A small suite of applications called NiftyGuide has been developed, containing lightweight applications for grabbing data, currently from position trackers and ultrasound scanners. These applications use NiftyLink to stream data into NiftyIGI, which is a workstation-based application, built on top of MITK, for visualisation and user interaction. Design decisions, performance characteristics and initial applications are described in detail. NiftyLink was tested for latency when transmitting images, tracking data, and interleaved imaging and tracking data.
  
  
  RESULTS
  NiftyLink can transmit tracking data at 1,024 frames per second (fps) with latency of 0.31 milliseconds, and 512 KB images with latency of 6.06 milliseconds at 32 fps. NiftyIGI was tested, receiving stereo high-definition laparoscopic video at 30 fps, tracking data from 4 rigid bodies at 20-30 fps and ultrasound data at 20 fps with rendering refresh rates between 2 and 20 Hz with no loss of user interaction.
  
  
  CONCLUSIONS
  These packages form part of the NifTK platform and have proven to be successful in a variety of image-guided surgery projects. Code and documentation for the NifTK platform are available from http://www.niftk.org . NiftyLink is provided open-source under a BSD license and available from http://github.com/NifTK/NiftyLink . The code for this paper is tagged IJCARS-2014.
authors.affiliation: Centre For Medical Image Computing, University College London, Engineering Front Building, Malet Place, London, UK, m.clarkson@ucl.ac.uk.
authors.forename: Matthew J
authors.initials: MJ
authors.lastname: Clarkson
authors.forename: Gergely
authors.initials: G
authors.lastname: Zombori
authors.forename: Steve
authors.initials: S
authors.lastname: Thompson
authors.forename: Johannes
authors.initials: J
authors.lastname: Totz
authors.forename: Yi
authors.initials: Y
authors.lastname: Song
authors.forename: Miklos
authors.initials: M
authors.lastname: Espak
authors.forename: Stian
authors.initials: S
authors.lastname: Johnsen
authors.forename: David
authors.initials: D
authors.lastname: Hawkes
authors.forename: Sébastien
authors.initials: S
authors.lastname: Ourselin
mesh_terms: D003952:Diagnostic Imaging / Q000379:methods*; D006801:Humans; D015203:Reproducibility of Results; D012984:Software; D025321:Surgery, Computer-Assisted / Q000379:methods*