Internal:PODM 4D

From crtc.cs.odu.edu
Jump to navigation Jump to search

Proposal

  1. Write a summary of PODM4D for SURA proposal:
    1. Extracted the content of PODM4D paper for SURA proposal✔
    2. Add algorithm details as it was done in 3D case✔

Documentation

  1. Read PODM4D paper (TODO: ½ Done)
  2. Write a proper README.md file✔
  3. Create Documentation of PODM 4D for Medical Image Computing and Computational Nuclear Femptography (TODO)

Explore Code

  1. Install all PODM4D libraries✔
  2. Compile PODM4D code✔
  3. Restructure repository of PODM4D based on Software engineering standards✔

Execution examples

  1. Heart4DChar (Panos’ data)✔
  2. Heart4D-0x (x ε [1,5]) (Panos’ data)✔
  3. Sphere4D-D1xD2xD3xD4 (Di ε [3, 100]) (Panos’ data)✔
  4. HyperCube-sideLength=l (l=5,10) (generated by SIDG)✔

Functionality

Apply past commits of PODM3D to PODM4D where applicable (TODO: ¾ Done):

  1. Add CLI11 command-line parser✔
  2. Add Image Segmentation ✔
  3. Decouple Args from PODM✔
  4. Create setArguments function✔
  5. Create setInputImage(ImageType::Pointer)✔
  6. Remove IOs from PODM✔
  7. Separate the interface, the IOs and the filters from PODM✔
  8. Set a warning if delta > min-spacing * min-dimension-size / 5✔
  9. Create threading pinning flag✔
  10. Create memory limit flag✔
  11. Remove unused defined flags✔
  12. Create a function that checks if the cpu is hyperthreaded✔
  13. Compute the amount of cores/blades/nodes in order to make them work for docker✔
  14. Fix the null pointer to cell of vertex issue if NO_GOOD_ANGLES flag is not defined (TODO)
  15. Add Linear Interpolation (TODO: Need to Implement MeshIO for 4D Meshes)
  16. Create setSizingFunction(image, minimumElementEdgeSize, elementWeightLimit) (TODO)

Adaptivity

Implementation of Sizing Function

  1. Create an extra Rule which will be a user-defined sizing-function that gets a tetrahedron when all rules are met (TODO)

Visualization

http://www.qhull.org

Production Stage

Set it up on Docker, as it was done in PODM3D (TODO)