MMSegmentation 是一个基于 PyTorch 的语义分割开源工具箱。它是 OpenMMLab 项目的一部分。
主分支代码目前支持 PyTorch 1.5 以上的版本。
Major features
-
统一的基准平台
我们将各种各样的语义分割算法集成到了一个统一的工具箱,进行基准测试。
-
模块化设计
MMSegmentation 将分割框架解耦成不同的模块组件,通过组合不同的模块组件,用户可以便捷地构建自定义的分割模型。
-
丰富的即插即用的算法和模型
MMSegmentation 支持了众多主流的和最新的检测算法,例如 PSPNet,DeepLabV3,PSANet,DeepLabV3+ 等.
-
速度快
训练速度比其他语义分割代码库更快或者相当。
最新版本 v0.30.0 在 2023.01.11 发布:
- 添加 projects 目录以及示例项目
- 支持高质量合成人脸数据集
如果想了解更多版本更新细节和历史信息,请阅读更新日志。
全新的 MMSegmentation v1.0.0rc3 版本已经在 2022.12.31 发布:
欢迎在 1.x branch 发现更多的新特性。欢迎 issue 和 PR。
请参考训练教程和测试教程学习 MMSegmentation 的基本使用。 我们也提供了一些进阶教程,内容覆盖了:
同时,我们提供了 Colab 教程。你可以在这里浏览教程,或者直接在 Colab 上运行。
测试结果和模型可以在模型库中找到。
已支持的骨干网络:
- ResNet (CVPR'2016)
- ResNeXt (CVPR'2017)
- HRNet (CVPR'2019)
- ResNeSt (ArXiv'2020)
- MobileNetV2 (CVPR'2018)
- MobileNetV3 (ICCV'2019)
- Vision Transformer (ICLR'2021)
- Swin Transformer (ICCV'2021)
- Twins (NeurIPS'2021)
- BEiT (ICLR'2022)
- ConvNeXt (CVPR'2022)
- MAE (CVPR'2022)
- PoolFormer (CVPR'2022)
- SegNeXt (NeurIPS'2022)
已支持的算法:
- FCN (CVPR'2015/TPAMI'2017)
- ERFNet (T-ITS'2017)
- UNet (MICCAI'2016/Nat. Methods'2019)
- PSPNet (CVPR'2017)
- DeepLabV3 (ArXiv'2017)
- BiSeNetV1 (ECCV'2018)
- PSANet (ECCV'2018)
- DeepLabV3+ (CVPR'2018)
- UPerNet (ECCV'2018)
- ICNet (ECCV'2018)
- NonLocal Net (CVPR'2018)
- EncNet (CVPR'2018)
- Semantic FPN (CVPR'2019)
- DANet (CVPR'2019)
- APCNet (CVPR'2019)
- EMANet (ICCV'2019)
- CCNet (ICCV'2019)
- DMNet (ICCV'2019)
- ANN (ICCV'2019)
- GCNet (ICCVW'2019/TPAMI'2020)
- FastFCN (ArXiv'2019)
- Fast-SCNN (ArXiv'2019)
- ISANet (ArXiv'2019/IJCV'2021)
- OCRNet (ECCV'2020)
- DNLNet (ECCV'2020)
- PointRend (CVPR'2020)
- CGNet (TIP'2020)
- BiSeNetV2 (IJCV'2021)
- STDC (CVPR'2021)
- SETR (CVPR'2021)
- DPT (ArXiv'2021)
- Segmenter (ICCV'2021)
- SegFormer (NeurIPS'2021)
- K-Net (NeurIPS'2021)
已支持的数据集:
- Cityscapes
- PASCAL VOC
- ADE20K
- Pascal Context
- COCO-Stuff 10k
- COCO-Stuff 164k
- CHASE_DB1
- DRIVE
- HRF
- STARE
- Dark Zurich
- Nighttime Driving
- LoveDA
- Potsdam
- Vaihingen
- iSAID
- ImageNetS
如果遇到问题,请参考 常见问题解答。
我们感谢所有的贡献者为改进和提升 MMSegmentation 所作出的努力。请参考贡献指南来了解参与项目贡献的相关指引。
MMSegmentation 是一个由来自不同高校和企业的研发人员共同参与贡献的开源项目。我们感谢所有为项目提供算法复现和新功能支持的贡献者,以及提供宝贵反馈的用户。 我们希望这个工具箱和基准测试可以为社区提供灵活的代码工具,供用户复现已有算法并开发自己的新模型,从而不断为开源社区提供贡献。
如果你觉得本项目对你的研究工作有所帮助,请参考如下 bibtex 引用 MMSegmentation。
@misc{mmseg2020,
title={{MMSegmentation}: OpenMMLab Semantic Segmentation Toolbox and Benchmark},
author={MMSegmentation Contributors},
howpublished = {\url{https://github.com/open-mmlab/mmsegmentation}},
year={2020}
}
MMSegmentation
目前以 Apache 2.0 的许可证发布,但是其中有一部分功能并不是使用的 Apache2.0 许可证,我们在 许可证 中详细地列出了这些功能以及他们对应的许可证,如果您正在从事盈利性活动,请谨慎参考此文档。
- MMCV: OpenMMLab 计算机视觉基础库
- MIM: MIM 是 OpenMMlab 项目、算法、模型的统一入口
- MMClassification: OpenMMLab 图像分类工具箱
- MMDetection: OpenMMLab 目标检测工具箱
- MMDetection3D: OpenMMLab 新一代通用 3D 目标检测平台
- MMYOLO: OpenMMLab YOLO 系列工具箱和基准测试
- MMRotate: OpenMMLab 旋转框检测工具箱与测试基准
- MMSegmentation: OpenMMLab 语义分割工具箱
- MMOCR: OpenMMLab 全流程文字检测识别理解工具包
- MMPose: OpenMMLab 姿态估计工具箱
- MMHuman3D: OpenMMLab 人体参数化模型工具箱与测试基准
- MMSelfSup: OpenMMLab 自监督学习工具箱与测试基准
- MMRazor: OpenMMLab 模型压缩工具箱与测试基准
- MMFewShot: OpenMMLab 少样本学习工具箱与测试基准
- MMAction2: OpenMMLab 新一代视频理解工具箱
- MMTracking: OpenMMLab 一体化视频目标感知平台
- MMFlow: OpenMMLab 光流估计工具箱与测试基准
- MMEditing: OpenMMLab 图像视频编辑工具箱
- MMGeneration: OpenMMLab 图片视频生成模型工具箱
- MMDeploy: OpenMMLab 模型部署框架
扫描下方的二维码可关注 OpenMMLab 团队的 知乎官方账号,加入 OpenMMLab 团队 以及 MMSegmentation 的 QQ 群。
我们会在 OpenMMLab 社区为大家
- 📢 分享 AI 框架的前沿核心技术
- 💻 解读 PyTorch 常用模块源码
- 📰 发布 OpenMMLab 的相关新闻
- 🚀 介绍 OpenMMLab 开发的前沿算法
- 🏃 获取更高效的问题答疑和意见反馈
- 🔥 提供与各行各业开发者充分交流的平台
干货满满 📘,等你来撩 💗,OpenMMLab 社区期待您的加入 👬