Download - ITK Tutorial Presentation Slides-949
![Page 1: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/1.jpg)
IGSTKThe Image-Guided Surgery Toolkit
Kitware, Inc
![Page 2: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/2.jpg)
Overview
History Infrastructure Components Quality Control Software Process Applications
![Page 3: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/3.jpg)
The Toolkit in a Nutshell
Open Source Toolkit BSD-like License Written in C++ Cross Platform Based on ITK and VTK GUI based on FLTK Designed for a Critical Application
![Page 4: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/4.jpg)
History STTR Funded by NIBIB/NIH (Georgetown-
Kitware) Phase I from May to Sept 2003. Used in
example applications. Phase II started on October 2004 CADDLab UNC Joined the project and
contributed Spatial Objects & RF ablation Application.
Atamai joined on 2005 and contributed Tracker code.
Releases done about every 6 months
![Page 5: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/5.jpg)
Layer Architecture
ITK VTK
OpenGLVNL GDCM Threads, XML,…
IGSTK
GUI: FLTK / Qt / MFC
IGS - APPLICATION
![Page 6: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/6.jpg)
Main Categories of Components
Infrastructure
Trackers Viewers
Geometry &Representation
Images & Readers
![Page 7: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/7.jpg)
Infrastructure
State Machine Time Stamp Pulse Generator Events Transforms Logger
![Page 8: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/8.jpg)
Trackers
Tracker (base class)– PolarisTracker– AuroraTracker– Flock Of Birds
Support– SerialCommunication
SerialCommunicationForWindows SerialCommunicationForPosix
– NDICommandInterpreter
![Page 9: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/9.jpg)
Object Representation SpatialObject
– Ellipsoid– Cylinder– Images– Mesh– Tube– TubeGroup– Group– Box– Cone
SpatialObjectRepresentation– Ellipsoid– Cylinder– Images– Mesh– Tube– Box– Cone– VascularNetwork– AirwaysNetwork– Surgical Tools
![Page 10: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/10.jpg)
Viewers
View– View2D– View3D
VTK Based GUI / VTK hybrid class
![Page 11: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/11.jpg)
Images and Readers Image
– CTImage– MRImage– FluoroscopicImage
Readers (DICOM)– CTImageReader– MRImageReader– Fluoroscopy (video input)
![Page 12: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/12.jpg)
Dynamics Architecture
![Page 13: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/13.jpg)
GUI
General Interactions
View1
View2
View3
View4
ObjectRepresentation Spatial
Object
Tracker
TrackerTool 1
TrackerTool 2
TrackerTool 3
ObjectRepresentation
ObjectRepresentation
![Page 14: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/14.jpg)
Tracking Interactions
ObjectRepresentation
SpatialObject
Tracker
TrackerTool 3
ObjectRepresentation
Tick
TransformEvent
T
T =
T
T
T
![Page 15: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/15.jpg)
Event Class
ITK Event
TransformEvent
TimeStampEvent
StringEvent
IGSTK Event
![Page 16: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/16.jpg)
Event Class
![Page 17: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/17.jpg)
Transform
Transform Class
Vector
Versor
TimeStamp
Error
![Page 18: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/18.jpg)
Transform Class
![Page 19: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/19.jpg)
Transform Event Class
![Page 20: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/20.jpg)
Pulse Generator
Action
Action
How not to miss pulses ?
![Page 21: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/21.jpg)
GUI
Timing Control
View1
View2
View3
View4
ObjectRepresentation Spatial
Object
Tracker
TrackerTool 1
TrackerTool 2
TrackerTool 3
ObjectRepresentation
ObjectRepresentation
Tick
Tick
![Page 22: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/22.jpg)
Quality Control
![Page 23: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/23.jpg)
Testing Platforms Windows
– Visual Studio 6.0 / 7.1 / 8.0 Linux
– gcc 3.2 / 3.3 / 3.4 / 4.0– icc 7.1 / 8.0
Cygwin – Windows– gcc 3.4– gcc 3.3
![Page 24: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/24.jpg)
Testing
Goal – 100 % Code Coverage– 100 % State Machine Transitions Testing
Current Code Coverage– IGSTK 93.6 % ( untested 321 / 4714 lines )– Sandbox 92.4 % ( untested 4 / 49 lines )
![Page 25: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/25.jpg)
Dynamic Testing Platforms
Valgrind on Linux– gcc 3.3– gcc 3.4
Valgrind on Cygwin Purify (too expensive)
![Page 26: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/26.jpg)
Software Process
![Page 27: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/27.jpg)
Software Process
Sandbox Extreme programming Release early, release often Code reviews Requirements Bug tracking
![Page 28: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/28.jpg)
Typical Agenda for a release Create feature list Write requirements Develop code Tag Sandbox, create code review list Code Review Move code and tag Fix Documentation Fix remaining bugs Increase code coverage Create and release package
![Page 29: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/29.jpg)
Applications
![Page 30: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/30.jpg)
Applications
Ultrasound-guided percutaneous liver lesion RFA
Needle Biopsy Guidewire Tracking
![Page 31: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/31.jpg)
Ultrasound-Guided Liver RFA
![Page 32: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/32.jpg)
GuideWire Tracking
![Page 33: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/33.jpg)
Needle Biopsy
![Page 34: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/34.jpg)
Download IGSTK and Try it!
http://www.igstk.org Last stable release “Iteration 7” Demo: Sunday Feb 12 from 8:30 to 10:30 pm
![Page 35: ITK Tutorial Presentation Slides-949](https://reader035.vdocuments.us/reader035/viewer/2022062406/558e44b21a28ab9a668b4765/html5/thumbnails/35.jpg)
Enjoy IGSTK!