Difference between revisions of "Documentation/Nightly/Modules/SurfaceRegistration"

From Slicer Wiki
Jump to: navigation, search
m
 
(One intermediate revision by the same user not shown)
Line 12: Line 12:
 
Author: Jean-Baptiste Vimort (University of Michigan)<br>
 
Author: Jean-Baptiste Vimort (University of Michigan)<br>
 
Contributors: Francois Budin (UNC), Juan Carlos Prieto (UNC), Beatriz Paniagua (UNC), Lucia Cevidanes (University of Michigan)<br>
 
Contributors: Francois Budin (UNC), Juan Carlos Prieto (UNC), Beatriz Paniagua (UNC), Lucia Cevidanes (University of Michigan)<br>
Contact: Jean-Baptiste Vimort, <email>jvimort@umich.edu</email><br>
+
Contact: Jean-Baptiste Vimort, <email>jb.vimort@gmail.com</email><br>
 
{{documentation/{{documentation/version}}/module-introduction-row}}
 
{{documentation/{{documentation/version}}/module-introduction-row}}
 
<gallery>
 
<gallery>
Line 29: Line 29:
 
{{documentation/{{documentation/version}}/module-section|Use Cases}}
 
{{documentation/{{documentation/version}}/module-section|Use Cases}}
 
==Fiducials Registration==
 
==Fiducials Registration==
===pictures===
+
===Pictures===
 
{|
 
{|
 
|[[Image:SurfaceRegistrationFR.png|thumb|400px|Before fiducial registration]]
 
|[[Image:SurfaceRegistrationFR.png|thumb|400px|Before fiducial registration]]
Line 36: Line 36:
 
|}
 
|}
  
===inputs/outputs===
+
===Inputs/Outputs===
 
* <span style="color:blue">'''Inputs'''</span>:  
 
* <span style="color:blue">'''Inputs'''</span>:  
 
** <span style="color:green">'''Fixed Model'''</span>: 3D model (vtk file) that won't move.  
 
** <span style="color:green">'''Fixed Model'''</span>: 3D model (vtk file) that won't move.  
Line 46: Line 46:
 
** <span style="color:green">'''output transform'''</span>: linear transform node in which the transformation computed by the algorithm will be saved.
 
** <span style="color:green">'''output transform'''</span>: linear transform node in which the transformation computed by the algorithm will be saved.
  
===description===
+
===Description===
 
The fiducial registration computes a rigid, similarity, or affine transform from a matched list of fiducials using the SurfaceRegistration module. The algorithm needs the same number of fiducial in each list, and at least 3 fiducials per list. <br>
 
The fiducial registration computes a rigid, similarity, or affine transform from a matched list of fiducials using the SurfaceRegistration module. The algorithm needs the same number of fiducial in each list, and at least 3 fiducials per list. <br>
 
The 'add landmarks' section allows the user to add and move landmarks. Landmarks can be projected on the surfaces or not.
 
The 'add landmarks' section allows the user to add and move landmarks. Landmarks can be projected on the surfaces or not.
  
 
==Surface Registration==
 
==Surface Registration==
===pictures===
+
===Pictures===
 
{|
 
{|
 
|[[Image:SurfaceRegistrationSR.png|thumb|400px|Before Surface Registration]]
 
|[[Image:SurfaceRegistrationSR.png|thumb|400px|Before Surface Registration]]
Line 58: Line 58:
 
|}
 
|}
  
===inputs/outputs===
+
===Inputs/Outputs===
 
* <span style="color:blue">'''Inputs'''</span>:  
 
* <span style="color:blue">'''Inputs'''</span>:  
 
** <span style="color:green">'''Fixed Model'''</span>: 3D model (vtk file) that won't move.  
 
** <span style="color:green">'''Fixed Model'''</span>: 3D model (vtk file) that won't move.  
Line 66: Line 66:
 
** <span style="color:green">'''output transform'''</span>: linear transform node in which the computed transformation is saved.
 
** <span style="color:green">'''output transform'''</span>: linear transform node in which the computed transformation is saved.
  
===description===
+
===Description===
 
The fiducial registration computes a rigid, similarity, or affine transform to register two models using the Iterative Closest Point algorithm. This algorithm doesn't require the two models to have the same number of points.
 
The fiducial registration computes a rigid, similarity, or affine transform to register two models using the Iterative Closest Point algorithm. This algorithm doesn't require the two models to have the same number of points.
  
 
==ROI Registration==
 
==ROI Registration==
===pictures===
+
===Pictures===
 
{|
 
{|
 
|[[Image:SurfaceRegistrationROIR.png|thumb|400px|Before ROI (Region Of Interest) Registration]]
 
|[[Image:SurfaceRegistrationROIR.png|thumb|400px|Before ROI (Region Of Interest) Registration]]
Line 77: Line 77:
 
|}
 
|}
  
===inputs/outputs===
+
===Inputs/Outputs===
 
* <span style="color:blue">'''Inputs'''</span>:  
 
* <span style="color:blue">'''Inputs'''</span>:  
 
** <span style="color:green">'''Fixed Model'''</span>: 3D model (vtk file) that won't move.  
 
