120 likes | 394 Views
IGSTK Architecture. First, Do no Harm!. The Toolkit in a Nutshell. Open Source Toolkit BSD-like License Written in C++ Based on ITK and VTK Focused on Robustness. Layer Architecture. IGS - APPLICATION. IGSTK. IGSTK FLTK Widget. IGSTK QT Widget. ITK. VTK. FLTK. QT. VNL. GDCM.
E N D
IGSTK Architecture First, Do no Harm!
The Toolkit in a Nutshell • Open Source Toolkit • BSD-like License • Written in C++ • Based on ITK and VTK • Focused on Robustness
Layer Architecture IGS - APPLICATION IGSTK IGSTK FLTK Widget IGSTK QT Widget ITK VTK FLTK QT VNL GDCM Threads, XML,… OpenGL
Main Categories of Components Infrastructure Geometry & Representation Trackers Images & Readers Viewers
General Interactions Tracker GUI Tick Tick View1 TrackerTool 1 TrackerTool 2 View2 TrackerTool 3 Object Representation View3 Spatial Object View4 Object Representation
Event Passing Reader Representation AddObserver( transducer ) RequestGetImage() GetImageProcessing() InvokeEvent( image ) / Execute() GetImage()from event ReportError() InvokeEvent( error ) / Execute()
Event Class ITK Event IGSTK Event TransformEvent TimeStampEvent StringEvent
Events Hierarchy and Macros IGSTKEvent PointEvent PulseEvent TransformModifiedEvent RefreshEvent StringEvent CompletedEvent UnsignedIntEvent InputOutputErrorEvent VTKImageModifiedEvent • igstkEventMacro() • igstkLoadedEventMacro() • igstkLoadedObjectEventMacro() • igstkLoadedTemplatedObjectEventMacro() • igstkLoadedTemplatedConstObjectEventMacro()
Timing Control Tick Tick Tracker GUI TrackerTool Object Representation View1 View2 Object Representation Spatial Object View3 Object Representation View4
Coordinate Systems View showing the scene from the point of view of the MRI coordinate system. Tracker using reference tool. Tracker RawT Tracker Tool A DICOM MRI RawT LRT Tracker Tool B DICOM CT RawAT IRT CLT View CPT IRT = Registration Transform RawT = Raw Transform from Tracker CLT = Calibration Transform LRT = Landmark Registration Transform CPT = Camera Position Transform NLT = Needle Local Transform NLT Needle So CoordinateReferenceSystem class instance
The Moment of Zen Number of Bugs = ( Number of Features )2 – (Number of Tests)