31
A DICOM Import Module A DICOM Import Module for XIP for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat, Skip Talbot, Ray Wu, Christina Sillery, Rachel Embree

A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

  • View
    215

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

A DICOM Import Module for A DICOM Import Module for XIPXIP

Alex Shnayder

Lafayette College

Easton, PA

Supervisor: Dr. Dave Channin

We gratefully acknowledge the support of:

Pat Mongkolwat, Skip Talbot, Ray Wu, Christina Sillery, Rachel Embree

Page 2: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

OverviewOverview

- Introduction -

- XIP Description -

- Developing the Module -

- Conclusion -

Page 3: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

caBIG: In Vivo Imaging WorkspacecaBIG: In Vivo Imaging Workspace

“cancer Biomedical Informatics Grid” Funded by NCI Focuses on a variety of projects, including the XIP

development project Hopes to facilitate the use of imaging in clinical

trials Requires easily extensible open source platform

for image analysis/visualization

Page 4: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

XIP: eXtensible Imaging PlatformXIP: eXtensible Imaging Platform open source environment for rapidly developing medical imaging

applications

– makes it easier and less expensive to access specific processing applications at multiple sites

– simplifies clinical trials – increases the uniformity of imaging and analysis

researchers can easily develop new approaches to medical imaging problems and use them in a translational research setting

imaging applications developed by research groups will be easy to access within the clinical operating environment

new software can be readily transitioned into products due to the re-use of already approved libraries and open source development processes

Page 5: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

XIP - IntroductionXIP - Introduction Washington University and Siemens Corporate Research

were selected to develop the platform

WU serves as the main coordinating site

Final version will be based on ivRAD and RADBuilder, an open-source set of tools developed by Siemens

DICOM WG-23 standardizes the interfaces between a workstation and the hosted processing applications (plug-ins)

XIP will incorporate the ITK/VTK image processing/visualization libraries

Page 6: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

Going from ivRAD to XIPGoing from ivRAD to XIP

Strip out Siemens’ own visualization and processing functions

Support an open-source license

Replace the old Siemens classes with open-source classes

Integrate the DICOM WG-23 APIs

Allow support for other platforms (ex. Linux)

Refine the user display

Page 7: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

Integrating Clinical WorkstationsIntegrating Clinical WorkstationsDICOM WG-23 standardizes the interaction between

a plug-in application and a host environment (ex. web browser)

Page 8: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

What does XIP include?What does XIP include?

XIP.rad

– Rapid Action Development Tools and Libraries– Application build environment (scene graphs, pipelines,

etc.)– Extensible set of libraries for image processing– Based off of Open Inventor framework– Contains code generating wizards to help wrap existing

libraries into modules (ex. ITK)

Page 9: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

What does XIP include?What does XIP include?

XIP.ws

– Reference implementation of medical imaging workstation

– Developed using XIP RAD– Designed to support basic cancer research use cases– Contains 2 components:

1) XIP.app (specific plug-in application) 2) XIP.host (hosting environment to provide

application with data and services such as remote processing)

Page 10: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

XIP HostXIP Host

Provides the infrastructure in which XIP applications are run

Provides data and services to XIP applications

Isolates XIP applications from databases, networks, etc.

Maps images to a common form useable by the XIP applications

Page 11: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

XIP UsersXIP Users

Page 12: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

XIP FrameworkXIP Framework

Page 13: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

XIP Framework (cont.)XIP Framework (cont.)

Page 14: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

The Problem…The Problem…

Siemens has not yet incorporated a lot of DICOM compatibility into XIP

The goal of this project is to create a generic module which can read and pass information from a DICOM file within an XIP environment

Page 15: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

Open InventorOpen Inventor An object-oriented toolkit which offers an easy way to deal

with interactive graphics programming tasks Built on top of OpenGL Uses a programming model based on the concept of pipelines Window system and platform independent C++ modules represent Engines, Nodes and Manipulators Engines enable the creation of processing pipelines

Page 16: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

Integrating ToolkitsIntegrating Toolkits XIP allows for the easy integration of toolkits

