diff --git a/docs/images/MONAI_arch.png b/docs/images/MONAI_arch.png new file mode 100644 index 0000000000..10aa147a3d Binary files /dev/null and b/docs/images/MONAI_arch.png differ diff --git a/docs/images/MONAI_bundle_cloud.png b/docs/images/MONAI_bundle_cloud.png new file mode 100644 index 0000000000..cbd4a124b6 Binary files /dev/null and b/docs/images/MONAI_bundle_cloud.png differ diff --git a/docs/images/MONAI_clouds.png b/docs/images/MONAI_clouds.png new file mode 100644 index 0000000000..b513f67bff Binary files /dev/null and b/docs/images/MONAI_clouds.png differ diff --git a/docs/images/MONAI_map_cloud.png b/docs/images/MONAI_map_cloud.png new file mode 100644 index 0000000000..d50f8ba41e Binary files /dev/null and b/docs/images/MONAI_map_cloud.png differ diff --git a/docs/source/bundle_intro.rst b/docs/source/bundle_intro.rst index b4a185ba25..4507412610 100644 --- a/docs/source/bundle_intro.rst +++ b/docs/source/bundle_intro.rst @@ -3,6 +3,11 @@ Bundle ====== +MONAI Bundles are a specification and file structure based way of distributing trained MONAI models with associated +metadata, code, documentation, and other resources. These are meant to make it easier for you to distribute your model +in a format that explains what the model is for, how to use it, how to reproduce the science you've done with it, and +use it in other applications such as Label and Deploy. + .. toctree:: :maxdepth: 1 @@ -13,3 +18,26 @@ Bundle Detailed bundle examples and get started tutorial: https://github.com/Project-MONAI/tutorials/tree/main/bundle A collection of medical imaging models in the MONAI Bundle format: https://github.com/Project-MONAI/model-zoo + + +Bundle vs. MAPs +--------------- + +Bundles differ from MONAI Application Packages (MAPs) in that they focus on description, code definition, application, +usage. MAPs focus on deployment, containerisation, integration into existing clinical systems, and other application +areas relating to putting models into use. + +.. image:: ../images/MONAI_clouds.png + :alt: Bundle and MAP Concepts + :align: center + +As a user, bundles are networks and "programs" you would use directly for training, inference, reproducing results, +and other tasks. Bundles can be integrated into MONAI Label apps to perform segmentation tasks through user interfaces, +or into MAPs for deployment. They can be integrated into other container environments but this isn't their focus. A +bundle in general is a more lightweight concept with less infrastructure + +For all applications relating to containerisation, portability, and deployment, MAPs are what you're looking for. A MAP +is the contained environment for running an inference application directly or within an orchestration system. A bundle +alone doesn't have the structure suitable for this use, a MAP must be provided which uses a bundle as the inference object. +MAPs are also meant for inference only unlike bundles which should include training scripts. DICOM access is emphasised in +MAPs since they are meant for clinical deployment and so must interface with clinical databases. diff --git a/docs/source/index.rst b/docs/source/index.rst index 050ecf4dff..b6c8c22f98 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -20,6 +20,10 @@ Its ambitions are: - creating state-of-the-art, end-to-end training workflows for healthcare imaging; - providing researchers with an optimized and standardized way to create and evaluate deep learning models. +.. image:: ../images/MONAI_arch.png + :alt: MONAI Architecture + :align: center + Features -------- diff --git a/docs/source/mb_specification.rst b/docs/source/mb_specification.rst index f00a2bd103..cedafa0d23 100644 --- a/docs/source/mb_specification.rst +++ b/docs/source/mb_specification.rst @@ -153,7 +153,7 @@ An example JSON metadata file: "dtype": "float32", "value_range": [0, 1], "is_patch_data": false, - "channel_def": {0: "image"} + "channel_def": {"0": "image"} } }, "outputs":{ @@ -165,7 +165,7 @@ An example JSON metadata file: "dtype": "float32", "value_range": [], "is_patch_data": false, - "channel_def": {0: "background", 1: "spleen"} + "channel_def": {"0": "background", "1": "spleen"} } } }