🫀 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_ACDCandTIRAMISU_EMIDECsegmentation 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
- Launch napari.
- Load a cardiac MRI image or volume.
- Open
Plugins → myopari → myopari. - Click Select image layer and choose the image to analyze.
- Select the edge device and segmentation model.
- Optionally enable Myocardium only.
- Click Segment. The result appears as a new labels layer named
segmentation_<input_layer_name>_<count>.
📝 Create a report
After segmentation:
- Optionally click Choose patient info files and select
.cfg,.txt, or.mdfiles. - Optionally enable Use LLM for report.
- Click Create report.
- 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. 🎉
- Download and install the official napari bundled app:
- Before installing myopari, install
llama-cpp-pythonusing the installer for your operating system:- 🪟 Windows: Download install_llama2napari_windows.bat, double-click it, and follow the prompts.
- 🐧 Linux: Download install_llama2napari_linux.sh, run it by bash, and follow the prompts.
- Open napari after the
llama-cpp-pythoninstallation finishes. - Go to
Plugins → Install/Uninstall Plugins. - Search for myopari.
- Click Install and restart napari when installation finishes.
- Open the plugin from
Plugins → myopari → myopari. ✅
The plugin is also listed on the napari hub.
🛠️ Troubleshooting
- Segmentation runtime/provider issues: Check whether
onnxruntimeoronnxruntime-gpuis installed. For GPU inference, ensure that the CUDA and driver versions match the installed ONNX Runtime build. - LLM report generation fails: Install
llama-cpp-pythonin 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 Pluginsto 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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
37e0f561cd9a9018fd1c0c7cc9714c71407d5f96b97d6b730e9aa1b0253d87b1
|
|
| MD5 |
49060c476307393af2029a03ed2e6d32
|
|
| BLAKE2b-256 |
32d88ac7782113fc1616ed8d546087c6a3acb5ed1f67272a3e9a2c683f604a2c
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4cd5b7cd21b4bb5bd619d072d65ed72f2c3feb1065248fb906a07e60c8bae8ff
|
|
| MD5 |
6413800b1581303f3a937a14b0520d81
|
|
| BLAKE2b-256 |
fcdbad4ca9de1f854e222557ce674ded2a2b3744960a61f9789dc36f7241f518
|