Difference between revisions of "Mapped Hexahedral Meshing"

From NAMIC Wiki
Jump to: navigation, search
Line 32: Line 32:
 
***Mesh quality
 
***Mesh quality
  
−
* Meshing module is now built by default with Slicer3
 
 
'''To Do:'''
 
'''To Do:'''
−
* We should remove the need for the surface extraction when Slicer3 supports the loading of unstructured grids.
+
* Further evaluation on the phalanx bones of the hand
 +
* Convert the code into a Slicer3 execution model program
 +
* Develop additional Slicer3 execution model programs to support complete workflow
 +
**Assignment of material properties based in image signal intensity
 +
**Export to Abaqus format
 +
* Determine if there are ways to improve the speed of the algorithm
  
 
'''Key Investigators:'''
 
'''Key Investigators:'''
Line 43: Line 47:
 
*[http://www.ccad.uiowa.edu/mimx Musculoskeletal Imaging, Modelling and Experimentation (MIMX)]
 
*[http://www.ccad.uiowa.edu/mimx Musculoskeletal Imaging, Modelling and Experimentation (MIMX)]
  
−
'''Description:'''
+
'''Execution Model Program Description:'''
−
This program will convert an image into a hexahedral mesh using
+
* To be filled in once developed
−
the voxels as the hexahedral elements. This is is typically done
 
−
for only a portion of the image and thus a binary image from a
 
−
segmentation may be used to define the region for meshing.
 
−
Since these meshes may be fairly large the user is allowed
 
−
to downsample the image by an integer value. Currently this
 
−
must be odd.
 
  
 
This tool was developed as part of an NIH NA-MIC Collaboration Grant EB005973.
 
This tool was developed as part of an NIH NA-MIC Collaboration Grant EB005973.
  
 
'''Program Usage:'''
 
'''Program Usage:'''
−
VoxelMeshingModule
+
* To be filled in once developed
−
 
−
  --imagefilename      Input image File Name
 
−
  --maskfilename      Input mask File Name
 
−
  --abaqusfilename    Output Abaqus Filename
 
−
  --vtkfilename        Output mesh VTK filename
 
−
  --vtksurfacefilename Output mesh surface VTK filename (Hack required for slicer3)
 
−
  --resamplesize      The image resample downsampling factor - Must be odd
 
−
  --meshindexoffset    The mesh index offset for nodes and elements
 
−
  --poissonratio      Poisson Ratio for the mesh
 
−
  --abaqustitle        Abaqus title for generated mesh
 
−
  --numberofbins      The number of histogram bins in the mesh
 
−
  --histogamlowerbound The lower bound for the mesh histogram
 
−
  --histogamupperbound The upper bound for the mesh histogram
 
−
  --histogambinfile    Mesh material properties histogram bin filename
 
  
 
'''Figures:'''
 
'''Figures:'''

Revision as of 16:47, 6 January 2008

Home < Mapped Hexahedral Meshing

Objective:

  • Develop a tool for mapped meshing that will warp a template mesh onto a surface for a new subject
  • Determine the limits that the warping algorithm will succeed and fail
  • Apply these techniques to a sample of data to determine the reliability of the algorithm with respect to mesh quality

Progress:

  • Warped meshing framework has been developed using VTK and ITK using a finite element approach
    • VTK
      • Support the reading and writing of meshes (vtkUnstructuredGrid) and surfaces (vtkPolyData)
      • Distance measures between the deforming mesh and the subject surface
      • Initial registration - Iterative Closest Point or Procrustes
    • ITK
      • Finite element framework used to warped the template mesh onto the subject surface
  • Registration made hierarchical to speed up the registration process
    • Requires multiple template meshes to exist
    • This is readily supported using the interactive meshing tools by changing the average edge length
    • Subsequent meshes are initialized using a thin plate splines
  • Parameters allowed to vary at each level of the registration
    • Iterations
    • Young's Modulus
  • Convergence based on distance between the warped template and the subject surface
    • User specified convergence threshold in mm
    • Convergence can be based on average or maximum distance
  • Boundary conditions can be applied
    • Center of the mesh - Holds the eight nodes closest to the center of the mesh fixed
    • External - Applies boundary conditions to the mesh as they fall within a user specified tolerance of the subject surface
  • Initial testing done by warping a cube mesh onto a sphere
    • Evaluation:
      • Distance between warped mesh and subject surface
      • Mesh quality

To Do:

  • Further evaluation on the phalanx bones of the hand
  • Convert the code into a Slicer3 execution model program
  • Develop additional Slicer3 execution model programs to support complete workflow
    • Assignment of material properties based in image signal intensity
    • Export to Abaqus format
  • Determine if there are ways to improve the speed of the algorithm

Key Investigators:

  • Iowa: Nicole Grosland, Vincent Magnotta, Ritesh Bafna

Links:

Execution Model Program Description:

  • To be filled in once developed

This tool was developed as part of an NIH NA-MIC Collaboration Grant EB005973.

Program Usage:

  • To be filled in once developed

Figures:

Surface of proximal phalanx generated via Slicer3
Voxel mesh generated via Slicer3 execution Model
Slicer3 Voxel Mesh Module