An Open-Source Solution for Interactive Acquisition, Processing and Transfer of

Download Report

Transcript An Open-Source Solution for Interactive Acquisition, Processing and Transfer of

An Open-Source Solution for Interactive
Acquisition, Processing and Transfer of
Interventional Ultrasound Images
Jonathan Boisvert, David Gobbi, Siddharth Vikal,
Robert Rohling, Gabor Fichtinger and Purang Abolmaesumi
Medical Image Analysis (MedIA) Laboratory
http://www.media.queensu.ca
Queen’s University
Kingston, Ontario, Canada
http://www.media.queensu.ca
1
Introduction

Ultrasound is a very common
interventional image modality



Open-interface machines makes
it even more attractive to IGT
developers
Often used with motion
tracking devices.
Problem:

Acquisition, synchronization and
transfer to existing IGT systems
is more difficult than it should be.
http://www.media.queensu.ca
2
Prior work

Integrated navigation software such as:


Software frameworks such as:


CustusX1, IGSonic2, SonoNav3 or Stradx4.
IGSTK5
Slicer specific software development

A module for Slicer 2 initially
developed by Boctor et al.6
http://www.media.queensu.ca
3
Open-source software
platform: Slicer

Sophisticated
registration, datafusion and visualization
capabilities

Modular architecture

Multi-platform

Support for the new
OpenIGTLink protocol
http://www.media.queensu.ca
4
Architecture : SynchroGrab


Provide real-time ultrasound processing capabilities.
Delegate visualization, registration and navigation to an
OpenIGTLink compatible software (Slicer).
http://www.media.queensu.ca
6
Architecture : SynchroGrab


Provide real-time ultrasound processing capabilities.
Delegate visualization, registration and navigation to an
OpenIGTLink compatible software (Slicer).
http://www.media.queensu.ca
7
Architecture : SynchroGrab


Provide real-time ultrasound processing capabilities.
Delegate visualization, registration and navigation to an
OpenIGTLink compatible software (Slicer).
http://www.media.queensu.ca
8
Architecture : SynchroGrab


Provide real-time ultrasound processing capabilities.
Delegate visualization, registration and navigation to an
OpenIGTLink compatible software (Slicer).
http://www.media.queensu.ca
9
Architecture : SynchroGrab


Provide real-time ultrasound processing capabilities.
Delegate visualization, registration and navigation to an
OpenIGTLink compatible software (Slicer).
http://www.media.queensu.ca
10
Ultrasound image acquisition

SonixRP



Open interface
Access to pre-scan converted images,
post-scan converted images, imaging
parameters, RF raw-data, etc.
New vtk class
“vtkSonixVideoSource”

Easy integration

Highly reusable
http://www.media.queensu.ca
11
Using vtkSonixVideoSource


Inherit from
vtkVideoSource
Support many
data types:

BPreScan, BPost 8
bit, BPost 32 bit, RF
16 bit, MPost 8 bit,
Color+ B 32 bits
vtkSonixVideoSource *sonixGrabber =
vtkSonixVideoSource::New();
sonixGrabber->SetSonixIP("127.0.0.1");
sonixGrabber->SetImagingMode(BMode);
sonixGrabber->
SetAcquisitionDataType(udtBPost);
sonixGrabber->Record();
sonixGrabber->Stop();
sonixGrabber->Rewind();
// Process the first image here
sonixGrabber->Seek(1)
// Process the second image here
sonixGrabber->Delete();
http://www.media.queensu.ca
12
3D Tracking

Object oriented

Extensible

Multi-threaded

http://www.media.queensu.ca
Circular buffers for
transformations
synchronization
13
Synchronization

Tracking and ultrasound
imaging


not performed at the same
frequency.
Need to interpolate the poses
(using spherical linear
interpolation)
http://www.media.queensu.ca
14
Synchronization

Data preprocessing


OS related


Hardware latency, pose
computation, ultrasound
image processing, and copy
to user-space memory.
Context switching,
memory swapping, etc.
Compensate for the mean
lag
http://www.media.queensu.ca
15
Synchronization

vtkTaggedImageFilter

Compute the transformation associated with an image.

Two inputs: a vtkTrackerTool and a vtkImageAlgorithm object
vtkTaggedImageFilter *tagger =
vtkTaggedImageFilter::New();
tagger->SetInput(sonixGrabber->GetOutput());
tagger->SetTrackerTool(trackerTool);
tagger->SetTemporalLag(xxx);
tagger->Update();
currentTransforms = tagger->GetTransform();
currentImage = tagger->GetOutput();
http://www.media.queensu.ca
16
3D Reconstruction

Synchronized images and transformation


Combined to produce 3D volumes
Pixel-based reconstruction


Pixel nearest neighbors (PNN)
Pixel trilinear interpolation (PTL)
http://www.media.queensu.ca
17
Reconstructing volumes
 Just start the application using the command line
SynchroGrab --calibration-file 071508_162653.Calibration.results
--reconstruct-volume --nb-frames 150 --fps 5 --use-tracker-transforms
http://www.media.queensu.ca
19
Communication with Slicer


Real-time acquisition using SynchroGrab.
Visualization with Slicer 3.
SynchroGrab --calibration-file 071508_162653.Calibration.results
--oigtl-transfert-images --nb-frames 150 --fps 5
http://www.media.queensu.ca
20
Communication with Slicer
http://www.media.queensu.ca
21
Conclusion & Future work

SynchroGrab

Acquisition and synchronization of tracking and ultrasound data

Can be used as a stand-alone command-line application.

Can be used in conjunction to an OpenIGTLink compliant
software.

Development of temporal calibration protocols

Future support for 3D probes
http://www.media.queensu.ca
22
References
1. T. Lango, G. A. Tangen, R. Marvik, B. Ystgaard, Y. Yavuz, J. H. Kaspersen,
O. V. Solberg, and T. A. N. Hernes. Navigation in laparoscopy–prototype
research platform for improved image-guided surgery. Minim Invasive
Ther Allied Technol, 17(1):17–33, 2008.
2. BrainLAB (AG, Heimstetten, Germany). IGSonic. http://www.brainlab.com
3. Medtronic(Louisville, CO, U.S.). SonoNav.
http://www.medtronicnavigation.com
4. Graham Treece, Richard Prager and Andrew Gee. Stradx/Stradwin.
http://mi.eng.cam.ac.uk/~rwp/stradwin/
5. Andinet Enquobahrie, Patrick Cheng, Kevin Gary, Luis Ibanez, David Gobbi,
Frank Lindseth, Ziv Yaniv, Stephen Aylward, Julien Jomier, and Kevin
Cleary. The image-guided surgery toolkit IGSTK: an open source C++
software toolkit. J Digit Imaging, 20 Suppl 1:21–33, 2007.
6. E. M. Boctor, A. Viswanathan, S. Pieper, M. A. Choti, R. H. Taylor, R. Kikinis,
and G. Fichtinger. CISUS: an integrated 3D ultrasound system for IGT
using a modular tracking API. Proceedings of the SPIE, volume 5367,
pages 247–256, May 2004
http://www.media.queensu.ca
23
Acknowledgments




Natural Sciences and Engineering
Research Council (NSERC),
Canadian Institutes of Health
Research (CIHR),
National Alliance in Medical Image
Computing (NIH5U54EB00514903),
Fonds québécois de recherche sur
la nature et les technologies.
http://www.media.queensu.ca
24
Questions
http://www.media.queensu.ca
25