2009 Winter Project Week Transform Management

From NAMIC Wiki
Jump to: navigation, search
Home < 2009 Winter Project Week Transform Management
MRML scene graph.
Transform node in a MRML scene.



Key Investigators

  • Jim Miller, GE
  • Steve Pieper, Isomics, Inc.

Objective

Provide the infrastructure to handle non-linear transformations as both modeling and resampling transforms.

Approach, Plan

We will continue the plans from the Summer 2008 project event (here).

  • Add attribute to transform nodes to indicate whether they represent a "Transform to World/Parent" or "Transform from World/Parent"
  • Extend visualization system for "Transform to World/Parent" or "Transform from World/Parent" _
  • Extend command line modules to annotate a transformation as a "Transform to World/Parent" or "Transform from World/Parent"
  • Identify places in slicer3 code where linear transforms are assumed - these either need generalization or informative warning/error messages
  • Incorporate itkDisplacementFieldTransform/vtkGridTransform for vector field style transformations.
    • Need to extend itk::TransformIO. Prototype using Base64/Zipped vector fields. Alternative, allow binary data in ITK Transform files or reference an external image to hold vectors in file format.
  • Coordinate frame manager to map between any two data sets verses mapping to parent/world.

Progress

  • Linear transformations are always stored in Slicer as modeling transformations.
  • Slicer assumes that plugins using ITK Transform file format want/return resampling transforms
  • Initial prototype of itkDisplacementFieldTransform using ITK Transform file format by Base64 encoding a Zipped version of a vector field (ITK Transform format is ASCII).
  • Mike Halle has a coordinate frame manager written in Python