and libraries which include the following:– Stock Open Inventor objects for 3D graphics, modeling, UI,

picking, etc.– VTK classes wrapped into Open Inventor objects to support

visualization – ITK classes wrapped into Open Inventor objects for easy use in

XIP applications– Custom objects supplied by developers to extend the standard

XIP objects

XIP libraries may be auto-generated from existing class libraries (ex. ITK, VTK), or may be custom-built from new or existing code

Page 17: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

DCMTK: DCMTK: DICOM ToolkitDICOM Toolkit

A collection of libraries and applications which implement the DICOM standard

Allows the displaying, constructing, and sending of DICOM images

Written in a combination of C/C++ as a complete, open-source software

Commonly used by hospitals, developers, and presenters for product testing

Page 18: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

XipBuilderXipBuilder graphical user

programming environment to build scene graphs, without programming code, using a simple drag & drop interface

has not been finished yet and must be tested before being released to a large community

Page 19: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

Class HeirarchyClass Heirarchy

SoXipSFDataImage

SoXipDataImageDicomObject

NewImage SbXipImage

DicomHandler

Page 20: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

DicomObjectDicomObject

Holds one variable – a NewImage object

2 Functions: – get() returns the

NewImage– set(…) sets the

NewImage to point to a new one

Page 21: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

NewImageNewImage

Extends SbXipImage – an XIP object that only holds pixel data and the image dimensions

Stores all necessary DICOM header information and the pixel data

Contains various accessor methods and a DicomHandler object to retrieve all the DICOM info

Page 22: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,
Page 23: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

Using XipBuilderUsing XipBuilder

Page 24: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

Coding in Open InventorCoding in Open Inventor

Page 25: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

SoXipLoadDICOM ClassSoXipLoadDICOM Class the primary class that performs the module’s actions

creates a NewImage object based on the user input “filename”

passes an SoXipSFDataImage object which ultimately contains the original pixel data and DICOM header info

Page 26: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

Using the SoXipLoadDICOM ModuleUsing the SoXipLoadDICOM Module

Page 27: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

Possibilities for ImprovementPossibilities for Improvement

Ensure proper DICOM header information before loading a DICOM file

Allow access to all DICOM header info instead of using only certain tags

Integrate other existing DICOM-related toolkits instead of just DCMTK

Page 28: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

ConclusionConclusion

Created a generic DICOM import module that will allow any developed XIP module to handle both header and pixel information

Provided an example of how external toolkits can be incorporated into XIP (specifically DCMTK)

Page 29: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,
Page 30: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

ReferencesReferences

Prior, Fred. “The cancer Biomedical Informatics Grid: In Vivo Imaging Workspace Projects.” Washington University in St. Louis.

Prior, Fred. “The cancer Biomedical Informatics Grid: XIP – NCI’s Open Source Workstation.” Washington University in St. Louis.

Tarbox, Lawrence. “Application Hosting – A Standardized API for Launching and Communicating with ‘Plug-In’ Applications.” Washington University in St. Louis School of Medicine.

Tarbox, Lawrence et. al. “XIP: the eXtensible Imaging Platform.” Washington University in St. Louis, Siemens Corporate Research.

Page 31: A DICOM Import Module for XIP Alex Shnayder Lafayette College Easton, PA Supervisor: Dr. Dave Channin We gratefully acknowledge the support of: Pat Mongkolwat,

HW

XIPApplication

InventorApplication Modules

WG 23 System Services PLUG

WG 23 System Services SOCKET

GRIDCLIENT

SERVICES

DICOMSERVICES(DCMTK)

OTHERSERVICES

VTK ITK AIMTK other

OS

NCIA

XIPIDE

RadLex

AIM

NCI

ProtégéEVS

XIP

MIDDLEWARE

DICOM

DICOM Services

IVI MiddlewarecaGrid

CaBIG

caDSR, EVS, RadLex, AIM ontology, etc

Client accessService access

Grid Data Service

Grid Analytical Service

AIM Data Service

XIP App

ServiceHost

WG23

DICOM Image

Sources