2021-12-16 19:22:14 +08:00
< div align = "center" >
2021-12-23 20:14:35 +08:00
< img src = "resources/mmdeploy-logo.png" width = "450" / >
2022-01-13 10:19:21 +08:00
< div > < / div >
< div align = "center" >
< b > < font size = "5" > OpenMMLab website< / font > < / b >
< sup >
< a href = "https://openmmlab.com" >
< i > < font size = "4" > HOT< / font > < / i >
< / a >
< / sup >
< b > < font size = "5" > OpenMMLab platform< / font > < / b >
< sup >
< a href = "https://platform.openmmlab.com" >
< i > < font size = "4" > TRY IT OUT< / font > < / i >
< / a >
< / sup >
< / div >
< div > < / div >
2021-12-16 19:22:14 +08:00
< / div >
2021-12-27 11:20:26 +08:00
[](https://mmdeploy.readthedocs.io/en/latest/)
[](https://github.com/open-mmlab/mmdeploy/actions)
[](https://codecov.io/gh/open-mmlab/mmdeploy)
[](https://github.com/open-mmlab/mmdeploy/blob/master/LICENSE)
2022-06-07 18:05:51 +08:00
[](https://github.com/open-mmlab/mmdeploy/issues)
[](https://github.com/open-mmlab/mmdeploy/issues)
2021-12-27 11:20:26 +08:00
2021-06-11 13:26:05 +08:00
2021-10-09 14:10:42 +08:00
English | [简体中文 ](README_zh-CN.md )
2022-06-07 18:05:51 +08:00
## Introduction
MMDeploy is an open-source deep learning model deployment toolset. It is a part of the [OpenMMLab ](https://openmmlab.com/ ) project.
2021-10-09 14:10:42 +08:00
2021-12-16 19:22:14 +08:00
< div align = "center" >
2022-06-07 18:05:51 +08:00
< img src = "resources/introduction.png" >
2021-12-16 19:22:14 +08:00
< / div >
2021-12-23 16:18:16 +08:00
2022-06-07 18:05:51 +08:00
## Main features
2021-10-09 14:10:42 +08:00
2022-06-07 18:05:51 +08:00
### Fully support OpenMMLab models
2021-10-25 16:37:33 +08:00
2022-06-07 18:05:51 +08:00
The currently supported codebases and models are as follows, and more will be included in the future
- [mmcls ](docs/en/04-supported-codebases/mmcls.md )
- [mmdet ](docs/en/04-supported-codebases/mmdet.md )
- [mmseg ](docs/en/04-supported-codebases/mmseg.md )
- [mmedit ](docs/en/04-supported-codebases/mmedit.md )
- [mmocr ](docs/en/04-supported-codebases/mmocr.md )
- [mmpose ](docs/en/04-supported-codebases/mmpose.md )
- [mmdet3d ](docs/en/04-supported-codebases/mmdet3d.md )
- [mmrotate ](docs/en/04-supported-codebases/mmrotate.md )
2021-10-09 14:10:42 +08:00
2022-06-07 18:05:51 +08:00
### Multiple inference backends are available
2021-10-25 16:37:33 +08:00
2022-06-07 18:05:51 +08:00
Models can be exported and run in the following backends, and more will be compatible
2021-07-01 17:32:33 +08:00
2022-06-07 18:05:51 +08:00
| ONNX Runtime | TensorRT | ppl.nn | ncnn | OpenVINO | LibTorch | more |
| ------------ | -------- | ------ | ---- | -------- | -------- | ---------------------------------------------- |
| ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | [benchmark ](docs/en/03-benchmark/benchmark.md ) |
2021-10-25 16:37:33 +08:00
2021-07-01 17:32:33 +08:00
2021-07-10 16:16:11 +08:00
2022-06-07 18:05:51 +08:00
### Efficient and scalable C/C++ SDK Framework
2021-07-01 17:32:33 +08:00
2022-06-07 18:05:51 +08:00
All kinds of modules in the SDK can be extended, such as `Transform` for image processing, `Net` for Neural Network inference, `Module` for postprocessing and so on
2021-10-09 14:10:42 +08:00
2022-06-07 18:05:51 +08:00
## Get Started
2021-12-21 13:59:07 +08:00
2022-06-07 18:05:51 +08:00
Please read [getting_started.md ](docs/en/get_started.md ) for the basic usage of MMDeploy. We also provide tutoials about:
2021-12-23 11:25:45 +08:00
2022-06-07 18:05:51 +08:00
* [Build ](docs/en/01-how-to-build/build_from_source.md )
* [Build from Docker ](docs/en/01-how-to-build/build_from_docker.md )
* [Build for Linux ](docs/en/01-how-to-build/linux-x86_64.md )
* [Build for Win10 ](docs/en/01-how-to-build/windows.md )
* [Build for Android ](docs/en/01-how-to-build/android.md )
* [Build for Jetson ](docs/en/01-how-to-build/jetsons.md )
* User Guide
* [How to convert model ](docs/en/02-how-to-run/convert_model.md )
* [How to write config ](docs/en/02-how-to-run/write_config.md )
* [How to evaluate deployed models ](docs/en/02-how-to-run/how_to_evaluate_a_model.md )
* [How to measure performance of deployed models ](docs/en/02-how-to-run/how_to_measure_performance_of_models.md )
* Developer Guide
* [How to support new models ](docs/en/06-developer-guide/support_new_model.md )
* [How to support new backends ](docs/en/06-developer-guide/support_new_backend.md )
* [FAQ ](docs/en/faq.md )
* [Contributing ](.github/CONTRIBUTING.md )
2021-10-09 14:10:42 +08:00
2022-06-07 18:05:51 +08:00
## Benchmark and Model zoo
2021-07-01 17:32:33 +08:00
2022-06-07 18:05:51 +08:00
You can find the supported models from [here ](docs/en/03-benchmark/supported_models.md ) and their performance in the [benchmark ](docs/en/03-benchmark/benchmark.md ).
2021-12-23 11:25:45 +08:00
2021-12-16 19:22:14 +08:00
## Contributing
2021-07-01 17:32:33 +08:00
2022-06-07 18:05:51 +08:00
We appreciate all contributions to MMDeploy. Please refer to [CONTRIBUTING.md ](.github/CONTRIBUTING.md ) for the contributing guideline.
2021-08-10 17:04:58 +08:00
2021-12-16 19:22:14 +08:00
## Acknowledgement
2021-08-10 17:04:58 +08:00
2021-12-29 19:24:03 +08:00
We would like to sincerely thank the following teams for their contributions to [MMDeploy ](https://github.com/open-mmlab/mmdeploy ):
- [OpenPPL ](https://github.com/openppl-public )
- [OpenVINO ](https://github.com/openvinotoolkit/openvino )
2022-06-07 18:05:51 +08:00
- [ncnn ](https://github.com/Tencent/ncnn )
2021-07-01 17:32:33 +08:00
2021-10-27 15:03:40 +08:00
## Citation
2022-06-07 18:05:51 +08:00
If you find this project useful in your research, please consider citing:
2021-10-27 15:03:40 +08:00
```BibTeX
@misc {=mmdeploy,
2021-12-16 19:22:14 +08:00
title={OpenMMLab's Model Deployment Toolbox.},
2021-10-27 15:03:40 +08:00
author={MMDeploy Contributors},
howpublished = {\url{https://github.com/open-mmlab/mmdeploy}},
year={2021}
}
```
2022-06-07 18:05:51 +08:00
## License
This project is released under the [Apache 2.0 license ](LICENSE ).
2021-10-09 14:10:42 +08:00
## Projects in OpenMMLab
2021-07-01 17:32:33 +08:00
2021-10-09 14:10:42 +08:00
- [MMCV ](https://github.com/open-mmlab/mmcv ): OpenMMLab foundational library for computer vision.
2022-02-28 15:38:31 +08:00
- [MIM ](https://github.com/open-mmlab/mim ): MIM installs OpenMMLab packages.
2021-10-09 14:10:42 +08:00
- [MMClassification ](https://github.com/open-mmlab/mmclassification ): OpenMMLab image classification toolbox and benchmark.
- [MMDetection ](https://github.com/open-mmlab/mmdetection ): OpenMMLab detection toolbox and benchmark.
- [MMDetection3D ](https://github.com/open-mmlab/mmdetection3d ): OpenMMLab's next-generation platform for general 3D object detection.
2022-02-28 15:38:31 +08:00
- [MMRotate ](https://github.com/open-mmlab/mmrotate ): OpenMMLab rotated object detection toolbox and benchmark.
2021-10-09 14:10:42 +08:00
- [MMSegmentation ](https://github.com/open-mmlab/mmsegmentation ): OpenMMLab semantic segmentation toolbox and benchmark.
2022-02-28 15:38:31 +08:00
- [MMOCR ](https://github.com/open-mmlab/mmocr ): OpenMMLab text detection, recognition, and understanding toolbox.
- [MMPose ](https://github.com/open-mmlab/mmpose ): OpenMMLab pose estimation toolbox and benchmark.
- [MMHuman3D ](https://github.com/open-mmlab/mmhuman3d ): OpenMMLab 3D human parametric model toolbox and benchmark.
- [MMSelfSup ](https://github.com/open-mmlab/mmselfsup ): OpenMMLab self-supervised learning toolbox and benchmark.
- [MMRazor ](https://github.com/open-mmlab/mmrazor ): OpenMMLab model compression toolbox and benchmark.
- [MMFewShot ](https://github.com/open-mmlab/mmfewshot ): OpenMMLab fewshot learning toolbox and benchmark.
2021-10-09 14:10:42 +08:00
- [MMAction2 ](https://github.com/open-mmlab/mmaction2 ): OpenMMLab's next-generation action understanding toolbox and benchmark.
- [MMTracking ](https://github.com/open-mmlab/mmtracking ): OpenMMLab video perception toolbox and benchmark.
2022-02-28 15:38:31 +08:00
- [MMFlow ](https://github.com/open-mmlab/mmflow ): OpenMMLab optical flow toolbox and benchmark.
2021-10-09 14:10:42 +08:00
- [MMEditing ](https://github.com/open-mmlab/mmediting ): OpenMMLab image and video editing toolbox.
- [MMGeneration ](https://github.com/open-mmlab/mmgeneration ): OpenMMLab image and video generative models toolbox.
2022-02-28 15:38:31 +08:00
- [MMDeploy ](https://github.com/open-mmlab/mmdeploy ): OpenMMLab model deployment framework.