OpenMMLab Semantic Segmentation Toolbox and Benchmark.
From v1.1.0 to v1.2.0, we are delighted that MMSegmentation supports full-flow open-vocabulary semantic segmentation and monocular depth estimation tasks!
Open-vocabulary semantic segmentation: SAN and CAT-Seg:
Monocular depth estimation: VPD and AdaBins:
set_dataset_meta
(#3348)ann_file
from silently failing to load (#2966)We are excited to announce the release of MMSegmentation v1.0.0 as a part of the OpenMMLab 2.0 project! MMSegmentation v1.0.0 introduces an updated framework structure for the core package and a new section called "Projects". This section showcases a range of engaging and versatile applications built upon the MMSegmentation foundation.
In this latest release, we have significantly refactored the core package's code to make it clearer, more comprehensible, and disentangled. This has resulted in improved performance for several existing algorithms, ensuring that they now outperform their previous versions. Additionally, we have incorporated some cutting-edge algorithms, such as PIDNet and SegNeXt, to further enhance the capabilities of MMSegmentation and provide users with a more comprehensive and powerful toolkit. The new "Projects" section serves as an essential addition to MMSegmentation, created to foster innovation and collaboration among users.
In this release, we introduce the MMSegInferencer, a versatile API for inference that accommodates multiple input types. The API enables users to easily specify and customize semantic segmentation models, streamlining the process of performing semantic segmentation with MMSegmentation.
Usage:
python demo/image_demo_with_inferencer.py ${IMAGE} ${MODEL} --show --device ${DEVICE}
In addition to new features, MMSegmentation v1.0.0 delivers key optimizations for an enhanced user experience.
MMSegmentation v1.0.0 is now compatible with PyTorch 2.0, ensuring that users can leverage the latest features and performance improvements offered by the PyTorch 2.0 framework when using MMSegmentation. With the integration of inductor, users can expect faster model speeds. The table below shows several example models:
Model | Training Speed |
---|---|
pspnet_r50-d8 | 34.0% ⬆️ (0.3474 -> 0.2293) |
segformer_mit-b2 | 7.12% ⬆️ (0.1798 -> 0.1670) |
New features from v1.0.0rc6 to v1.0.0 include:
local-rank
in PyTorch 2.0 (#2812)>>> from mmseg.apis import MMSegInferencer
>>> # Initialize an inference
>>> inferencer = MMSegInferencer(model='deeplabv3plus_r18-d8_4xb2-80k_cityscapes-512x1024')
>>> # Inference
>>> inferencer('demo/demo.png', show=True)
>>> # Get all models in MMSegmentation
>>> models = MMSegInferencer.list_models('mmseg')
mmsegmentation/tools/
(#2649)CascadeEncoderDecoder
and update OCRNet and MobileNet v2 results (#2656)MMCV>=2.0.0rc4
(#2543)List[Tensor]
types (#2546)gt_edge_map
field to SegDataSample (#2466)reduce_zero_label
and applying label_map
(#2517)package.md
(#2518)img_shape
value assignment in RandomCrop (#2469)-1
to 255
(#2516)