2007 December Slicer IGT Programming

From NAMIC Wiki
Jump to: navigation, search
Home < 2007 December Slicer IGT Programming


Introduction

This is a working meeting for research groups with funding to work on the IGT extensions of the NA-MIC kit. There will be a follow up meeting during the NA-MIC AHM in SLC.

Summary

Over 20 researchers attended this meeting.

2007 December Slicer IGT Programming photo.jpg 2007 December Slicer IGT Programming photo01.jpg 2007 December Slicer IGT Programming photo02.jpg 2007 December Slicer IGT Programming photo03.jpg
2007 December Slicer IGT Programming photo05.jpg 2007 December Slicer IGT Programming photo06.jpg 2007 December Slicer IGT Programming photo08.jpg 2007 December Slicer IGT Programming photo09.jpg
2007 December Slicer IGT Programming photo04.jpg 2007 December Slicer IGT Programming photo07.jpg


Dates.Location.Hotels

Date: December 12-14, 2007

SPL at 1249 Boylston Street, Boston MA. (Directions)

Area hotels: Boston_Hotels

Goal

  • Continued discussion of Slicer IGT infrastructure, applications, and timelines
  • Introduce each team's effort in Slicer in the context of IGT
  • Find unmet needs
  • Identify high-priority working items
  • Identify each team's potential contribution to the high-priority tasks

Agenda

Wednesday, December 12

Theme: Where are we?

12noon: Lunch

12:55pm: Welcome (Ron Kikinis)

1-2pm:Slicer and IGSTK presentation

  • Slicer: overview of architecture, current status, and future plans (Pieper, Hata)
  • IGSTK
    • Architecture Overview (Ibanez)
    • Current status, and future plans (Cheng) Refactoring Design Discussion
    • IGSTK has time stamping for tracker and event.
    • Monitors to ensure the minimal latency between display and data acquisition (possible take away from IGSTK to Slicer).
    • GUI tools for sample programs are FLTK and Qt

215-330pm: Presentation by Slicer Developers

  1. Move toward multi-process model, keep idea of GPU capability in mind for future
  2. online/unsupervised segmentation, online/fast registration (almost like tracking); can trade some accuracy for speed
  3. flexibility in registration techniques - data collection is not perfectly constrained (patient positions vary, image quality varies, fiducials sometimes/not) - tools for anatomy-based registration
  • 3:00-3:15 - NA-MIC Collaborator Georgetown Cleary/Yaniv
  • 3:15-3:30 - NA-MIC DBP Queens/JHU Gobbi/Csoma/Kazanzides
  • 3:30pm-3:45pm: Review of today's progress

400pm: Adjourn

4-6pm (optional) MRI Demonstration

  • Use of Slicer for control and display with MRI (prostate module) presented by Junichi Tokuda. Location: Advanced MRI center, 221 Longwood, Boston

Thursday, December 13

Theme: Where are we?

9-10:00am Demos:

  • Hata (Tracking at BWH)
  • Freudling (Pieper) (Volume rendering)

1000-10:30am Demonstrations

    • Robot-assisted neurosurgery with Slicer (Kazanzides)
    • Robot connected to Slicer via Robot control unit (with Real time OS)
    • Slicer CT coords != Stealthstation CT coords
    • Needs rasToIjk matrix from xml file
    • Inter-computer communication
  • Slicer 3 IGT update

10:30am: Identifying the unmet needs

(At this point, representatives from each site should start thinking which part of the unment needs they can take primary responsibility, and take home as homework.)

  1. Queens: NA-MIC DBP
  2. JHU: BRP
  3. BWH: NCIGT etc.
  4. Georgetown: Liver RF
  5. Kitware-BWH
  • Identify the unique needs in IGT
  • Identify commonality among the projects
  • which one is to be covered by actively funded project?
  • Identity and prioritize unmet needs
  • Find commonality among the needs, consolidate if necessary


Unmet needs #1: Plug-in mechanism

Related wiki page -> Plug-in mechanism / Modules

  • Currently we use CMake + Slicer3
  • Compile vs. Run-time -> run-time is current choice for Steve
  • Slicer Base version 3.0
  • Binary distributed againg Base version
  • Firefox extension
  • How do you balance testing and flexibility.
  • Version control necessary
  • effort underway in NA-MIC/NAC
  • Module/function dependency
  • Common functions to be implemented in Base




  • Module/function dependency
Features Base Module
Visualization MRML, Arbitary ViewPoint (Pre-defined) Liver RF
Filtering None Command Line Module
IGT
  • Tracker I/O (BWH Hata)
    • Tracker On/Off
  • Real-Image I/O (BWH Hata)
    • Video capturing
    • Simple loading image
    • Imager control for each modality
      • MRI (NCIGT Tokuda)
  • Image re-slicing based on tracker (BWH Hata Liu)
  • GUI configuration control (XXX)
  • Human interface control
    • Foot pedal (BWH Liu)
  • Stereo
  • Output to outside display
  • Logging replay and saving
    • IGSTK has fast version
    • MRML scene recorder (Georgetown)
