|
1
|
- Presenter: Joe Barfett
- R1 Diagnostic Radiology,
- University of Toronto
- Toronto, Ontario, Canada
- Supervisors: Dr. Dave Mikulis, Staff Neuroradiology, Toronto Western
Hospital
- Dr. Walter Kucharczyk, Staff Neuroradiology, Toronto General Hospital
|
|
2
|
|
|
3
|
- Introduction and Objectives
- Instructions on How to Reduce a Set of Cross Sectional Images into a
Cloud of Points
- Instructions on How To Turn a Cloud of Points into a Mesh for Finite
Element Analysis
- Some Applications
- Thoughts on the Future of Finite Element Modeling in Neuroradiology
|
|
4
|
|
|
5
|
|
|
6
|
- They are both optimization problems…
|
|
7
|
|
|
8
|
- Basic Answer: Geometry
- Engineering geometries are made of straight lines and perfect arcs. They
are easy to model.
- Biological Geometries are lobulated, complex and very difficult to
reproduce accurately, especially on a population scale
- What we need are new post-processing tools that allow for mesh
generation from cross-sectional imaging data
|
|
9
|
- Post Processing is already a very important part of neuroimaging
- It is a relatively short step to go from 3D volumetric reconstructions
to finite element meshes
- There are many very important clinical decisions made by size criteria
in neuroradiology where the role of Finite Element Modeling can be
studied
- The complications of procedures in neuroradiology can be severe, and so
optimizing the indications for our interventions is of great clinical
importance
|
|
10
|
|
|
11
|
|
|
12
|
- One must write or acquire software to perform the above processes
- I will demonstrate how mesh generation can be achieved with inexpensive
computer languages and provide source code for most scripts you will
need
- MATLAB is an inexpensive and very user friendly environment for image
processing and graphic display, a student edition is available for
academic use for approximately $100.00 USD
- Python is a completely free language that boasts similar functionality
and a free MatPlotLib library, providing most of the features of MATLAB
free of charge. I will provide examples using source code from both
languages.
|
|
13
|
- Inexpensive
- Easy to use
- Has a compiler
- Has high level image presentation libraries
|
|
14
|
|
|
15
|
|
|
16
|
|
|
17
|
|
|
18
|
|
|
19
|
|
|
20
|
|
|
21
|
|
|
22
|
- Edge detection is still actively researched
- There are many algorithms available
- The contour plot is easy to use and powerful
- ImageJ has it’s own native edge detection code ( Process à Find Edges)
- It is also easy to write your own edge detection code in Python
(http://alwaysmovefast.com/category/edge-detection/)
- There are also more sophisticated algorithms in Python libraries like
PyGPU (http://www.cs.lth.se/home/Calle_Lejdfors/pygpu/)
- For starters, the contour plot is a reasonable place to begin
|
|
23
|
- CAD models were made in the advanced graphics package SOLIDWORKS. A
student version is available ( www.solidworks.com ).
- The first step is to define a series of planes at the appropriate axial
slice spacing from the scan you are using.
- Then import points from the text file created by MATLAB using a
SOLIDWORKS plug-in such as the Points Importer from www.sycode.com (a
demo version is available)
|
|
24
|
|
|
25
|
|
|
26
|
|
|
27
|
|
|
28
|
|
|
29
|
|
|
30
|
|
|
31
|
|
|
32
|
|
|
33
|
- The most simple method of mesh generation is to directly convert CAD
data to a Finite Element Method Mesh
- Most commercial Finite Element Solvers have the capability of CAD to
mesh generation integrated into their software
- SOLIDWORKS also has a built in Finite Element Solver called COSMOS which
can be used for simple simulations
|
|
34
|
|
|
35
|
|
|
36
|
|
|
37
|
|
|
38
|
|
|
39
|
- Dr. David Mikulis, Staff Neuroradiology, Toronto Western Hospital,
- Dr. Walter Kucharczyk, Staff Neuroradiology, Toronto General Hospital
|