Skip to main content

automesh

Project description

automesh

Automatic mesh generation

Introduction

The current Autotwin workflow has the following broad steps:

  1. Medical imaging
  2. Segmentation
  3. Mesh generation
  4. Simulation
  5. Injury risk assessment

As of 2024-06-24, the workflow has demonstrated automation, the ability to complete part of the workflow without human interaction, on over 100 patient medical image data sets for both the segmentation and mesh generation steps. The simulation and injury risk assessment steps, however, remain as future work.

Since inception of this project, the production of an open-source software work product has been a cornerstone philosophy and aspiration. One part of the mesh generation step currently uses a closed-source, proprietary software service, which presents three limitations: (1) the software is not open-source, so at-large collaboration is unavailable, (2) void must be included as part of the mesh,[^void-inclusion] and (3) research-specific mesh experiments (e.g., Taubin smoothing, dual-space adaptivity) cannot be easily performed.

[^void-inclusion]: Void inclusion can unnecessarily bloat the model. For example, one recent proof-of-concept exercise using the IXI012-HH-1211-T1 data set showed that for a high-fidelity mesh created from segmented data, the void accounted for 2,389,783 elements (55%) of the total mesh 4,329,925 elements, with skull, cerebral spinal fluid, and brain, accounting for the remaining portions, 240,895 elements (6%), 448,654 elements (10%), and 1,250,593 elements (29%), respectively.

Elimination of the unnecessary void mesh is a top priority toward enhancement of mesh quality. Additional mesh enchancement topics include smoothing and adaptivity.

Enhanced mesh quality can improve solver convergence rates, decrease overhead (memory footprint), and provide better overall geometric fidelity to the underlying human anatomy.

Project Tasks

Task 1: Solver Automation

  • Mesh output decks. Mesh outputs are solver inputs. Mesh outputs must be automated to provide solver integration and automation for Sierra Solid Mechanics (SSM) in the Genesis/Exodus format, ABAQUS (.inp format), and Generic ASCII (e.g., .vtk), specific format to be determined.
  • Solver input decks. Current solver runs have hard-coded and manual hand-tailored input decks. This process must be rewritten and fully automated.

Task 2: Injury-Risk Automation

  • Globalized measures. Current workflows (e.g., MPS, MPSR, 95th percentile cloud maps) will be rewritten to become standardized and flexible, enabling automation.
  • Localized measures. Current whole-brain visualization workflows will be formalized into repeatable and flexible software recipes, making manual “point-and-click” GUI steps unnecessary.

Task 3: Open-Source Mesh Generation

  • Open-source. Reproduce Sculpt mesh generation functionality as an open-source software component.

Task 4: Mesh Enhancements

  • Filtering. Process the mesh with high-frequency filtering (e.g., Taubin smoothing).
  • Adaptivity. Process the mesh to be adaptivity, refining in regions of interest and coarsening in regions where abundance of mesh resolution is unnecessary.

Reference: 2024-06-21-1218-EST-ONR-Statement-of-Work.pdf

Specific next steps

A minimum working example (MWE) of the letter F model (see https://github.com/autotwin/mesh/blob/main/doc/npy_to_mesh.md) will be used as a unit test through the following specific next steps:

  • Given:
    • Semantic segmentation (as a .spn file)
    • Configuration recipe (as a .yml file)
  • Create:
    • Rust command line application that outputs equivalent Sculpt outputs, without void as a mesh constituent, as
      • ABAQUS ascii mesh file (as a .inp file)
      • SSM-ready mesh file (as a .e file, Genesis/Exodus NetCDF binary format)
      • ascii neutral mesh file (as a file type that is currently to be determined)
  • Next steps:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

automesh-0.1.0-cp39-cp39-manylinux_2_28_x86_64.whl (259.3 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.28+ x86-64

File details

Details for the file automesh-0.1.0-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for automesh-0.1.0-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8bac1c0900797b25aa8c0639e3bb7d0e56b32107e65fce59f026964745aab83c
MD5 2fe8bc6af0705d0eac9cfaf2fc83b0d5
BLAKE2b-256 48dd9b20be0e4c0302325b805f4e0ec07aae42d6866c05102d15e7515aecb643

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page