Internal:PODM 3D: Difference between revisions
Jump to navigation
Jump to search
Spyridon97 (talk | contribs) No edit summary |
Spyridon97 (talk | contribs) No edit summary |
||
| Line 8: | Line 8: | ||
# Read [https://cepm.cs.odu.edu/pub/papers/journal_58.pdf Guaranteed Quality Tetrahedral Delaunay Meshing for Medical Images] paper (Sect. 9) | # Read [https://cepm.cs.odu.edu/pub/papers/journal_58.pdf Guaranteed Quality Tetrahedral Delaunay Meshing for Medical Images] paper (Sect. 9) | ||
=Adaptivity= | =Adaptivity= | ||
== | ==Implementation of Sizing Function== | ||
# Create UML diagrams to understand the code and the Meshing Procedure in general✔ | |||
# Create a list of functions that need to be modified to implement the extra Rule ✔ | |||
# Modify the created list ([https://docs.google.com/spreadsheets/d/13M6qLRtS3wMH5B8vXwcqA-gP2b9p8QGwbhrn68VXoj0/edit#gid=0 Extra Rule sizing Function list]) of functions✔ | |||
# Create a test sizing function to understand if modifications have been done correctly✔ | |||
## The test sizing function is <syntaxhighlight lang="c++" line='line'> | |||
bool checkSizingFunction(double coordinatesOfTetrahedron**) | bool checkSizingFunction(double coordinatesOfTetrahedron**) | ||
{ | { | ||
Revision as of 11:50, 28 October 2019
Explore Code
- Read PODM3D paper✔
- Install all PODM3D libraries✔
- Compile PODM3D code✔
- Restructure repository of PODM3D based on Software engineering standards✔
- Execute PODM3D✔
- Read Guaranteed Quality Tetrahedral Delaunay Meshing for Medical Images paper (Sect. 9)
Adaptivity
Implementation of Sizing Function
- Create UML diagrams to understand the code and the Meshing Procedure in general✔
- Create a list of functions that need to be modified to implement the extra Rule ✔
- Modify the created list (Extra Rule sizing Function list) of functions✔
- Create a test sizing function to understand if modifications have been done correctly✔
- The test sizing function is
bool checkSizingFunction(double coordinatesOfTetrahedron**) { double volume = volume(coordinatesOfTetrahedron); double* baryCenter = baryCenter(coordinatesOfTetrahedron) // if x axis <= 55 and volume of tetrahedron > 10 if (baryCenter[0] <= 55 && volume > 10) return true; else return false }
- The test sizing function is
Implement Adaptivity
- Implement Adaptivity in 3D inside sizingFunction using Christos Code:
- Implement Adaptivity in 3D✔
- Podm Result of Gagic Data image with volume grading on and δ=6, minimum Volume Size = 0.5, limit = 0.1
- Handle cases with negative weight (rescale them)
- Test Adaptivity with extra images (cases) from Gagik Gavalian
- Create Sizing Function pointer
- Create an animated Meshing Process✔
- Produce the meshes for the Meshing Process video and the January report✔
- Animated Process:




✔ - The 3rd Image is a gif, which is visible here: https://crtc.cs.odu.edu/images/8/89/AdaptiveMeshing.gif
- Identify places in the code where δ varies with regards to background values
- Test if multiple δ work using synthetically generated image data