2 Open Source Disclaimer Many of the slides in this talk were taken from the ITK course presented at MICCAI 2003 byDr. James Gee (U. Penn) Brian Avants (U. Penn) Tessa Sundaram (U. Penn) Dr. Lydia Ng (AllenInstitue)Of course, any errors… are mine.
3 Deformable Registration Finite Element Methods for Deformable Registration
34 BSplines Grid & Image Grid Elements are connected at Nodes at which the displacement is solved
35 BSplines Grid & Image Grid Efficiency is gained by elemental computation
36 BSplines Grid & Image Grid Domain subdivision (Mesh) can be tailored to the underlying geometry of the image.
37 FEM SolverStart Iteration LoopBegin Loop by making physical assumptions and then taking the derivative of the similarity metric.End loop when the solution stabilizes.PhysicalAssumptionsNewSolutionSolveImage MetricDerivativeEnd Iteration Loop
38 K U F FEM Solver Start Iteration Loop Physical Assumptions Solve NewSolutionSolveUImage MetricDerivativeFEnd Iteration Loop
39 If ( Unew – Uold) < ε then Stop FEM SolverStart Iteration LoopKUnewUFKFU●=If ( Unew – Uold) < ε then Stop
40 KU=F in Code itk::FEMRegistrationFilter::IterativeSolve() itk::FEMSolver::AssembleK()FEMSolver ::AddSolution()FEMSolver::Solve()FEMSolver::AssembleF()callsFEMImageMetricLoad::Fe()
41 FEM-Based Registration Options Element TypeTrianglesQuadrilateralsHexahedraTetrahedra
45 Introduction to the ITK Finite Element Library ITK FEM LibraryIntroduction to the ITK Finite Element Library
46 ITK FEM Library Library for solving general FEM problems Object orientedC++ classes are used tospecify the geometry and behavior of the elementsapply external forces and boundary conditionssolve problem and post-process the results
47 ITK FEM LibraryApplicationsMechanical modelingImage registration
48 FEM Basics Mesh Loads Boundary conditions Nodes Elements Points in space where solutions are obtainedElementse.g., 2-D triangular elementsLoadse.g., gravity (body) loadBoundary conditionse.g., nodes fixed in space
49 ITK FEM Elements Core of the library is the Element class Code is in two functionally independent partsGeometry and PhysicsArbitrarily combined to create new elementsProblem domain is specified by a meshGeometryPhysics
50 Loads Classes that apply external forces (loads) to elements Various typesEasily extensible
51 Solvers Provide functionality to obtain and process the solution Different solution methods different solver classesStatic problemsTime dependent - dynamic problems
52 SolversUse linear system wrappers to link FEM classes to an external numeric libraryAny numeric library can be used to solve the systems of linear equations in FEM problemsVNL and ITPACK currently supported
53 Setting Up a FEM Problem Four-step processSelect element classesDiscretize problem domainSpecify boundary conditionsSpecify/Apply external loadsTwo optionsDirectly create proper objects in codeIndirectly read object definitions from a file
55 Parameter File : Part 1%% Parameters for the single- or multi-resolution techniques1 % Number of levels in the multi-resolution pyramid (1 = single-res)1 % Highest level to use in the pyramid1 1 % Scaling at lowest level for each image dimension8 % Number of pixels per element1.e5 % Elasticity (E)1.e4 % Density (RhoC)1. % Image energy scaling4 % NumberOfIntegrationPoints1 % WidthOfMetricRegion25 % MaximumIterations%% Parameters for the registration% Similarity metric (0=mean sq, 1=ncc, 2=pattern int, 3=MI)% Alpha% DescentDirection% DoLineSearch (0=never, 1=always, 2=if needed)1.e1 % TimeStep1.e-15 % Energy Reduction Factor
56 Parameter File : Part 2 % ---------------------------------- % Information about the image inputs% ImageDimension% Nx (image x dimension)% Ny (image y dimension)% Nz (image z dimension - not used if 2D)brain_slice1.mhd % ReferenceFileNamebrain_slice1warp.mhd % TargetFileName%% The actions below depend on the values of the flags preceding them.% For example, to write out the displacement fields, you have to set% the value of WriteDisplacementField to 1.% UseLandmarks?% LandmarkFileNamebrain_result % ResultsFileName (prefix only)% WriteDisplacementField?brain_disp % DisplacementsFileName (prefix only)% ReadMeshFile?brain_mesh.fem % MeshFileNameEND
Your consent to our cookies if you continue to use this website.