<p align="center">
<img src="https://raw.githubusercontent.com/Project-MONAI/MONAI/dev/docs/images/MONAI-logo-color.png" width="50%" alt='project-monai'>
</p>
💡 If you want to know more about MONAI Deploy WG vision, overall structure, and guidelines, please read [MONAI Deploy](https://github.com/Project-MONAI/monai-deploy) main repo first.
# MONAI Deploy App SDK
[![License](https://img.shields.io/badge/license-Apache%202.0-green.svg)](LICENSE)
MONAI Deploy App SDK offers a framework and associated tools to design, develop and verify AI-driven applications in the healthcare imaging domain.
## Features
- Build medical imaging inference applications using a flexible, extensible & usable Pythonic API
- Easy management of inference applications via programmable Directed Acyclic Graphs (DAGs)
- Built-in operators to load DICOM data to be ingested in an inference app
- Out-of-the-box support for in-proc PyTorch based inference
- Easy incorporation of MONAI based pre and post transformations in the inference application
- Package inference application with a single command into a portable MONAI Application Package
- Locally run and debug your inference application using App Runner
## User Guide
User guide is available at [docs.monai.io](https://docs.monai.io/projects/monai-deploy-app-sdk/en/stable/).
## Installation
To install [the current release](https://pypi.org/project/monai-deploy-app-sdk/), you can simply run:
```bash
pip install monai-deploy-app-sdk # '--pre' to install a pre-release version.
```
Please also note the following system requirements:
- Ubuntu 22.04 on X86-64 is required, as this is the only X86 platform that the underlying Holoscan SDK has been tested to support as of now.
- [CUDA 12](https://developer.nvidia.com/cuda-12-0-0-download-archive) is required along with a supported NVIDIA GPU with at least 8GB of video RAM. If AI inference is not used in the example application and a GPU is not installed, at least [CUDA 12 runtime](https://pypi.org/project/nvidia-cuda-runtime-cu12/) is required, as this is one of the requirements of Holoscan SDK, in addition, the `LIB_LIBRARY_PATH` must be set to include the installed shared library, e.g. in a Python 3.8 env, ```export LD_LIBRARY_PATH=`pwd`/.venv/lib/python3.8/site-packages/nvidia/cuda_runtime/lib:$LD_LIBRARY_PATH```
## Getting Started
Getting started guide is available at [here](https://docs.monai.io/projects/monai-deploy-app-sdk/en/stable/getting_started/index.html).
```bash
pip install monai-deploy-app-sdk # '--pre' to install a pre-release version.
# Clone monai-deploy-app-sdk repository for accessing examples.
git clone https://github.com/Project-MONAI/monai-deploy-app-sdk.git
cd monai-deploy-app-sdk
# Install necessary dependencies for simple_imaging_app
pip install matplotlib Pillow scikit-image
# Execute the app locally
python examples/apps/simple_imaging_app/app.py -i examples/apps/simple_imaging_app/brain_mr_input.jpg -o output
# Package app (creating MAP Docker image), using `-l DEBUG` option to see progress.
monai-deploy package examples/apps/simple_imaging_app -c simple_imaging_app/app.yaml -t simple_app:latest --platform x64-workstation -l DEBUG
# Run the app with docker image and an input file locally
## Copy a test input file to 'input' folder
mkdir -p input && rm -rf input/*
cp examples/apps/simple_imaging_app/brain_mr_input.jpg input/
## Launch the app
monai-deploy run simple_app-x64-workstation-dgpu-linux-amd64:latest -i input -o output
```
### [Tutorials](https://docs.monai.io/projects/monai-deploy-app-sdk/en/stable/getting_started/tutorials/index.html)
Tutorials are provided to help getting started with the App SDK, to name but a few below.
#### [1) Creating a simple image processing app](https://docs.monai.io/projects/monai-deploy-app-sdk/en/stable/getting_started/tutorials/simple_app.html)
#### [2) Creating MedNIST Classifier app](https://docs.monai.io/projects/monai-deploy-app-sdk/en/stable/getting_started/tutorials/mednist_app.html)
YouTube Video (to be updated with the new version):
- [MedNIST Classification Example](https://www.youtube.com/watch?v=WwjilJFHuU4)
### [3) Creating a Segmentation app](https://docs.monai.io/projects/monai-deploy-app-sdk/en/stable/getting_started/tutorials/segmentation_app.html)
YouTube Video (to be updated with the new version):
- [Spleen Organ Segmentation - Jupyter Notebook Tutorial](https://www.youtube.com/watch?v=cqDVxzYt9lY)
- [Spleen Organ Segmentation - Deep Dive](https://www.youtube.com/watch?v=nivgfD4pwWE)
### [4) Creating a Segmentation app including visualization with Clara Viz](https://docs.monai.io/projects/monai-deploy-app-sdk/en/stable/getting_started/tutorials/segmentation_clara-viz_app.html)
### [5) Creating a Segmentation app consuming a MONAI Bundle](https://docs.monai.io/projects/monai-deploy-app-sdk/en/stable/getting_started/tutorials/monai_bundle_app.html)
### [Examples](https://docs.monai.io/projects/monai-deploy-app-sdk/en/stable/getting_started/examples.html)
<https://github.com/Project-MONAI/monai-deploy-app-sdk/tree/main/examples/apps> has example apps that you can see.
- ai_livertumor_seg_app
- ai_spleen_seg_app
- ai_unetr_seg_app
- dicom_series_to_image_app
- mednist_classifier_monaideploy
- simple_imaging_app
## Contributing
For guidance on making a contribution to MONAI Deploy App SDK, see the [contributing guidelines](https://github.com/Project-MONAI/monai-deploy/blob/main/CONTRIBUTING.md).
## Community
To participate, please join the MONAI Deploy App SDK weekly meetings on the [calendar](https://calendar.google.com/calendar/u/0/embed?src=c_954820qfk2pdbge9ofnj5pnt0g@group.calendar.google.com&ctz=America/New_York) and review the [meeting notes](https://docs.google.com/document/d/1viIh3vyP6_gZBKcnu7gb8fU0tm9aWBOcKCMGezIWNQw/edit#).
Join the conversation on Twitter [@ProjectMONAI](https://twitter.com/ProjectMONAI) or join our [Slack channel](https://forms.gle/QTxJq3hFictp31UM9).
Ask and answer questions over on [MONAI Deploy App SDK's GitHub Discussions tab](https://github.com/Project-MONAI/monai-deploy-app-sdk/discussions).
## Links
- Website: <https://monai.io>
- API documentation: <https://docs.monai.io/projects/monai-deploy-app-sdk>
- Code: <https://github.com/Project-MONAI/monai-deploy-app-sdk>
- Project tracker: <https://github.com/Project-MONAI/monai-deploy-app-sdk/projects>
- Issue tracker: <https://github.com/Project-MONAI/monai-deploy-app-sdk/issues>
- Wiki: <https://github.com/Project-MONAI/monai-deploy-app-sdk/wiki>
- Test status: <https://github.com/Project-MONAI/monai-deploy-app-sdk/actions>
- PyPI package: <https://pypi.org/project/monai-deploy-app-sdk>
Raw data
{
"_id": null,
"home_page": "https://monai.io/",
"name": "monai-deploy-app-sdk",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": null,
"author": "MONAI Consortium",
"author_email": "monai.contact@gmail.com",
"download_url": null,
"platform": "OS Independent",
"description": "<p align=\"center\">\n<img src=\"https://raw.githubusercontent.com/Project-MONAI/MONAI/dev/docs/images/MONAI-logo-color.png\" width=\"50%\" alt='project-monai'>\n</p>\n\n\ud83d\udca1 If you want to know more about MONAI Deploy WG vision, overall structure, and guidelines, please read [MONAI Deploy](https://github.com/Project-MONAI/monai-deploy) main repo first.\n\n# MONAI Deploy App SDK\n[![License](https://img.shields.io/badge/license-Apache%202.0-green.svg)](LICENSE)\n\n\nMONAI Deploy App SDK offers a framework and associated tools to design, develop and verify AI-driven applications in the healthcare imaging domain.\n\n## Features\n\n- Build medical imaging inference applications using a flexible, extensible & usable Pythonic API\n- Easy management of inference applications via programmable Directed Acyclic Graphs (DAGs)\n- Built-in operators to load DICOM data to be ingested in an inference app\n- Out-of-the-box support for in-proc PyTorch based inference\n- Easy incorporation of MONAI based pre and post transformations in the inference application\n- Package inference application with a single command into a portable MONAI Application Package\n- Locally run and debug your inference application using App Runner\n\n## User Guide\n\nUser guide is available at [docs.monai.io](https://docs.monai.io/projects/monai-deploy-app-sdk/en/stable/).\n\n## Installation\n\nTo install [the current release](https://pypi.org/project/monai-deploy-app-sdk/), you can simply run:\n\n```bash\npip install monai-deploy-app-sdk # '--pre' to install a pre-release version.\n```\n\nPlease also note the following system requirements:\n- Ubuntu 22.04 on X86-64 is required, as this is the only X86 platform that the underlying Holoscan SDK has been tested to support as of now.\n- [CUDA 12](https://developer.nvidia.com/cuda-12-0-0-download-archive) is required along with a supported NVIDIA GPU with at least 8GB of video RAM. If AI inference is not used in the example application and a GPU is not installed, at least [CUDA 12 runtime](https://pypi.org/project/nvidia-cuda-runtime-cu12/) is required, as this is one of the requirements of Holoscan SDK, in addition, the `LIB_LIBRARY_PATH` must be set to include the installed shared library, e.g. in a Python 3.8 env, ```export LD_LIBRARY_PATH=`pwd`/.venv/lib/python3.8/site-packages/nvidia/cuda_runtime/lib:$LD_LIBRARY_PATH```\n\n\n\n## Getting Started\n\nGetting started guide is available at [here](https://docs.monai.io/projects/monai-deploy-app-sdk/en/stable/getting_started/index.html).\n\n```bash\npip install monai-deploy-app-sdk # '--pre' to install a pre-release version.\n\n# Clone monai-deploy-app-sdk repository for accessing examples.\ngit clone https://github.com/Project-MONAI/monai-deploy-app-sdk.git\ncd monai-deploy-app-sdk\n\n# Install necessary dependencies for simple_imaging_app\npip install matplotlib Pillow scikit-image\n\n# Execute the app locally\npython examples/apps/simple_imaging_app/app.py -i examples/apps/simple_imaging_app/brain_mr_input.jpg -o output\n\n# Package app (creating MAP Docker image), using `-l DEBUG` option to see progress.\nmonai-deploy package examples/apps/simple_imaging_app -c simple_imaging_app/app.yaml -t simple_app:latest --platform x64-workstation -l DEBUG\n\n# Run the app with docker image and an input file locally\n## Copy a test input file to 'input' folder\nmkdir -p input && rm -rf input/*\ncp examples/apps/simple_imaging_app/brain_mr_input.jpg input/\n## Launch the app\nmonai-deploy run simple_app-x64-workstation-dgpu-linux-amd64:latest -i input -o output\n```\n\n### [Tutorials](https://docs.monai.io/projects/monai-deploy-app-sdk/en/stable/getting_started/tutorials/index.html)\n\nTutorials are provided to help getting started with the App SDK, to name but a few below.\n\n#### [1) Creating a simple image processing app](https://docs.monai.io/projects/monai-deploy-app-sdk/en/stable/getting_started/tutorials/simple_app.html)\n\n#### [2) Creating MedNIST Classifier app](https://docs.monai.io/projects/monai-deploy-app-sdk/en/stable/getting_started/tutorials/mednist_app.html)\n\nYouTube Video (to be updated with the new version):\n\n- [MedNIST Classification Example](https://www.youtube.com/watch?v=WwjilJFHuU4)\n\n### [3) Creating a Segmentation app](https://docs.monai.io/projects/monai-deploy-app-sdk/en/stable/getting_started/tutorials/segmentation_app.html)\n\nYouTube Video (to be updated with the new version):\n\n- [Spleen Organ Segmentation - Jupyter Notebook Tutorial](https://www.youtube.com/watch?v=cqDVxzYt9lY)\n- [Spleen Organ Segmentation - Deep Dive](https://www.youtube.com/watch?v=nivgfD4pwWE)\n\n### [4) Creating a Segmentation app including visualization with Clara Viz](https://docs.monai.io/projects/monai-deploy-app-sdk/en/stable/getting_started/tutorials/segmentation_clara-viz_app.html)\n\n### [5) Creating a Segmentation app consuming a MONAI Bundle](https://docs.monai.io/projects/monai-deploy-app-sdk/en/stable/getting_started/tutorials/monai_bundle_app.html)\n\n### [Examples](https://docs.monai.io/projects/monai-deploy-app-sdk/en/stable/getting_started/examples.html)\n\n<https://github.com/Project-MONAI/monai-deploy-app-sdk/tree/main/examples/apps> has example apps that you can see.\n\n- ai_livertumor_seg_app\n- ai_spleen_seg_app\n- ai_unetr_seg_app\n- dicom_series_to_image_app\n- mednist_classifier_monaideploy\n- simple_imaging_app\n\n## Contributing\n\nFor guidance on making a contribution to MONAI Deploy App SDK, see the [contributing guidelines](https://github.com/Project-MONAI/monai-deploy/blob/main/CONTRIBUTING.md).\n\n## Community\n\nTo participate, please join the MONAI Deploy App SDK weekly meetings on the [calendar](https://calendar.google.com/calendar/u/0/embed?src=c_954820qfk2pdbge9ofnj5pnt0g@group.calendar.google.com&ctz=America/New_York) and review the [meeting notes](https://docs.google.com/document/d/1viIh3vyP6_gZBKcnu7gb8fU0tm9aWBOcKCMGezIWNQw/edit#).\n\nJoin the conversation on Twitter [@ProjectMONAI](https://twitter.com/ProjectMONAI) or join our [Slack channel](https://forms.gle/QTxJq3hFictp31UM9).\n\nAsk and answer questions over on [MONAI Deploy App SDK's GitHub Discussions tab](https://github.com/Project-MONAI/monai-deploy-app-sdk/discussions).\n\n## Links\n\n- Website: <https://monai.io>\n- API documentation: <https://docs.monai.io/projects/monai-deploy-app-sdk>\n- Code: <https://github.com/Project-MONAI/monai-deploy-app-sdk>\n- Project tracker: <https://github.com/Project-MONAI/monai-deploy-app-sdk/projects>\n- Issue tracker: <https://github.com/Project-MONAI/monai-deploy-app-sdk/issues>\n- Wiki: <https://github.com/Project-MONAI/monai-deploy-app-sdk/wiki>\n- Test status: <https://github.com/Project-MONAI/monai-deploy-app-sdk/actions>\n- PyPI package: <https://pypi.org/project/monai-deploy-app-sdk>\n",
"bugtrack_url": null,
"license": "Apache License 2.0",
"summary": "A framework and associated tools to design, verify and analyze performance of MONAI apps",
"version": "2.0.0",
"project_urls": {
"Bug Tracker": "https://github.com/Project-MONAI/monai-deploy-app-sdk/issues",
"Documentation": "https://docs.monai.io/projects/monai-deploy-app-sdk/en/stable/",
"Homepage": "https://monai.io/",
"Source Code": "https://github.com/Project-MONAI/monai-deploy-app-sdk"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "fa5ae4bc7bad613a21b80d0d2835598af5ad82083cc076fec6f4d14c455d23eb",
"md5": "9b5e95de53b4ea0edf110f3ab808f32e",
"sha256": "6fa01372d1c43f93487f5bb3a1cae44ce6ea9dd6ec4f5284c4fc0a68c84035ca"
},
"downloads": -1,
"filename": "monai_deploy_app_sdk-2.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "9b5e95de53b4ea0edf110f3ab808f32e",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 132595,
"upload_time": "2024-04-24T23:50:49",
"upload_time_iso_8601": "2024-04-24T23:50:49.816506Z",
"url": "https://files.pythonhosted.org/packages/fa/5a/e4bc7bad613a21b80d0d2835598af5ad82083cc076fec6f4d14c455d23eb/monai_deploy_app_sdk-2.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-04-24 23:50:49",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Project-MONAI",
"github_project": "monai-deploy-app-sdk",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"requirements": [
{
"name": "holoscan",
"specs": [
[
"~=",
"2.0"
]
]
},
{
"name": "numpy",
"specs": [
[
">=",
"1.21.6"
]
]
},
{
"name": "colorama",
"specs": [
[
">=",
"0.4.1"
]
]
},
{
"name": "typeguard",
"specs": [
[
">=",
"3.0.0"
]
]
}
],
"lcname": "monai-deploy-app-sdk"
}