# PaddleSeg **Repository Path**: ianwong/PaddleSeg ## Basic Information - **Project Name**: PaddleSeg - **Description**: End-to-End Image Segmentation Suite Based on PaddlePaddle. (『飞桨』图像分割开发套件) - **Primary Language**: Python - **License**: Apache-2.0 - **Default Branch**: release/2.4 - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 99 - **Created**: 2022-03-28 - **Last Updated**: 2022-03-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 简体中文 | [English](README.md)

**飞桨高性能图像分割开发套件,端到端地完成从训练到部署的全流程图像分割应用。** [![Build Status](https://travis-ci.org/PaddlePaddle/PaddleSeg.svg?branch=release/2.1)](https://travis-ci.org/PaddlePaddle/PaddleSeg) [![License](https://img.shields.io/badge/license-Apache%202-blue.svg)](LICENSE) [![Version](https://img.shields.io/github/release/PaddlePaddle/PaddleSeg.svg)](https://github.com/PaddlePaddle/PaddleSeg/releases) ![python version](https://img.shields.io/badge/python-3.6+-orange.svg) ![support os](https://img.shields.io/badge/os-linux%2C%20win%2C%20mac-yellow.svg)
## 最新动态 * [2022-01-20] PaddleSeg 2.4版本发布!详细发版信息请参考[Release Note](https://github.com/PaddlePaddle/PaddleSeg/releases)。 * 发布智能标注工具[EISeg v0.4](./EISeg)版,采用静态图预测加速交互过程,并支持遥感和医疗领域智能标注。 * 发表人像分割论文[PP-HumanSeg](./contrib/PP-HumanSeg/paper.md),并开源连通性学习(SCL)方法和大规模视频会议数据集。 * 开源发丝级人像抠图Matting算法[PP-HumanMatting](./contrib/Matting),并提供安卓端教程。 * 新增9个经典分割模型, 包括Transformer系列模型[SegMenter](configs/segmenter),总模型数达到40个。 * 提供分割模型[性能对比图](docs/model_zoo_overview_cn.md),全面展示分割模型性能,方便模型选型。 * [2021-10-11] PaddleSeg 2.3版本发布交互式分割工具EISeg v0.3, 开源两种[Matting](./contrib/Matting)算法, 以及分割高阶功能[模型蒸馏](./slim/distill)和[模型量化](./slim/quant)方案。 * [2021-09-20] PaddleSeg团队发表交互式分割论文[EdgeFlow](https://arxiv.org/abs/2109.09406),已在多个数据集实现SOTA性能。 ## 简介 PaddleSeg是基于飞桨PaddlePaddle开发的端到端图像分割开发套件,涵盖了**高精度**和**轻量级**等不同方向的大量高质量分割模型。通过模块化的设计,提供了**配置化驱动**和**API调用**两种应用方式,帮助开发者更便捷地完成从训练到部署的全流程图像分割应用。 * #### 提供语义分割、交互式分割、全景分割、Matting四大图像分割能力。
--------------- * #### 广泛应用在自动驾驶、医疗、质检、巡检、娱乐等场景。
---------------- ## 特性 * **高精度模型**:基于半监督标签知识蒸馏方案([SSLD](https://paddleclas.readthedocs.io/zh_CN/latest/advanced_tutorials/distillation/distillation.html#ssld))训练得到高精度骨干网络,结合前沿的分割技术,提供了80+的高质量预训练模型,效果优于其他开源实现。 * **模块化设计**:支持40+主流 *分割网络* ,结合模块化设计的 *数据增强策略* 、*骨干网络*、*损失函数* 等不同组件,开发者可以基于实际应用场景出发,组装多样化的训练配置,满足不同性能和精度的要求。 * **高性能**:支持多进程异步I/O、多卡并行训练、评估等加速策略,结合飞桨核心框架的显存优化功能,可大幅度减少分割模型的训练开销,让开发者更低成本、更高效地完成图像分割训练。 ---------- ## 技术交流 * 如果你发现任何PaddleSeg存在的问题或者是建议, 欢迎通过[GitHub Issues](https://github.com/PaddlePaddle/PaddleSeg/issues)给我们提issues。 * 欢迎加入PaddleSeg QQ群
## 产品矩阵
分割模型 分割组件 实践案例
  • ANN
  • BiSeNetV2
  • DANet
  • DeepLabV3
  • DeepLabV3P
  • Fast-SCNN
  • HRNet-FCN
  • GCNet
  • GSCNN
  • HarDNet
  • OCRNet
  • PSPNet
  • U-Net
  • U2-Net
  • Att U-Net
  • U-Net++
  • U-Net3+
  • DecoupledSeg
  • EMANet
  • ISANet
  • DNLNet
  • SFNet
  • PP-HumanSeg
  • PortraitNet
  • STDC
  • GINet
  • PointRend
  • SegNet
  • ESPNetV2
  • HRNet-Contrast
  • DMNet
  • ESPNetV1
  • ENCNet
  • PFPNNet
  • FastFCN
  • BiSeNetV1
  • SETR
  • MLA Transformer
  • SegFormer
  • SegMenter
  • 骨干网络
    • HRNet
    • MobileNetV2
    • MobileNetV3
    • ResNet
    • STDCNet
    • XCeption
    • VIT
    • MixVIT
    • Swin Transformer
    损失函数
    • Cross Entropy
    • Binary CE
    • Bootstrapped CE
    • Point CE
    • OHEM CE
    • Pixel Contrast CE
    • Focal
    • Dice
    • RMI
    • KL
    • L1
    • Lovasz
    • MSE
    • Edge Attention
    • Relax Boundary
    • Connectivity
    评估指标
    • mIoU
    • Accuracy
    • Kappa
    • Dice
    • AUC_ROC
    支持数据集
    • Cityscapes
    • Pascal VOC
    • ADE20K
    • Pascal Context
    • COCO Stuff
    • SUPERVISELY
    • EG1800
    • CHASE_DB1
    • HRF
    • DRIVE
    • STARE
    • PP-HumanSeg14K
    数据增强
    • Flipping
    • Resize
    • ResizeByLong
    • ResizeByShort
    • LimitLong
    • ResizeRangeScaling
    • ResizeStepScaling
    • Normalize
    • Padding
    • PaddingByAspectRatio
    • RandomPaddingCrop
    • RandomCenterCrop
    • ScalePadding
    • RandomNoise
    • RandomBlur
    • RandomRotation
    • RandomScaleAspect
    • RandomDistort
    • RandomAffine
    交互式分割
    • EISeg
    • RITM
    • EdgeFlow
    图像抠图
    • DIM
    • MODNet
    • PP-HumanMatting
    人像分割
    • PP-HumanSeg
    Cityscapes打榜模型
    • HMSA
    全景分割
    • Panoptic-DeepLab
    CVPR冠军模型
    • MLA Transformer
    领域自适应
    • PixMatch
    ## 模型库总览 模型结构和骨干网络的代表模型在Cityscapes数据集mIoU和FLOPs对比图。请参见[Model Zoo Overview](./docs/model_zoo_overview_cn.md)了解更多模型信息以及对比图。
    ## 使用教程 * [安装](./docs/install_cn.md) * [全流程跑通PaddleSeg](./docs/whole_process_cn.md) * 准备数据集 * [标注数据的准备](./docs/data/marker/marker_cn.md) * [数据标注教程](./docs/data/transform/transform_cn.md) * [自定义数据集](./docs/data/custom/data_prepare_cn.md) * [模型训练](/docs/train/train_cn.md) * [模型评估](./docs/evaluation/evaluate/evaluate_cn.md) * [预测与可视化](./docs/predict/predict_cn.md) * 模型导出 * [导出预测模型](./docs/model_export_cn.md) * [导出ONNX模型](./docs/model_export_onnx_cn.md) * 模型部署 * [Paddle Inference部署(Python)](./docs/deployment/inference/python_inference_cn.md) * [Paddle Inference部署(C++)](./docs/deployment/inference/cpp_inference_cn.md) * [Paddle Lite部署](./docs/deployment/lite/lite_cn.md) * [Paddle Serving部署](./docs/deployment/serving/serving.md) * [Paddle JS部署](./docs/deployment/web/web_cn.md) * [推理Benchmark](./docs/deployment/inference/infer_benchmark_cn.md) * 模型压缩 * [量化](./docs/slim/quant/quant_cn.md) * [蒸馏](./docs/slim/distill/distill_cn.md) * [裁剪](./docs/slim/prune/prune_cn.md) * API使用教程 * [API文档说明](./docs/apis/README_CN.md) * [API应用案例](./docs/api_example_cn.md) * 重要模块说明 * [数据增强](./docs/module/data/data_cn.md) * [Loss说明](./docs/module/loss/losses_cn.md) * 二次开发教程 * [配置文件详解](./docs/design/use/use_cn.md) * [如何创造自己的模型](./docs/design/create/add_new_model_cn.md) * 模型贡献 * [提交PR说明](./docs/pr/pr/pr_cn.md) * [模型PR规范](./docs/pr/pr/style_cn.md) * [静态图版本](./docs/static/static_cn.md) * [技术交流](#技术交流) * [常见问题汇总](./docs/faq/faq/faq_cn.md) ## 实践案例 - [交互式分割](./EISeg) - [图像抠图](./contrib/Matting) - [人像分割](./contrib/PP-HumanSeg) - [Cityscapes打榜模型](./contrib/CityscapesSOTA) - [全景分割](./contrib/PanopticDeepLab) - [CVPR冠军模型](./contrib/AutoNUE) - [领域自适应](./contrib/DomainAdaptation) ## 第三方教程推荐 * [图像分割套件PaddleSeg全面解析系列](https://blog.csdn.net/txyugood/article/details/111029854) * [PaddleSeg学习笔记: 人像分割 HumanSeg](https://blog.csdn.net/libo1004/article/details/118809026) ## 许可证书 本项目的发布受Apache 2.0 license许可认证。 ## 社区贡献 - 非常感谢[jm12138](https://github.com/jm12138)贡献U2-Net模型。 - 非常感谢[zjhellofss](https://github.com/zjhellofss)(傅莘莘)贡献Attention U-Net模型,和Dice loss损失函数。 - 非常感谢[liuguoyu666](https://github.com/liguoyu666)贡献U-Net++模型。 - 非常感谢[yazheng0307](https://github.com/yazheng0307) (刘正)贡献快速开始教程文档。 - 非常感谢[CuberrChen](https://github.com/CuberrChen)贡献STDC (rethink BiSeNet) PointRend,和 Detail Aggregate损失函数。 - 非常感谢[stuartchen1949](https://github.com/stuartchen1949)贡献 SegNet。 - 非常感谢[justld](https://github.com/justld)(郎督)贡献 ESPNetV2, DMNet, ENCNet, HRNet_W48_Contrast, BiSeNetV1, FastFCN, SECrossEntropyLoss 和PixelContrastCrossEntropyLoss。 - 非常感谢[Herman-Hu-saber](https://github.com/Herman-Hu-saber)(胡慧明)参与贡献 ESPNetV2。 - 非常感谢[zhangjin12138](https://github.com/zhangjin12138)贡献数据增强方法 RandomCenterCrop。 - 非常感谢[simuler](https://github.com/simuler) 贡献 ESPNetV1。 - 非常感谢[ETTR123](https://github.com/ETTR123)(张恺) 贡献 PFPNNet。 ## 学术引用 如果我们的项目在学术上帮助到你,请考虑以下引用: ```latex @misc{liu2021paddleseg, title={PaddleSeg: A High-Efficient Development Toolkit for Image Segmentation}, author={Yi Liu and Lutao Chu and Guowei Chen and Zewu Wu and Zeyu Chen and Baohua Lai and Yuying Hao}, year={2021}, eprint={2101.06175}, archivePrefix={arXiv}, primaryClass={cs.CV} } @misc{paddleseg2019, title={PaddleSeg, End-to-end image segmentation kit based on PaddlePaddle}, author={PaddlePaddle Authors}, howpublished = {\url{https://github.com/PaddlePaddle/PaddleSeg}}, year={2019} } ```