Skip to content

Easy-to-use image segmentation library with awesome pre-trained model zoo, supporting wide-range of practical tasks in Semantic Segmentation, Interactive Segmentation, Panoptic Segmentation, Image Matting, 3D Segmentation, etc.

License

Notifications You must be signed in to change notification settings

PaddlePaddle/PaddleSeg

Repository files navigation

简体中文 | English

飞桨高性能图像分割开发套件,端到端完成从训练到部署的全流程图像分割应用。

License Version python version support os stars

最新动态

  • 🔥[2024-11-05] 添加语义分割领域低代码全流程开发能力:
    • 飞桨低代码开发工具PaddleX,依托于PaddleSeg的先进技术,支持了图像分割领域的低代码全流程开发能力:

      • 🎨 模型丰富一键调用:将通用语义分割和图像异常检测涉及的19个模型整合为2条模型产线,通过极简的Python API一键调用,快速体验模型效果。此外,同一套API,也支持图像分类、目标检测、文本图像智能分析、通用OCR、时序预测等共计200+模型,形成20+单功能模块,方便开发者进行模型组合使用
      • 🚀 提高效率降低门槛:提供基于统一命令图形界面两种方式,实现模型简洁高效的使用、组合与定制。支持高性能部署、服务化部署和端侧部署等多种部署方式。此外,对于各种主流硬件如英伟达GPU、昆仑芯、昇腾、寒武纪和海光等,进行模型开发时,都可以无缝切换
    • 增加图像异常检测算法SFTPM

  • [2023-10-29] 🔥 PaddleSeg 2.9版本发布!详细发版信息请参考Release Note
    • 增加对多标签分割Multi-label segmentation,提供数据转换代码及结果可视化,实现对一系列语义分割模型的多标签分割支持。
    • 发布轻量视觉大模型MobileSAM,实现更快速的SAM推理。
    • 支持量化蒸馏训练压缩功能Quant Aware Distillation Training Compression,对PP-LiteSeg、PP-MobileSeg、OCRNet、SegFormer-B0增加量化训练压缩功能,提升推理速度。

简介

PaddleSeg是基于飞桨PaddlePaddle的端到端图像分割套件,内置45+模型算法140+预训练模型,支持配置化驱动API调用开发方式,打通数据标注、模型开发、训练、压缩、部署的全流程,提供语义分割、交互式分割、Matting、全景分割四大分割能力,助力算法在医疗、工业、遥感、娱乐等场景落地应用。

特性

  • 高精度:跟踪学术界的前沿分割技术,结合高精度训练的骨干网络,提供45+主流分割网络、150+的高质量预训练模型,效果优于其他开源实现。

  • 高性能:使用多进程异步I/O、多卡并行训练、评估等加速策略,结合飞桨核心框架的显存优化功能,大幅度减少分割模型的训练开销,让开发者更低成本、更高效地完成图像分割训练。

  • 模块化:源于模块化设计思想,解耦数据准备、分割模型、骨干网络、损失函数等不同组件,开发者可以基于实际应用场景出发,组装多样化的配置,满足不同性能和精度的要求。

  • 全流程:打通数据标注、模型开发、模型训练、模型压缩、模型部署全流程,经过业务落地的验证,让开发者完成一站式开发工作。

产品矩阵

模型 组件 特色案例
骨干网络
损失函数
评估指标
  • mIoU
  • Accuracy
  • Kappa
  • Dice
  • AUC_ROC
支持数据集
数据增强
  • Flipping
  • Resize
  • ResizeByLong
  • ResizeByShort
  • LimitLong
  • ResizeRangeScaling
  • ResizeStepScaling
  • Normalize
  • Padding
  • PaddingByAspectRatio
  • RandomPaddingCrop
  • RandomCenterCrop
  • ScalePadding
  • RandomNoise
  • RandomBlur
  • RandomRotation
  • RandomScaleAspect
  • RandomDistort
  • RandomAffine
分割一切模型
模型选型工具
人像分割模型
3D医疗分割模型
Cityscapes打榜模型
CVPR冠军模型
领域自适应

产业级分割模型库

高精度语义分割模型

高精度模型,分割mIoU高、推理算量大,适合部署在服务器端GPU和Jetson等设备。

模型名称 骨干网络 Cityscapes精度mIoU(%) V100 TRT推理速度(FPS) 配置文件
FCN HRNet_W18 78.97 24.43 yml
FCN HRNet_W48 80.70 10.16 yml
DeepLabV3 ResNet50_OS8 79.90 4.56 yml
DeepLabV3 ResNet101_OS8 80.85 3.2 yml
DeepLabV3 ResNet50_OS8 80.36 6.58 yml
DeepLabV3 ResNet101_OS8 81.10 3.94 yml
OCRNet 🌟 HRNet_w18 80.67 13.26 yml
OCRNet HRNet_w48 82.15 6.17 yml
CCNet ResNet101_OS8 80.95 3.24 yml