BWH, Georgetown, JHU, Queens applications
Registration Transform Display, Edit and Save/Resotre Calculae Transforms, Resample Data
Segmentation Label Maps, Parcellated Surface Segmentation Algorighms
Quantification Label, Image, Volume Statistics; Numpy access to MRML Applications in Python or MATLAB
Real-time Integration VTK Rendering, KWWidgets framework, Tracker Support (as Transforms) Direct Manipulation of the MRL Scene; 2D/3D Widgets; Device Interface
Diffusion Imaging DWI, DTI, Fiber Bundles Tractography, Clustering, Atlases
Application Bundles of Modules in Distribution: Registration Editor, some Filters Customized Extensions, Domain specific code, optimized Interface



Unmet needs #2 Data/communication/event

Related wiki page Events / Data transfer

  • Data Workflow I/O
  • ticking and latency management
  • Threads to read-in tracker info
  • Special DICOM and PACS
  • Priority control of events? -> Event Manager
  • Realtime needs
  • Inter-communication mechanism to/from Slicer
  • Socket mechanism in SlicerDaemon
  • Steve's presentation of small programming sending coords to SlicerDaemon and updating MRML
  • Scenesnapshot can be used as logging. Replay. Crash recovery
  • State machines may be useful mechanism in Slicer
  • Connection with commercial navigation system
    • MR/T BWH
    • Brainlab
    • Neuromate
    • Medtronics


Unmet needs #4: Inter-device communication mechanism to/from Slicer

Unmet needs #5: Volume rendering

    • Volume rendering
      • Performance and speed continue to be upgraded
      • GPU, fastere volume rendering
      • 4D IGT
      • Real I/O
      • New MRML? Time-series MRML volume?
    • (Regulartory approval) (Legal issue/ form / guideline)


Unmet needs #3: GUI

    • GUI
      • GUI-Workflow (David)
      • David's opening statement from Queens' perspective
      • How can we add additional windows?
      • KWWidgets has workflow mechanism
      • Compacting GUI - necessary
      • Single screen? Two screen setup? Two screen setup to be tried by David
      • KWWidgets Wizard Workflow Powerpoint presentation.


      • Observing events (convenience)
      • Status window is nice
      • short cut
        • pre-defined view point
        • lower left (two complicated)
      • GUI Layout to be stored in MRML (as log)
      • Turning off lower left
      • Status (window) part


      • human interface--
        • Voice
        • configurable GUI using current XML mechanism
          • What's the mechanism for Slicer-IGT
      • Overlay of tools in 2D view of Slicer


  • 5pm: Review day and plan for Friday (Hata)
  • 5:30pm: adjourn

Friday, December 14


  • 9:00am: breakfast, work
  • 9:30-11:00am
  • Review of the meeting
  • Discuss how we can continue this effort in what way
    • Hands on IGT Week
      • Outreaching to animal research community
      • Training and simulation



Confirmed Attendees

  1. Noby Hata, BWH (NCIGT)
  2. Steve Pieper, Isomics - (All Days) (NAMIC, NAC)
  3. Patrick Cheng, Georgetown (NAMIC Collab)
  4. Ziv Yaniv, Georgetown (NAMIC Collab)
  5. Kevin Cleary, Georgetown (Wed only) (NAMIC Collab)
  6. Luis Ibanez, Kitware (NAMIC)
  7. Sebastien Barre, Kitware (NCIGT)
  8. Stephen Aylward, Kitware (NCIGT)
  9. Jeff Stoll (except Thursday), BWH/CIMIT (NCIGT)
  10. Haiying Liu, BWH (NCIGT)
  11. Katie Hayes, BWH (NAC)
  12. Peter Kazanzides (except Friday), JHU (NAMIC Collab)
  13. Csaba Csoma, JHU (NAMIC/NCIGT Collab)
  14. David Gobbi, Queens (NAMIC/NCIGT Collab)
  15. Tina Kapur,BWH (NAMIC/NCIGT)
  16. Ron Kikinis, BWH (NAMIC/NCIGT)
  17. Junichi Tokuda, BWH (NCIGT)
  18. Raul San Jose, BWH (NAC)
  19. Neculai Archip, BWH (Wed only) (NCIGT)
  20. Nicholas Ayache (NCIGT) (Wed only)
  21. Andy Freudling, (NAMIC)
  22. Henrik Keller (NCIGT)
  23. Benjamin Grauer (NCIGT)