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.

Release files for myopari 0.1.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for myopari 0.1.6
File Size Uploaded
myopari-0.1.6.tar.gz 10.4 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for myopari 0.1.6
File Interpreter ABI Platform
myopari-0.1.6-py3-none-any.whl Python 3 none any Details

Total release size: 20.9 MB

Release files / myopari-0.1.6.tar.gz

Download URL myopari-0.1.6.tar.gz
Size 10.4 MB
Tags Source
SHA-256 checksum
How to use checksums
befc676785cdd2f12c2f816de17c1d0436d8df02f7da4b17941652a3e3ae93a7
BLAKE2b-256 checksum
How to use checksums
937b5ee917fbffd61046a5cc15eb0018aba6940e0e8506eb0c2d87defdd2080a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.13

Release files / myopari-0.1.6-py3-none-any.whl

Download URL myopari-0.1.6-py3-none-any.whl
Size 10.4 MB
Tags Python 3
SHA-256 checksum
How to use checksums
65c0067dadfecb4372411b409a4e9d1a901f16aefa53375df0fcaea423e3e393
BLAKE2b-256 checksum
How to use checksums
4ceed7644b52887fc83817c34291725c5e28d28412e8b6881541d1b7ad7fb33e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.13

Release history Release notifications | RSS feed

This release

0.1.6 This release

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page