Difference between revisions of "2008 Summer Project Week:Nonlinear transforms"
From NAMIC Wiki
Line 46: | Line 46: | ||
<h3>Discussions</h3> | <h3>Discussions</h3> | ||
− | * Eulerian/Langrangian viewpoint discussions | + | * Eulerian/Langrangian viewpoint discussions (Gary, Steve) |
* Transform file format "should" indicate the coordinate frames and direction a transform maps* "Add Transform..." menu added | * Transform file format "should" indicate the coordinate frames and direction a transform maps* "Add Transform..." menu added | ||
− | * Coordinate frame manager to map between any two data sets verses mapping to parent/world. | + | * Coordinate frame manager to map between any two data sets verses mapping to parent/world. (Mike) |
** Named coordinate frames, coordinate frame for new data is labeled as the name of the dataset | ** Named coordinate frames, coordinate frame for new data is labeled as the name of the dataset | ||
** If transformation between coordinate frames is "unknown", Slicer will initially assume they are the same coordinate frame (identity) | ** If transformation between coordinate frames is "unknown", Slicer will initially assume they are the same coordinate frame (identity) |
Revision as of 13:46, 27 June 2008
Home < 2008 Summer Project Week:Nonlinear transforms
Key Investigators
- GE Research: Jim Miller, Bess Lee
- Isomics: Steve Pieper, Alex Y.
Objective
Extend Slicer's suite of transformations to include nonlinear transformations (B-spline, deformation grids) in the MRML scene, visualization pipeline, and command line modules.
Approach, Plan
- Develop new MRML nodes and MRML storage nodes for B-splines and deformation grids.
- vtkITK wrapper around ITK classes
- 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
Progress
Concrete
- MRML nodes and storage nodes for B-spline and deformation grids "done".
- "Copied" the "Linear registration" module to "Rigid registration"
- "Affine registration" now a shared object library (much faster)
Discussions
- Eulerian/Langrangian viewpoint discussions (Gary, Steve)
- Transform file format "should" indicate the coordinate frames and direction a transform maps* "Add Transform..." menu added
- Coordinate frame manager to map between any two data sets verses mapping to parent/world. (Mike)
- Named coordinate frames, coordinate frame for new data is labeled as the name of the dataset
- If transformation between coordinate frames is "unknown", Slicer will initially assume they are the same coordinate frame (identity)
Todo
- itkDisplacementFieldTransform
- Transform attribute of coordinate frame
- Coordinate frame manager from Mike Halle
- Maps between any two datasets not necessarily to world, have multiple transformation "estimates" for a single coordinate frame mapping.
- Visualization support?
- TransformDisplayNode?
- Need to patch itkTransformFactory (trunk and release) to register BSplines for 2D and 3D for floats and doubles (Luis)