** <span style="color:green">'''Fixed Model'''</span>: 3D model (vtk file) that won't move.  
Line 86: Line 86:
 
** <span style="color:green">'''Output model'''</span>: 3D model that will save the result of the moving model after the transformation.  
 
** <span style="color:green">'''Output model'''</span>: 3D model that will save the result of the moving model after the transformation.  
 
** <span style="color:green">'''output transform'''</span>: linear transform that will save the transform compute by the algorithm.
 
** <span style="color:green">'''output transform'''</span>: linear transform that will save the transform compute by the algorithm.
===description===
+
===Description===
 
The fiducial registration computes a rigid, similarity, or affine transform from a matched part of models based on the Iterative Closest Point algorithm. This algorithm doesn't require the regions of each model to have the same number of points.
 
The fiducial registration computes a rigid, similarity, or affine transform from a matched part of models based on the Iterative Closest Point algorithm. This algorithm doesn't require the regions of each model to have the same number of points.
 
The 'add landmarks' section allows user to define the regions of interest (ROIs) by positioning a landmark on a 3D model and defining a radius for the region (the radius is defined in term of neighbors and not in millimeters).
 
The 'add landmarks' section allows user to define the regions of interest (ROIs) by positioning a landmark on a 3D model and defining a radius for the region (the radius is defined in term of neighbors and not in millimeters).

Latest revision as of 21:05, 29 February 2016

Home < Documentation < Nightly < Modules < SurfaceRegistration


For the latest Slicer documentation, visit the read-the-docs.


Introduction and Acknowledgements

Extension: CMFreg
Acknowledgments: This work was supported by the National Institute of Dental & Craniofacial Research and the National Institute of Biomedical Imaging and Bioengineering under Award Number R01DE024450. The content is solely the responsibility of the authors and does not necessarily represent the official views of the National Institutes of Health.
Author: Jean-Baptiste Vimort (University of Michigan)
Contributors: Francois Budin (UNC), Juan Carlos Prieto (UNC), Beatriz Paniagua (UNC), Lucia Cevidanes (University of Michigan)
Contact: Jean-Baptiste Vimort, <email>jb.vimort@gmail.com</email>

Module Description

This module allows the user to compute and apply transformations (registration) between two 3D models (VTK file). The registration can be computed using the entire mesh of both models (Surface Registration), just a region of interest (ROI Registration) on each model, or two fiducial lists which can be projected on the meshes (Fiducial Registration).

Use Cases

Fiducials Registration

Pictures

Before fiducial registration
Fiducial Registration Interface
Result after fiducial registration

Inputs/Outputs

  • Inputs:
    • Fixed Model: 3D model (vtk file) that won't move.
    • Moving Model: 3D model (vtk file) that will move.
    • Fixed Landmarks: ordered landmark list (fiducial list) associated with the Fixed Model.
    • Moving Landmarks: ordered landmark list (fiducial list) associated with the Fixed Model.
  • Outputs:
    • Output model: 3D model node that in which the transformed moving model will be saved.
    • output transform: linear transform node in which the transformation computed by the algorithm will be saved.

Description

The fiducial registration computes a rigid, similarity, or affine transform from a matched list of fiducials using the SurfaceRegistration module. The algorithm needs the same number of fiducial in each list, and at least 3 fiducials per list.
The 'add landmarks' section allows the user to add and move landmarks. Landmarks can be projected on the surfaces or not.

Surface Registration

Pictures

Before Surface Registration
Surface Registration Interface
Result after Surface Registration

Inputs/Outputs

  • Inputs:
    • Fixed Model: 3D model (vtk file) that won't move.
    • Moving Model: 3D model (vtk file) that will move.
  • Outputs:
    • Output model: 3D model node in which the transformed moving model will be saved.
    • output transform: linear transform node in which the computed transformation is saved.

Description

The fiducial registration computes a rigid, similarity, or affine transform to register two models using the Iterative Closest Point algorithm. This algorithm doesn't require the two models to have the same number of points.

ROI Registration

Pictures

Before ROI (Region Of Interest) Registration
Interface of ROI (Region Of Interest) Registration
Result after ROI (Region Of Interest) Registration

Inputs/Outputs

  • Inputs:
    • Fixed Model: 3D model (vtk file) that won't move.
    • Moving Model: 3D model (vtk file) that will move.
    • Fixed Landmarks: list of landmarks associated to the Fixed Model.
    • Moving Landmarks: list of landmarks associated to the Fixed Model.
  • Outputs:
    • Output model: 3D model that will save the result of the moving model after the transformation.
    • output transform: linear transform that will save the transform compute by the algorithm.

Description

The fiducial registration computes a rigid, similarity, or affine transform from a matched part of models based on the Iterative Closest Point algorithm. This algorithm doesn't require the regions of each model to have the same number of points. The 'add landmarks' section allows user to define the regions of interest (ROIs) by positioning a landmark on a 3D model and defining a radius for the region (the radius is defined in term of neighbors and not in millimeters).

Similar Modules

N/A

Information for Developers

The source code is available on github