Skip to main content

License MIT PyPI Python Version napari hub

🫀 myopari

myopari: An Open-Source Edge AI Framework for Automated Quantitative Cardiac MRI Analysis.

💓 Introduction

myopari is a napari plugin for cardiac MRI segmentation and quantitative report generation. It brings ONNX-based AI inference to edge devices through an interactive interface that works with both 2D images and 3D volumes.

✨ Main features

  • 🧠 Built-in TIRAMISU_ACDC and TIRAMISU_EMIDEC segmentation models
  • 🖥️ Local, edge-friendly ONNX inference
  • 🫀 Optional myocardium-only segmentation
  • 📊 Per-class volume measurements and myocardium mass estimates
  • 📄 Markdown report generation with optional patient information
  • 🤖 Optional LLM-assisted report rewriting with llama-cpp-python

🎯 Model segmentation outputs

The output label groups for each model are defined as below:

Model Segmentation output Label value(s)
TIRAMISU_ACDC Right ventricle 1
TIRAMISU_ACDC Myocardium 2
TIRAMISU_ACDC Left ventricle 3
TIRAMISU_EMIDEC Cavity 1
TIRAMISU_EMIDEC Myocardium 2, 3, 4
TIRAMISU_EMIDEC Infarction 3, 4
TIRAMISU_EMIDEC No-reflow 4

Some EMIDEC groups intentionally overlap: infarction and no-reflow are included in the broader myocardium group for quantitative reporting.

🚀 Usage

  1. Launch napari.
  2. Load a cardiac MRI image or volume.
  3. Open Plugins → myopari → myopari.
  4. Click Select image layer and choose the image to analyze.
  5. Select the edge device and segmentation model.
  6. Optionally enable Myocardium only.
  7. Click Segment. The result appears as a new labels layer named segmentation_<input_layer_name>_<count>.

📝 Create a report

After segmentation:

  1. Optionally click Choose patient info files and select .cfg, .txt, or .md files.
  2. Optionally enable Use LLM for report.
  3. Click Create report.
  4. Click Save report to .md to export the result.

The report includes per-label volumes in mL and an estimated myocardium mass. If a logo is available in Resources, it is embedded in the report and copied beside the saved Markdown file.

⌨️ Installation Guide (Command Line)

The commands below create a dedicated Conda environment, install napari, automatically select the appropriate CPU or CUDA wheel for llama-cpp-python, and install myopari:

conda create -y -n myopari python=3.13
conda activate myopari
pip install "napari[all]==0.7.1"

# Check your CUDA version. If nvidia-smi is unavailable, use the CPU command.
# CPU:
pip install llama-cpp-python \
    --extra-index-url https://abetlen.github.io/llama-cpp-python/whl/cpu
# CUDA (replace cu124 with your CUDA wheel tag, for example cu118 or cu121):
pip install llama-cpp-python \
    --extra-index-url https://abetlen.github.io/llama-cpp-python/whl/cu132
pip install myopari

napari

After napari opens, select Plugins → myopari → myopari.

🧩 Installation Guide (No Code — Highly Recommended)

This is the easiest installation method; no terminal or programming experience is required. 🎉

  1. Download and install the official napari bundled app:
  2. Before installing myopari, install llama-cpp-python using the installer for your operating system:
  3. Open napari after the llama-cpp-python installation finishes.
  4. Go to Plugins → Install/Uninstall Plugins.
  5. Search for myopari.
  6. Click Install and restart napari when installation finishes.
  7. Open the plugin from Plugins → myopari → myopari. ✅

The plugin is also listed on the napari hub.

🛠️ Troubleshooting

  • Segmentation runtime/provider issues: Check whether onnxruntime or onnxruntime-gpu is installed. For GPU inference, ensure that the CUDA and driver versions match the installed ONNX Runtime build.
  • LLM report generation fails: Install llama-cpp-python in napari's environment and ensure internet access is available for the first model download. Disable Use LLM for report to continue with standard report generation.
  • Plugin is missing after installation: Restart napari and check Plugins → Install/Uninstall Plugins to confirm that myopari is installed and enabled.

📜 License

myopari is open-source software licensed under the MIT License.

Download files

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

Source Distribution

myopari-0.1.4.tar.gz (10.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

myopari-0.1.4-py3-none-any.whl (10.4 MB view details)

Uploaded Python 3

File details

Details for the file myopari-0.1.4.tar.gz.

File metadata

  • Download URL: myopari-0.1.4.tar.gz
  • Upload date:
  • Size: 10.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.13

File hashes

Hashes for myopari-0.1.4.tar.gz
Algorithm Hash digest
SHA256 37e0f561cd9a9018fd1c0c7cc9714c71407d5f96b97d6b730e9aa1b0253d87b1
MD5 49060c476307393af2029a03ed2e6d32
BLAKE2b-256 32d88ac7782113fc1616ed8d546087c6a3acb5ed1f67272a3e9a2c683f604a2c

See more details on using hashes here.

File details

Details for the file myopari-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: myopari-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 10.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.13

File hashes

Hashes for myopari-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 4cd5b7cd21b4bb5bd619d072d65ed72f2c3feb1065248fb906a07e60c8bae8ff
MD5 6413800b1581303f3a937a14b0520d81
BLAKE2b-256 fcdbad4ca9de1f854e222557ce674ded2a2b3744960a61f9789dc36f7241f518

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page