OpenMMLab Semantic Segmentation Toolbox and Benchmark.
 
 
 
Go to file
谢昕辰 857f854b61
[Enhancement] Remove batch inference assertion (#3210)
Thanks for your contribution and we appreciate it a lot. The following
instructions would make your pull request more healthy and more easily
get feedback. If you do not understand some items, don't worry, just
make the pull request and seek help from maintainers.

## Motivation

https://github.com/open-mmlab/mmsegmentation/issues/3181
https://github.com/open-mmlab/mmsegmentation/issues/2965
https://github.com/open-mmlab/mmsegmentation/issues/2644
https://github.com/open-mmlab/mmsegmentation/issues/1645
https://github.com/open-mmlab/mmsegmentation/issues/1444
https://github.com/open-mmlab/mmsegmentation/issues/1370
https://github.com/open-mmlab/mmsegmentation/issues/125

## Modification

Remove the assertion at data_preprocessor

## BC-breaking (Optional)

Does the modification introduce changes that break the
backward-compatibility of the downstream repos?
If so, please describe how it breaks the compatibility and how the
downstream projects should modify their code to keep compatibility with
this PR.

## Use cases (Optional)

If this PR introduces a new feature, it is better to list some use cases
here, and update the documentation.

## Checklist

1. Pre-commit or other linting tools are used to fix the potential lint
issues.
2. The modification is covered by complete unit tests. If not, please
add more unit test to ensure the correctness.
3. If the modification has potential influence on downstream projects,
this PR should be tested with downstream projects, like MMDet or
MMDet3D.
4. The documentation has been modified accordingly, like docstring or
example tutorials.
2023-07-20 09:45:04 +08:00
.circleci [CI] fix merge stage (#3138) 2023-06-26 17:10:42 +08:00
.dev_scripts [Fix] fix mim search error (#3194) 2023-07-13 16:26:08 +08:00
.github
configs [Fix] Update ddrnet readme (#3198) 2023-07-14 11:16:16 +08:00
demo [Fix] Fix visualizor (#3154) 2023-07-03 09:43:00 +08:00
docker Bump1.1 (#3140) 2023-07-04 11:11:30 +08:00
docs [Feature] add bdd100K datasets (#3158) 2023-07-14 10:09:16 +08:00
mmseg [Enhancement] Remove batch inference assertion (#3210) 2023-07-20 09:45:04 +08:00
projects [Feature] add bdd100K datasets (#3158) 2023-07-14 10:09:16 +08:00
requirements
resources
tests [Feature] add bdd100K datasets (#3158) 2023-07-14 10:09:16 +08:00
tools [Fix] Update ddrnet readme (#3198) 2023-07-14 11:16:16 +08:00
.gitignore
.owners.yml [Dev] update owners (#3143) 2023-06-28 16:15:54 +08:00
.pre-commit-config.yaml
.readthedocs.yml
CITATION.cff
LICENSE
MANIFEST.in [Feature] support mim download dataset (#3089) 2023-06-28 17:57:22 +08:00
README.md [Feature] add bdd100K datasets (#3158) 2023-07-14 10:09:16 +08:00
README_zh-CN.md use correct link addresses for datasets in README_zh-CN (#3174) 2023-07-14 12:43:45 +08:00
dataset-index.yml [Feature] support mim download dataset (#3089) 2023-06-28 17:57:22 +08:00
model-index.yml [Fix] fix mim search error (#3194) 2023-07-13 16:26:08 +08:00
requirements.txt
setup.cfg [Project] add Gamma Task3 dataset project in dev-1.x (#2695) 2023-06-20 15:28:46 +08:00
setup.py [Feature] support mim download dataset (#3089) 2023-06-28 17:57:22 +08:00

README.md

 
OpenMMLab website HOT      OpenMMLab platform TRY IT OUT
 

PyPI - Python Version PyPI docs badge codecov license issue resolution open issues

Documentation: https://mmsegmentation.readthedocs.io/en/latest/

English | 简体中文

Introduction

MMSegmentation is an open source semantic segmentation toolbox based on PyTorch. It is a part of the OpenMMLab project.

The main branch works with PyTorch 1.6+.

🎉 Introducing MMSegmentation v1.0.0 🎉

We are thrilled to announce the official release of MMSegmentation's latest version! For this new release, the main branch serves as the primary branch, while the development branch is dev-1.x. The stable branch for the previous release remains as the 0.x branch. Please note that the master branch will only be maintained for a limited time before being removed. We encourage you to be mindful of branch selection and updates during use. Thank you for your unwavering support and enthusiasm, and let's work together to make MMSegmentation even more robust and powerful! 💪

MMSegmentation v1.x brings remarkable improvements over the 0.x release, offering a more flexible and feature-packed experience. To utilize the new features in v1.x, we kindly invite you to consult our detailed 📚 migration guide, which will help you seamlessly transition your projects. Your support is invaluable, and we eagerly await your feedback!

demo image

Major features

  • Unified Benchmark

    We provide a unified benchmark toolbox for various semantic segmentation methods.

  • Modular Design

    We decompose the semantic segmentation framework into different components and one can easily construct a customized semantic segmentation framework by combining different modules.

  • Support of multiple methods out of box

    The toolbox directly supports popular and contemporary semantic segmentation frameworks, e.g. PSPNet, DeepLabV3, PSANet, DeepLabV3+, etc.

  • High efficiency

    The training speed is faster than or comparable to other codebases.

What's New

v1.1.0 was released on 07/04/2023. Please refer to changelog.md for details and release history.

  • Support 24 medical image datasets in projects.
  • Add GDAL backend and support remote sensing datasets LEVIR-CD.
  • Support DDRNet.

Installation

Please refer to get_started.md for installation and dataset_prepare.md for dataset preparation.

Get Started

Please see Overview for the general introduction of MMSegmentation.

Please see user guides for the basic usage of MMSegmentation. There are also advanced tutorials for in-depth understanding of mmseg design and implementation .

A Colab tutorial is also provided. You may preview the notebook here or directly run on Colab.

To migrate from MMSegmentation 0.x, please refer to migration.

Tutorial

Get Started
MMSeg Basic Tutorial
MMSeg Detail Tutorial
MMSeg Development Tutorial

Benchmark and model zoo

Results and models are available in the model zoo.

Supported backbones:
Supported methods:
Supported datasets:

Please refer to FAQ for frequently asked questions.

Projects

Here are some implementations of SOTA models and solutions built on MMSegmentation, which are supported and maintained by community users. These projects demonstrate the best practices based on MMSegmentation for research and product development. We welcome and appreciate all the contributions to OpenMMLab ecosystem.

Contributing

We appreciate all contributions to improve MMSegmentation. Please refer to CONTRIBUTING.md for the contributing guideline.

Acknowledgement

MMSegmentation is an open source project that welcome any contribution and feedback. We wish that the toolbox and benchmark could serve the growing research community by providing a flexible as well as standardized toolkit to reimplement existing methods and develop their own new semantic segmentation methods.

Citation

If you find this project useful in your research, please consider cite:

@misc{mmseg2020,
    title={{MMSegmentation}: OpenMMLab Semantic Segmentation Toolbox and Benchmark},
    author={MMSegmentation Contributors},
    howpublished = {\url{https://github.com/open-mmlab/mmsegmentation}},
    year={2020}
}

License

This project is released under the Apache 2.0 license.

OpenMMLab Family

  • MMEngine: OpenMMLab foundational library for training deep learning models.
  • MMCV: OpenMMLab foundational library for computer vision.
  • MMPreTrain: OpenMMLab pre-training toolbox and benchmark.
  • MMagic: OpenMMLab Advanced, Generative and Intelligent Creation toolbox.
  • MMDetection: OpenMMLab detection toolbox and benchmark.
  • MMYOLO: OpenMMLab YOLO series toolbox and benchmark.
  • MMDetection3D: OpenMMLab's next-generation platform for general 3D object detection.
  • MMRotate: OpenMMLab rotated object detection toolbox and benchmark.
  • MMTracking: OpenMMLab video perception toolbox and benchmark.
  • MMSegmentation: OpenMMLab semantic segmentation toolbox and benchmark.
  • MMOCR: OpenMMLab text detection, recognition, and understanding toolbox.
  • MMPose: OpenMMLab pose estimation toolbox and benchmark.
  • MMHuman3D: OpenMMLab 3D human parametric model toolbox and benchmark.
  • MMFewShot: OpenMMLab fewshot learning toolbox and benchmark.
  • MMAction2: OpenMMLab's next-generation action understanding toolbox and benchmark.
  • MMFlow: OpenMMLab optical flow toolbox and benchmark.
  • MMDeploy: OpenMMLab Model Deployment Framework.
  • MMRazor: OpenMMLab model compression toolbox and benchmark.
  • MIM: MIM installs OpenMMLab packages.
  • Playground: A central hub for gathering and showcasing amazing projects built upon OpenMMLab.