测试条件:

  • V100上测速条件:针对Nvidia GPU V100,使用PaddleInference预测库的Python API,开启TensorRT加速,数据类型是FP32,输入图像维度是1x3x1024x2048。
轻量级语义分割模型

轻量级模型,分割mIoU中等、推理算量中等,可以部署在服务器端GPU、服务器端X86 CPU和移动端ARM CPU。

模型名称 骨干网络 Cityscapes精度mIoU(%) V100 TRT推理速度(FPS) 骁龙855推理速度(FPS) 配置文件
PP-LiteSeg 🌟 STDC1 77.04 69.82 17.22 yml
PP-LiteSeg 🌟 STDC2 79.04 54.53 11.75 yml
BiSeNetV1 - 75.19 14.67 1.53 yml
BiSeNetV2 - 73.19 61.83 13.67 yml
STDCSeg STDC1 74.74 62.24 14.51 yml
STDCSeg STDC2 77.60 51.15 10.95 yml
DDRNet_23 - 79.85 42.64 7.68 yml
HarDNet - 79.03 30.3 5.44 yml
SFNet ResNet18_OS8 78.72 10.72 - yml

测试条件:

  • V100上测速条件:针对Nvidia GPU V100,使用PaddleInference预测库的Python API,开启TensorRT加速,数据类型是FP32,输入图像维度是1x3x1024x2048。
  • 骁龙855上测速条件:针对小米9手机,使用PaddleLite预测库的CPP API,ARMV8编译,单线程,输入图像维度是1x3x256x256。
超轻量级语义分割模型

超轻量级模型,分割mIoU一般、推理算量低,适合部署在服务器端X86 CPU和移动端ARM CPU。

模型名称 骨干网络 ADE20K精度mIoU(%) 骁龙855推理延时(ms) 参数量(M) 配置文件
TopFormer-Base TopTransformer-Base 38.28 480.6 5.13 config
PP-MobileSeg-Base StrideFormer-Base 41.57 265.5 5.62 config
TopFormer-Tiny TopTransformer-Tiny 32.46 490.3 1.41 config
PP-MobileSeg-Tiny StrideFormer-Tiny 36.39 215.3 1.61 config

测试条件:

  • 针对小米9手机,使用PaddleLite预测库的CPP API,ARMV8编译,单线程,输入图像维度是1x3x512x512。测试模型在带有最后一个argmax算子的条件下进行测试。
模型名称 骨干网络 Cityscapes精度mIoU(%) V100 TRT推理速度(FPS) 骁龙855推理速度(FPS) 配置文件
MobileSeg MobileNetV2 73.94 67.57 27.01 yml
MobileSeg 🌟 MobileNetV3 73.47 67.39 32.90 yml
MobileSeg Lite_HRNet_18 70.75 10.5 13.05 yml
MobileSeg ShuffleNetV2_x1_0 69.46 37.09 39.61 yml
MobileSeg GhostNet_x1_0 71.88 35.58 38.74 yml

测试条件:

  • V100上测速条件:针对Nvidia GPU V100,使用PaddleInference预测库的Python API,开启TensorRT加速,数据类型是FP32,输入图像维度是1x3x1024x2048。
  • 骁龙855上测速条件:针对小米9手机,使用PaddleLite预测库的CPP API,ARMV8编译,单线程,输入图像维度是1x3x256x256。

使用教程

入门教程

基础教程

进阶教程

欢迎贡献

特色能力

产业实践范例

更多范例项目可参考:『图像分割经典项目集』用PaddleSeg能做什么?

许可证书

本项目的发布受Apache 2.0 license许可认证。

社区贡献

  • 非常感谢jm12138贡献U2-Net模型。
  • 非常感谢zjhellofss(傅莘莘)贡献Attention U-Net模型,和Dice loss损失函数。
  • 非常感谢liuguoyu666贡献U-Net++模型。
  • 非常感谢yazheng0307 (刘正)贡献快速开始教程文档。
  • 非常感谢CuberrChen贡献STDC (rethink BiSeNet) PointRend,和 Detail Aggregate损失函数。
  • 非常感谢stuartchen1949贡献 SegNet。
  • 非常感谢justld(郎督)贡献 UPerNet, DDRNet, CCNet, ESPNetV2, DMNet, ENCNet, HRNet_W48_Contrast, BiSeNetV1, FastFCN, SECrossEntropyLoss 和PixelContrastCrossEntropyLoss。
  • 非常感谢Herman-Hu-saber(胡慧明)参与贡献 ESPNetV2。
  • 非常感谢zhangjin12138贡献数据增强方法 RandomCenterCrop。
  • 非常感谢simuler 贡献 ESPNetV1。
  • 非常感谢ETTR123(张恺) 贡献 ENet,PFPNNet。

学术引用

如果我们的项目在学术上帮助到你,请考虑以下引用:

@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}
}
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy