2012 Winter Project Week DICOM RT Breakout

From NAMIC Wiki
Jump to: navigation, search
Home < 2012 Winter Project Week DICOM RT Breakout
Back to AHM Schedule

Objective

  • Identify and priorize tasks regarding the integration of DICOM RT related functions in Slicer4
  • Make decisions upon major design questions
  • Plan further steps

Time and Place

  • 3PM-5PM, Tuesday, January 10, 2012
  • Amethyst room, Marriott, Salt Lake City, UT

Agenda

  • 3:10-3:20, Welcome, Goal of the meeting, Agenda, Taking notes in wiki
  • 3:20-3:35, Introduction of SlicerRT project (under SparKit) goals, design options - Csaba Pinter
  • 3:35-3:50, Overview of DICOM-RT - Greg Sharp (slides)
  • 3:50-4:15, Slicer annotations for Quntitative Imaging Network (DICOM SR, AIM) - Andrey Fedorov (slides)
  • ?:??-?:??, Introduction of ... - Anyone who is interested
  • ?:??-4:40, Discussion about the common needs, priorities, the best approaches and design options
  • 4:40-5:00, Decisions, Action plan

Organizational Topics

  • How can we organize ourselves to minimize duplicated effort
    • How to share code with Slicer and non-Slicer projects (plastimatch)
  • Who is 'on the hook' to deliver functionality related to DICOM?
    • What is funding the effort?
    • What is the use case and deliverable?
    • What toolkit will be used?
    • What synergy is there with other efforts?
  • Are there specific issues that we can work out this week as a team?

Design questions

  • How to add handling of the new entities in CTK?
    • Notifyable loadable module?
  • How to represent the data in Slicer? (which MRML nodes to use)
  • Conversion issues between the representations
    • Contour → Volume/Surface
    • Manual or automatic
  • Are RT specific modules expanded during import or just on load in the treeview?

Plan

  • Telecon with DCMTK group, CTK group
    • DCMTK - next week (Jan 14-) - to be organized by the SparKit group
      • What can go reasonably in DCMTK should go there as lowest level toolkit
      • Middle level addition for interpreting raw data
    • CTK
      • Get relevant tags from RT/SR and insert them in database
  • Slicer extension
    • Hidden loadable module
    • Lower level register-observe method
    • Storage nodes, IO factory
    • Solve binding of the annotations to a volume
  • Representation
    • Contours
      • Store contour series - vtkMRMLAnnotation...Node: PolyLine
      • Hierarchy: Structure Set -> Structure -> Contour
        • Hierarchy nodes that represent a relationship
        • Transform graph: tree, Grouping: tree/graph?

TBD

  • Image representation, multiple structures for a voxel
  • DICOM Metadata format in Slicer
    • Keep it in the file?
      • We have the UID and the database -> we can get the file
      • Caching may be implemented in CTK
      • The file can be kept in memory
      • Pointer in the vtkMRMLNode to a DCMTK object