880 likes | 1.19k Views
ITK Deformable Registration. Finite Elements Methods. Deformable Registration. Finite Element Methods for Deformable Registration. Deformable Transformation. y. y. Transform. x. x. Fixed Image. Moving Image. Deformable Transformation. y. y. Transform. x. x. Fixed Image.
E N D
ITK Deformable Registration Finite Elements Methods
Deformable Registration Finite Element Methodsfor Deformable Registration
Deformable Transformation y y Transform x x Fixed Image Moving Image
Deformable Transformation y y Transform x x Fixed Image Moving Image
FEM Grid y FEM Grid Resampling Grid x
FEM Grid y FEM Grid x
FEM Grid y FEM Grid Computed Deformation x
FEM Grid y FEM Grid Displacements Forces x
FEM Iterative Linear System Finite Element Methods F Vector N Forces U Vector N Displacements K Matrix NxN Regularization
FEM Iterative Linear System Finite Element Methods F K U F U = ● K
FEM Iterative Linear System N = Number of Nodes N x N N N = ● U F K
FEM Iterative Linear System Iteratively Solving a Linear System K U F = ● Linearization of a Physical Model Image based forces Node Displacements
FEM Energy Formulation Find registration transformation that maximizes
FEM Energy Formulation Benefits • Intuitive; easier to express constraints • Powerful numerical solutions available • Optimality of solutions; easier to debug Limitations • Difficult / overhead to implement
Deformable Registration To solve the deformation, consider only displacements of the form
Deformable Registration Linear Elements
Deformable Registration α1 Element φ1 Shape Function
Deformable Registration Element φ2 α2 Shape Function
Deformable Registration α3 φ3 Element Shape Function
Deformable Registration u α3 φ3 Element α1 φ1 φ2 α2 Shape Functions
Deformable Registration Higher Order Elements
Deformable Registration α1 Element φ1 Shape Function
Deformable Registration α4 φ4 Element Shape Function
Deformable Registration Element φ2 α2 Shape Function
Deformable Registration φ5 α5 Element Shape Function
Deformable Registration α3 φ3 Element Shape Function
Deformable Registration φ6 α6 Element Shape Function
Deformable Registration α4 φ4 u α3 φ3 Element φ6 α1 α6 φ1 φ5 α5 φ2 α2 Shape Functions
Deformable Registration Substitute uhinto E, then minimizing with respect to αi:
BSplines Grid & Image Grid Calculation are made in an Element by Element basis
BSplines Grid & Image Grid Elements are connected at Nodes at which the displacement is solved
BSplines Grid & Image Grid Efficiency is gained by elemental computation
BSplines Grid & Image Grid Domain subdivision (Mesh) can be tailored to the underlying geometry of the image.
FEM Solver Start Iteration Loop • Begin Loop by making physical assumptions and then taking the derivative of the similarity metric. • End loop when the solution stabilizes. Physical Assumptions New Solution Solve Image Metric Derivative End Iteration Loop
FEM Solver Start Iteration Loop K Physical Assumptions Solve New Solution U Image Metric Derivative F End Iteration Loop
K U F = ● FEM Solver Start Iteration Loop K U Unew F If ( Unew – Uold) < ε then Stop
KU=F in Code itk::FEMRegistrationFilter::IterativeSolve() itk::FEMSolver::AssembleK() FEMSolver :: AddSolution() FEMSolver:: Solve() FEMSolver::AssembleF() calls FEMImageMetricLoad::Fe()
FEM-Based Registration Options Element Type • Triangles • Quadrilaterals • Hexahedra • Tetrahedra
FEM-Based Registration Options Continuum / Physical Model • Linear elasticity • Membrane • Other specialized
FEM-Based Registration Options Mesh geometry • Uniform grid vs. adaptive • Anatomy-specific mesh
FEM-Based Registration Options Metric • Mean square • Normalized cross-correlation • Mutual information • Pattern intensity
ITK FEM Library Introduction to the ITK Finite Element Library
ITK FEM Library Library for solving general FEM problems • Object oriented • C++ classes are used to • specify the geometry and behavior of the elements • apply external forces and boundary conditions • solve problem and post-process the results
ITK FEM Library Applications • Mechanical modeling • Image registration
FEM Basics • Mesh • Nodes • Points in space where solutions are obtained • Elements • e.g., 2-D triangular elements • Loads • e.g., gravity (body) load • Boundary conditions • e.g., nodes fixed in space
ITK FEM Elements • Core of the library is the Element class • Code is in two functionally independent parts • Geometry and Physics • Arbitrarily combined to create new elements • Problem domain is specified by a mesh Geometry Physics
Loads Classes that apply external forces (loads) to elements • Various types • Easily extensible
Solvers • Provide functionality to obtain and process the solution • Different solution methods different solver classes • Static problems • Time dependent - dynamic problems