End-to-end image segmentation kit based on PaddlePaddle.

Overview

English | 简体中文

PaddleSeg

License Version python version support os

PaddleSeg has released the new version including the following features:

  • Our team won the AutoNUE@CVPR 2021 challenge, where the technical report and source code are available.
  • We released an efficient interactive annotation tool for image segmentation, named EISeg.
  • We introduced Panoptic-DeepLab, which is a proposal-free algorithm for panoptic segmentation.
  • We provided an ultra-lightweight portrait segmentation solution for the mobile devices and even the web

PaddleSeg Introduction

Welcome to PaddleSeg! PaddleSeg is an end-to-end image segmentation development kit developed based on PaddlePaddle, which covers a large number of high-quality segmentation models in different directions such as high-performance and lightweight. With the help of modular design, we provide two application methods: Configuration Drive and API Calling. So one can conveniently complete the entire image segmentation application from training to deployment through configuration calls or API calls.

  • PaddleSeg provides four image segmentation capabilities: semantic segmentation, interactive segmentation, panoptic segmentation and Matting.


  • PaddleSeg is widely used in autonomous driving, medical, quality inspection, inspection, entertainment and other scenarios.


Core Features

  • High Performance Model: Based on the high-performance backbone trained by Baidu's self-developed semi-supervised label knowledge distillation scheme (SSLD), combined with the state of the art segmentation technology, we provides 50+ high-quality pre-training models, which are better than other open source implementations.

  • Modular Design: PaddleSeg support 15+ mainstream segmentation networks, developers can start based on actual application scenarios and assemble diversified training configurations combined with modular design of data enhancement strategies, backbone networks, loss functions and other different components to meet different performance and accuracy requirements.

  • High Efficiency: PaddleSeg provides multi-process asynchronous I/O, multi-card parallel training, evaluation and other acceleration strategies, combined with the memory optimization function of the PaddlePaddle, which can greatly reduce the training overhead of the segmentation model, all this allowing developers to lower cost and more efficiently train image segmentation model.

  • ❤️ You can go to Complete PaddleSeg Online Documentation Directory for more detailed documentation ❤️

Technical Communication

  • If you find any problems or have a suggestion with PaddleSeg, please send us issues through GitHub Issues.
  • Welcome to Join PaddleSeg QQ Group

Model Instraction

Model Zoo

Dataset

  • Cityscapes
  • Pascal VOC
  • ADE20K
  • Pascal Context
  • COCO stuff

Tutorials

Installation

step 1. Install PaddlePaddle

System Requirements:

  • PaddlePaddle >= 2.0.0
  • Python >= 3.6+

Highly recommend you install the GPU version of PaddlePaddle, due to large overhead of segmentation models, otherwise it could be out of memory while running the models. For more detailed installation tutorials, please refer to the official website of PaddlePaddle

step 2. Install PaddleSeg

Support to construct a customized segmentation framework with API Calling method for flexible development.

pip install paddleseg

step 3. Download PaddleSeg Repo

Support to complete the whole process segmentation application with Configuration Drive method, simple and fast.

git clone https://github.com/PaddlePaddle/PaddleSeg

step 4. Verify Installation

Run the following command. If you can train normally, you have installed it successfully.

python train.py --config configs/quick_start/bisenet_optic_disc_512x512_1k.yml

Practical Cases

Feedbacks and Contact

  • The dynamic version is still under development, if you find any issue or have an idea on new features, please don't hesitate to contact us via GitHub Issues.
  • PaddleSeg User Group (QQ): 1004738029 or 850378321 or 793114768

Acknowledgement

  • Thanks jm12138 for contributing U2-Net.
  • Thanks zjhellofss (Fu Shenshen) for contributing Attention U-Net, and Dice Loss.
  • Thanks liuguoyu666, geoyee for contributing U-Net++ and U-Net3+.
  • Thanks yazheng0307 (LIU Zheng) for contributing quick-start document.

Citation

If you find our project useful in your research, please consider citing:

@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}
}
Comments
  • HRNetV2-W18-SMALL-v2 Support in HumanSeg?

    HRNetV2-W18-SMALL-v2 Support in HumanSeg?

    1. HumanSeg

    I noticed that HumanSeg uses HRNetV2-W18-SMALL-v1.

    Is it possible to use HRNetV2-W18-SMALL-v2 in the HumanSeg branch? @LutaoChu

    1. My Requirement

    I am looking to implement lightweight semantic segmentation on a mobile device for highly accurate human cutouts (full body, not just portrait). I am looking for segmentation of images, rather than video. What would you recommend?

    1. PaddleSeg

    I noticed that the Model Zoo for PaddleSeg mentions HRNet_W18 / bn.

    Is this HRNetV2-W18-SMALL-v2?

    model | Data collection | download link | Output Stride | mutli-scale test | mIoU on val -- | -- | -- | -- | -- | -- HRNet_W18 / bn | Cityscapes | hrnet_w18_bn_cityscapes.tgz | 4 | false | 0.7936

    In another Issue https://github.com/PaddlePaddle/PaddleSeg/issues/245, there is discussion on HRNet_W18 but I am unable to get clarity about the exact version.

    opened by InternetMaster1 49
  • 在训练模型时报了这个错Error: Blocking queue is killed because the data reader raises an exception

    在训练模型时报了这个错Error: Blocking queue is killed because the data reader raises an exception

    Error: Blocking queue is killed because the data reader raises an exception [Hint: Expected killed_ != true, but received killed_:1 == true:1.] at (D:\1.8.1\paddle\paddle/fluid/operators/reader/blocking_queue.h:141) [operator < read > error] W0703 11:51:43.316778 16908 operator.cc:187] read raises an exception class std::future_error, no state F0703 11:51:43.316778 16908 exception_holder.h:37] std::exception caught, no state *** Check failure stack trace: *** 去群里问说吧batch sise调小一点,检查数据,但是我检查了还是这么报错,求求大佬帮帮忙

    opened by shuhan666 37
  • HumanSeg-Mobile on Android

    HumanSeg-Mobile on Android

    @wuyefeilin

    Is there a ready demo code to run "humanseg-mobile" on Android?

    1. I checked the Paddle-Lite repo, but I don't seem to find ready demo.
    2. I checked the Android Demo docs & the Paddle-Lite-Demo repo, but that is giving a demo based on Deeplab/MobileNet.

    I am looking for a demo or Android code for "humanseg-mobile" based on HRNet "humanseg_mobile_quant"

    opened by InternetMaster1 29
  • 使用Celeb人脸数据集做分割,按照文档处理数据和yaml文件,但是训练出现问题

    使用Celeb人脸数据集做分割,按照文档处理数据和yaml文件,但是训练出现问题

    1. 问题报告如下:

    ----------------------
    Error Message Summary:
    ----------------------
    Error: An error occurred here. There is no accurate error hint for this error yet. We are continuously in the process of increasing hint for this kind of error check. It would be helpful if you could inform us of how this conversion went by opening a github issue. And we will resolve it with high priority.
      - New issue link: https://github.com/PaddlePaddle/Paddle/issues/new
      - Recommended issue content: all error stack information: unspecified launch failure at (D:\1.7.1\paddle\paddle\fluid\operators\reader\buffered_reader.cc:115)
      [operator < read > error]
    

    2. 详细错误日志如下:

    
    --------------------------------------------
    C++ Call Stacks (More useful to developers):
    --------------------------------------------
    Windows not support stack backtrace yet.
    ------------------------------------------
    Python Call Stacks (More useful to users):
    ------------------------------------------
      File "C:\ProgramData\Anaconda3\envs\work\lib\site-packages\paddle\fluid\framework.py", line 2525, in append_op
        attrs=kwargs.get("attrs", None))
      File "C:\ProgramData\Anaconda3\envs\work\lib\site-packages\paddle\fluid\reader.py", line 733, in _init_non_iterable
        outputs={'Out': self._feed_list})
      File "C:\ProgramData\Anaconda3\envs\work\lib\site-packages\paddle\fluid\reader.py", line 646, in __init__
        self._init_non_iterable()
      File "C:\ProgramData\Anaconda3\envs\work\lib\site-packages\paddle\fluid\reader.py", line 280, in from_generator
        iterable, return_list)
      File "C:\ProgramData\Anaconda3\envs\work\lib\site-packages\paddle\fluid\reader.py", line 1046, in __init__
        feed_list, capacity, use_double_buffer, iterable, return_list)
      File "D:\work\脸部裁剪\paddleSeg\pdseg\models\model_builder.py", line 200, in build_model
        use_double_buffer=True)
      File "pdseg/train.py", line 256, in train
        train_prog, startup_prog, phase=ModelPhase.TRAIN)
      File "pdseg/train.py", line 505, in main
        train(cfg)
      File "pdseg/train.py", line 518, in <module>
        main(args)
    

    3. 错误描述如下:

    
    日志不停在终端出现(刷屏),不得已终止训练
    

    如果您能帮忙解决该问题,我将万分感谢!

    opened by Diuyon 28
  • An issue on implementation of SemanticConnectivityloss

    An issue on implementation of SemanticConnectivityloss

    Hi @LutaoChu and @dreamer121121 In the forward function of the SemanticConnectivityLoss implementation(https://github.com/PaddlePaddle/PaddleSeg/blob/release/2.4/paddleseg/models/losses/semantic_connectivity_loss.py), are the parameter logits the probabilities map or logit map without applying softmax? BTW: image There is an issue with the above function implementation. pred_conn has labels greater than pred_num_conn value. That's because pred_num_conn is limited as smaller than 10. image This results in an issue in the below line. pred_conn = F.one_hot(pred_conn.long(), pred_num_conn)

    How can we fix this issue?

    bug 
    opened by rose-jinyang 21
  • LaneNet:使用其他数据集出现错误

    LaneNet:使用其他数据集出现错误

    我使用官方的LaneNet车道线分割项目,但更换了自己的数据集,格式都按照官方项目数据集的格式整理好了,但报错:

    #Device count: 1
    batch_size_per_dev: 2
    W0924 18:20:06.613276 12848 device_context.cc:252] Please NOTE: device: 0, CUDA Capability: 75, Driver API Version: 10.2, Runtime API Version: 10.0
    W0924 18:20:06.621250 12848 device_context.cc:260] device: 0, cuDNN Version: 7.6.
    [SKIP] Pretrained weight ./pretrained_models/VGG16_pretrained/score_origin/weights doesn't exist
    [SKIP] Pretrained weight ./pretrained_models/VGG16_pretrained/deconv_1/weights doesn't exist
    [SKIP] Pretrained weight ./pretrained_models/VGG16_pretrained/score_1/weights doesn't exist
    [SKIP] Pretrained weight ./pretrained_models/VGG16_pretrained/deconv_2/weights doesn't exist
    [SKIP] Pretrained weight ./pretrained_models/VGG16_pretrained/score_2/weights doesn't exist
    [SKIP] Pretrained weight ./pretrained_models/VGG16_pretrained/deconv_final/weights doesn't exist
    [SKIP] Pretrained weight ./pretrained_models/VGG16_pretrained/score_final/weights doesn't exist
    [SKIP] Pretrained weight ./pretrained_models/VGG16_pretrained/weights doesn't exist
    2020-09-24 18:20:08,732-WARNING: ./pretrained_models/VGG16_pretrained.pdparams not found, try to load model file saved with [ save_params, save_persistables, save_vars ]
    There are 13/21 varaibles in ./pretrained_models/VGG16_pretrained are loaded.
    Use multi-thread reader
    W0924 18:20:08.925722 12848 build_strategy.cc:170] fusion_group is not enabled for Windows/MacOS now, and only effective when running with CUDA GPU.
    epoch=1 step=10 lr=0.00050 loss=242.3553 seg_loss=10.7224 emb_loss=231.6328 accuracy=0.383 fp=0.9665 fn=0.617 step/sec=5.359 | ETA 11:22:36
    W0924 18:20:11.018095 12848 operator.cc:187] cast raises an exception class thrust::system::system_error, parallel_for failed: invalid configuration argument
    F0924 18:20:11.019109 12848 exception_holder.h:37] std::exception caught, parallel_for failed: invalid configuration argument
    *** Check failure stack trace: ***
    

    这是什么原因呢?我在AIStudio上运行也是同样的错误

    opened by iceriver97 20
  •  [MedicalSeg] Add Unetr

    [MedicalSeg] Add Unetr

    添加unetr 在msd_brain 任务中mdice分数到71.8

    参考实现 https://github.com/tamasino52/UNETR/blob/main/unetr.py

    权重链接: https://pan.baidu.com/share/init?surl=VWB7CWftE0oagVSINGSY5w 提取码:kj6l log vdl:见于 https://github.com/sun222/PaddleSeg/tree/release/2.5/contrib/MedicalSeg 下的train.log 和vdlrecords.1653908268.log

    opened by sun222 17
  • RemoteSensing遥感影像分割,多波段train_demo.py报错

    RemoteSensing遥感影像分割,多波段train_demo.py报错

    您好,按照教程,将多波段转为npy格式保存好。同时配置好了数据文件格式。 因为输入有6个波段所以 训练时候 设置为--channel 6,然后运行train_demo.py 有如下报错:

    2020-06-19 23:58:38 [INFO] 40 samples in file data/dataset/train.txt 2020-06-19 23:58:38 [INFO] 30 samples in file data/dataset/val.txt W0619 23:58:39.167647 1220 device_context.cc:237] Please NOTE: device: 0, CUDA Capability: 70, Driver API Version: 10.1, Runtime API Version: 9.0 W0619 23:58:39.171162 1220 device_context.cc:245] device: 0, cuDNN Version: 7.3. 2020-06-19 23:58:40,660-INFO: Instantiated empty configuration. HDFS initialization failed, please check if .hdfscli,cfg exists. Exception in thread Thread-6: Traceback (most recent call last): File "/opt/conda/envs/python35-paddle120-env/lib/python3.7/threading.py", line 926, in _bootstrap_inner self.run() File "/opt/conda/envs/python35-paddle120-env/lib/python3.7/threading.py", line 870, in run self._target(*self._args, **self._kwargs) File "/home/aistudio/contrib/RemoteSensing/readers/base.py", line 85, in handle_worker r = mapper(sample[0], sample[1], sample[2]) File "/home/aistudio/contrib/RemoteSensing/transforms/transforms.py", line 68, in call outputs = op(im, im_info, label) File "/home/aistudio/contrib/RemoteSensing/transforms/transforms.py", line 488, in call im = normalize(im, self.min_val, self.max_val, mean, std) File "/home/aistudio/contrib/RemoteSensing/transforms/ops.py", line 25, in normalize im = (im.astype(np.float32, copy=False) - min_value) / range_value ValueError: operands could not be broadcast together with shapes (256,256,6) (3,)

    后来尝试选取3个波段,保存为npy格式,将--channel设置为3,重新读取数据,运行正确。说明我的数据文件格式是正确的。难道train_demo.py只能设定3波段输入?请问如何输入多波段呢?

    谢谢!

    opened by KuntaHu 17
  • PaddleSeg按照文档训练时,卡着不动,后面报错:raise ValueError(

    PaddleSeg按照文档训练时,卡着不动,后面报错:raise ValueError("Target {} is out of lower bound.".format( ValueError: Target -4864866653667428641 is out of lower bound.

    环境:Win10 64位,Python3.8.5,PaddlePaddle-gpu 2.3.3,PaddleSeg2.6,CUDA_10.1.105_418.96_win10,CUDNN 7.6.5.32 ——————————————————————————— 参考执行步骤:https://github.com/PaddlePaddle/PaddleSeg/blob/release/2.6/docs/quick_start_cn.md ——————————————————————————— 训练指令:python train.py --config configs/quick_start/pp_liteseg_optic_disc_512x512_1k.yml --save_interval 500 --do_eval --use_vdl --save_dir output ——————————————————————————— 输出信息: 2022-11-02 16:14:06 [INFO] ------------Environment Information------------- platform: Windows-10-10.0.19041-SP0 Python: 3.8.5 (tags/v3.8.5:580fbb0, Jul 20 2020, 15:57:54) [MSC v.1924 64 bit (AMD64)] Paddle compiled with cuda: True NVCC: Cuda compilation tools, release 10.1, V10.1.105 cudnn: 7.6 GPUs used: 1 CUDA_VISIBLE_DEVICES: None GPU: ['GPU 0: NVIDIA GeForce'] PaddleSeg: 2.6.0 PaddlePaddle: 2.3.2 OpenCV: 4.6.0

    2022-11-02 16:14:06 [INFO] ---------------Config Information--------------- batch_size: 4 iters: 1000 loss: coef:

    • 1
    • 1
    • 1 types:
    • ignore_index: 255 type: CrossEntropyLoss lr_scheduler: end_lr: 0 learning_rate: 0.01 power: 0.9 type: PolynomialDecay model: backbone: pretrained: https://bj.bcebos.com/paddleseg/dygraph/PP_STDCNet2.tar.gz type: STDC2 type: PPLiteSeg optimizer: momentum: 0.9 type: sgd weight_decay: 4.0e-05 train_dataset: dataset_root: data/optic_disc_seg mode: train num_classes: 2 train_path: data/optic_disc_seg/train_list.txt transforms:
    • max_scale_factor: 2.0 min_scale_factor: 0.5 scale_step_size: 0.25 type: ResizeStepScaling
    • crop_size:
      • 512
      • 512 type: RandomPaddingCrop
    • type: RandomHorizontalFlip
    • brightness_range: 0.5 contrast_range: 0.5 saturation_range: 0.5 type: RandomDistort
    • type: Normalize type: Dataset val_dataset: dataset_root: data/optic_disc_seg mode: val num_classes: 2 transforms:
    • type: Normalize type: Dataset val_path: data/optic_disc_seg/val_list.txt

    W1102 16:14:06.101971 8384 gpu_resources.cc:61] Please NOTE: device: 0, GPU Compute Capability: 8.6, Driver API Version: 11.6, Runtime API Version: 10.2 W1102 16:14:06.101971 8384 gpu_resources.cc:91] device: 0, cuDNN Version: 7.6. 2022-11-02 16:14:06 [INFO] Loading pretrained model from https://bj.bcebos.com/paddleseg/dygraph/PP_STDCNet2.tar.gz 2022-11-02 16:14:06 [INFO] There are 265/265 variables loaded into STDCNet. ——————————————————————————— output文件夹下生成log文件: vdlrecords.1667376846.log ——————————————————————————— 训练一直卡着不动,不清楚是什么原因?能否帮忙看看,谢谢!

    question 
    opened by stq054188 16
  • [General Issue]deploy/python/infer.py 推理修改后stdc模型出现报错

    [General Issue]deploy/python/infer.py 推理修改后stdc模型出现报错

    PaddleSeg版本:版本号2.2.0分支PaddleSeg release/2.4) PaddlePaddle版本:(如PaddlePaddle 2.2.0-gpu) 4. 操作系统信息:Linux Ubuntu18.04 5. Python版本号:python3.6 6. CUDA/cuDNN版本:cuda10.2,cudnn8.1 7. 使用depoly/python/infer.py 对训练cityscapes数据集导出的和stdc1-seg原模型和对网络模型修改后的stdc1-seg模型分别推理,都调用了trt精度都是fp16. 原模型可以正常推理,但是修改后的stdc模型调用trt进行推理时当把min_subgraph_size设置为3时报错: 3f75a87b53ffce980316ce70bfbe885 但把min_subgraph_size设置为20时可以推理,但是速度下降特别多。原模型186fps左右,改动后的模型只有27fps。

    另外我想请教一个问题,使用depoly/python/infer.py进行推理,和我自己按照以下方法对模型进行推理有什么区别吗?那种预测推理方法才能正确反应模型的推理速度。 自己手动写的预测模型推理时间代码:(还没跑通) 1a876a0bdc47d17bc28a68d38758677 b6e52ca1834d29fabd5bc25b4ae0594

    question 
    opened by huangwan-jiayi 15
  • 小白请问各位大佬,想要使用paddleseg训练一个实例分割模型,跑通全流程的那个案例可以运行,但是换成自己的数据就不行,是根据数据处理文档进行处理的数据,是配置文件需要修改什么吗?还有配置文件如何选择呢?

    小白请问各位大佬,想要使用paddleseg训练一个实例分割模型,跑通全流程的那个案例可以运行,但是换成自己的数据就不行,是根据数据处理文档进行处理的数据,是配置文件需要修改什么吗?还有配置文件如何选择呢?

    Thanks for your issue. To help us solve the issue better, please provide following information:

    1. PaddleSeg version: (please specify the branch as well,e.g. PaddleSeg release/2.3)
    2. PaddlePaddle version: (e.g. PaddlePaddle 2.1.0)
    3. Operation system: (e.g. Linux/Windows/MacOS)
    4. Python version: (e.g. Python3.6/7/8)
    5. CUDA/cuDNN version: (e.g. CUDA10.2/cuDNN 7.6.5)
    6. Additional context: (Add any other context about the problem)

    欢迎您反馈PaddleSeg使用问题,辛苦您提供以下信息,方便我们快速定位和解决问题:

    1. PaddleSeg版本:(请提供版本号和分支信息,如PaddleSeg release/2.3)
    2. PaddlePaddle版本:(如PaddlePaddle 2.1.0)
    3. 操作系统信息:(如Linux/Windows/MacOS)
    4. Python版本号:(如Python3.6/7/8)
    5. CUDA/cuDNN版本:( 如CUDA10.2/cuDNN 7.6.5等)
    6. 其他内容: (增加其他与问题相关的内容)
    question 
    opened by chenyixun1112 15
  • [EISeg] Bugfixes and Update translation

    [EISeg] Bugfixes and Update translation

    PR types

    Bug fixes

    PR changes

    Others

    Description

    • 修复labelme格式保存时tif格式的图像转为base64失败
    • 修复切换分割和检查模式时可能错误加载另一个模式的标签
    • 新增工具栏在检测模式中禁用四个分割模式的工具按钮
    • 修复当从检测的画框模式切换到分割时画框功能没有关闭,与点击正负样本点冲突
    • 尝试修复 #2895
    • 更新了英语翻译部分
    • 新增删除/添加标签后标签序号重新排序,保持1,2,3,4....
    opened by geoyee 0
  • EISeg 检测标注yolo格式问题

    EISeg 检测标注yolo格式问题

    问题确认 Search before asking

    Bug描述 Describe the Bug

    EISeg保存的yolo数据集格式为

    图片名.txt 类别id xmin ymin bbwidth bbheight

    就我这边调研通常用的格式是

    图片名.txt 类别id xmid/width ymid/width bbwidth/width bbheight/height

    比如这个数据集

    https://www.kaggle.com/datasets/valentynsichkar/traffic-signs-dataset-in-yolo-format

    现在这个保存格式应该不太方便兼容其他的工具

    复现环境 Environment

    设计问题,与环境关系不大

    Bug描述确认 Bug description confirmation

    • [X] 我确认已经提供了Bug复现步骤、代码改动说明、以及环境信息,确认问题是可以复现的。I confirm that the bug replication steps, code change instructions, and environment information have been provided, and the problem can be reproduced.

    是否愿意提交PR? Are you willing to submit a PR?

    • [X] 我愿意提交PR!I'd like to help by submitting a PR!
    bug triage 
    opened by linhandev 0
  • 关于PaddleSeg中使用知识蒸馏报错images = data[0]的问题

    关于PaddleSeg中使用知识蒸馏报错images = data[0]的问题

    问题确认 Search before asking

    • [X] 我已经搜索过问题,但是没有找到解答。I have searched the question and found no related answer.

    请提出你的问题 Please ask your question

    Traceback (most recent call last): File "slim/distill/distill_train.py", line 225, in main(args) File "slim/distill/distill_train.py", line 220, in main test_config=s_cfg.test_config, ) File "PaddleSeg-release-2.7/develop/slim/distill/distill_utils.py", line 183, in distill_train images = data[0] KeyError: 0 请问一下是我的配置文件出错,还是哪些地方不对,谢谢您~

    question triage 
    opened by OroChippw 1
  • config中crop_size含义

    config中crop_size含义

    问题确认 Search before asking

    • [X] 我已经搜索过问题,但是没有找到解答。I have searched the question and found no related answer.

    请提出你的问题 Please ask your question

    配置文件config中的参数crop_size,如crop_size: [1024, 512]是将图像的宽裁剪为1024还是高为1024?

    question triage 
    opened by chenxiaoxio-o 0
  • 关于ohem损失函数用于计算损失的最小像素点选择

    关于ohem损失函数用于计算损失的最小像素点选择

    问题确认 Search before asking

    • [X] 我已经搜索过问题,但是没有找到解答。I have searched the question and found no related answer.

    请提出你的问题 Please ask your question

    您好,请问OHEM损失函数中那个最少用于计算损失的像素点数量怎么选择呢,我的训练图片的尺寸是512*512的一张共有262144个像素点

    question 
    opened by SevenTae 1
Releases(v2.7.0)
  • v2.7.0(Nov 30, 2022)

    New Features

    Semantic Segmentation

    • Release RTFormer, a real-time semantic segmentation model accepted by NeurIPS 2022. RTFormer combines the advantages of CNN and Transformer modules, and it achieves SOTA trade-off between performance and efficiency on several datasets.
    • Release UHRNet, a semantic segmentation model. The segmentation accuracy of UHRNet is higher than that of HRNet on Cityscapes.
    • Add 2 semantic segmentation models, i.e., TopFormer and MscaleOCRNet-PSA.
    • Enhance model training module, i.e., training for single channel images, setting different learning rate for backbone and head.
    • Add the tutorials of config preparation and training tricks.

    Image Matting

    • Release PP-MattingV2, a real-time human matting model with SOTA performance. Compared to previous models, the mean error is reduced by 17.91%, the inference speed is improved by 44.6% on GPU.
    • Refine the tutorials and build the benchmark of Matting models.

    3D Medical Segmentation

    • Release MedicalSegV2, a superior 3D medical image segmentation solution.
      • Release an intelligent annotation toolkit called EISeg-Med3D.
      • Release an optimized implementation of nnUNet named nnUNet-D, which has model deployment module.
      • Add 3 segmentation models, i.e., SwinUnet, TransUnet and nnFormer.
      • Refine the tutorials, add detailed information of model zoo and model introduction.

    新特性

    语义分割

    • 发布轻量级语义分割模型RTFormer,结合CNN和Transformer模块的优势,在公开数据集上实现性能SOTA,并发表于NeurIPS 2022。
    • 发布高精度语义分割模型UHRNet,Cityscapes数据集上精度超越HRNet。
    • 新增2个语义分割模型,TopFormer和MscaleOCRNet-PSA。
    • 增强训练功能,支持单通道图像训练,支持Backbone和Head设置不同学习率。
    • 优化安装步骤和文档,新增准备配置文件、高阶训练技巧的教程。

    深度抠图

    • 发布自研的轻量级抠图模型PP-MattingV2,推理速度提升44.6%,平均误差减小17.91%,超越此前SOTA模型,支持零成本开箱即用。
    • 升级文档和教程,构建模型库Benchmark。

    3D医疗分割

    • 发布3D医疗影像分割方案MedicalSegV2。
      • 发布3D医疗影像交互式标注工具EISeg-Med3D,具有算法创新、高效准确、用户友好等优势。
      • 新增前沿高精度分割方案nnUNet-D,涵盖数据分析、超参优化、模型构建、模型训练、模型融合等模块,而且新增模型部署的能力。
      • 新增3个医疗影像分割模型,SwinUnet、TransUnet和nnFormer,精度超过原论文最高达到3.6%。
      • 升级医疗分割的文档和教程,丰富ModelZoo和模型原理说明。

    Bug Fix

    • Fix data transforms error in PanopticDeeplab. #2381
    • Fix evaluation error for cityscapes dataset in PanopticDeeplab. #2564
    • Replace _C_ops with _legacy_C_ops for basic api. #2494
    • Check and synchronize the num_classes in config. #2477
    • Replace with_softmax and with_argmax with output_op in export.py. #2547
    • Correct the use of dist.all_reduce in distributed training. #2606
    • Fix the error of releasing dataloader. #2650
    Source code(tar.gz)
    Source code(zip)
  • v2.6.0(Jul 20, 2022)

    New Features

    Semantic Segmentation

    • Release PP-HumanSeg v2, an off-the-shelf human segmentation model. It achieves 64.26 FPS on the mobile device, which is 45.5% faster than before.
    • Release PSSL, a novel pre-training method, including a large dataset that consists of 1.2M+ pseudo semantic segmentation labels (PSSL) corresponding to the whole ImageNet training set. It boosts the performances of various models on all downstream tasks.
    • Release the industrial model series: high-accuracy models, light-weight models, and super light-weight models, to help developers pick up the most suitable one.
    • Add 2 segmentation models: MobileNetV3_LRASPP,UperNet.
    • Add 1 initialization method: Xavier Uniform.
    • Upgrade data reading pipeline that allows using dict to pass the data.
    • Support PaddleSMRT which is a model selection tool that help developers to choose the best model according to the actual requirements.
    • Upgrade the homepage, and provide more easy-to-use quick-start tutorial.

    Intelligent Labelling

    • Release EISeg v1.0, the stable-version semi-automatic tool for image, video and 3D slice data annotation. It achieves "Once for All" (training once, and labelling all) performance.
    • Add interactive video object segmentation for general scenes, this work is based on EISeg interactive segmentation model and MiVOS.
    • Add 3D segmentation capabilities for abdominal multi-organ and CT vertebral data, and provides 3D visualization tools.

    Image Matting

    • Release PP-Matting source code and the pre-trained models.
    • Add the pymatting package that provides five traditional matting methods including ClosedFormMatting、KNNMatting, FastMatting, LearningBaseMatting, and RandomWalksMatting.
    • Add GCA model, update the ppmatting architecture, and support user-specified metrics evaluations.

    3D Medical Segmentation

    • Add UNETR,we achieve Dice=71.8% in MSD-brain, which is 0.7% higher than the original implementation.
    • Add slicing window prediction to support large-scale input, which improves the inference accuracy.

    新特性

    语义分割

    • 发布实时人像分割模型PP-HumanSeg v2,移动端推理速度提升45.5%、达到64.26 FPS,分割精度更高、通用型更强、零成本开箱即用。
    • 发布120多万张ImageNet分割伪标签数据集,以及预训练方法PSSL,全面提升分割模型在下游任务上的性能。
    • 发布产业级语义分割模型,包括高精度、轻量级和超轻量级系列。
    • 新增2个语义分割模型,MobileNetV3_LRASPP,UperNet。
    • 新增1个初始化方法:Xavier Uniform。
    • 升级数据流程,通过字典形式进行数据的传递,提升数据流的可读性、灵活性与扩展性。
    • 接入飞桨产业模型选型工具PaddleSMRT,可以根据产业落地的诸多诉求,分析数据特点,推荐合适的模型和方案。
    • 全新升级文档主页,全流程使用教程更加详实。


    智能标注

    • 发布高性能智能标注工具EISeg v1.0正式版,实现一次训练万物可标,加速提升图像、视频、3D医疗影像等领域的分割标注效率。
    • 新增用于通用场景视频交互式分割能力,以EISeg交互式分割模型及MiVOS算法为基础,全面提升视频标注体验。
    • 新增用于腹腔多器官及CT椎骨数据3D分割能力,并提供3D可视化工具,给予医疗领域3D标注新的思路。

    深度抠图

    • 开源PP-Matting代码和预训练模型
    • 新增pymatting支持,引入ClosedFormMatting、KNNMatting、FastMatting、LearningBaseMatting和RandomWalksMatting传统机器学习算法。
    • 新增GCA模型,更新目录结构,支持指定指标进行评估。

    3D医疗分割

    • 新增前沿模型UNETR,在MSD-brain 上Dice为71.8%,高于原论文0.7%。
    • 新增滑窗预测功能,支持大图推理提升精度。

    Bug Fix

    • Fix a problem in warpAffine. https://github.com/PaddlePaddle/PaddleSeg/pull/2072
    • Fix a makedirs bug. https://github.com/PaddlePaddle/PaddleSeg/pull/2066
    • Fix the split_dataset_list error. https://github.com/PaddlePaddle/PaddleSeg/pull/2079
    • Fix the problem of one hot when CELoss has weight. https://github.com/PaddlePaddle/PaddleSeg/pull/2050
    • Fix the error of no num_class. https://github.com/PaddlePaddle/PaddleSeg/pull/2200
    • Subtract the warmup iters for PolynomialDecay. https://github.com/PaddlePaddle/PaddleSeg/pull/2230
    • Fix pointrend log error. https://github.com/PaddlePaddle/PaddleSeg/pull/2282
    Source code(tar.gz)
    Source code(zip)
  • v2.5(Apr 20, 2022)

    New Features

    • Release PP-LiteSeg, a superior real-time semantic segmentation model. It achieves 273.6FPS on 1080Ti.
    • Release PP-Matting, a trimap-free image matting model for extremely fine-grained segmentation. It achieves SOTA performance on Composition-1k and Distinctions-646.
    • Release MedicalSeg, a newly easy-to-use toolkit for 3D medical imaging. It supports the whole segmentation process including data preprocessing, model training, and model deployment, and provides high-accuracy models on lung and spine segmentation.
    • Release EISeg v0.5, with three more interactive models for chest Xray, MRI spine and defect inspection.
    • Add 5 semantic segmentation models: ENet, CCNet, DDRNet, GloRe, PP-LiteSeg.
    • Add 1 loss function: MultiClassFocalLoss.
    • Support AMP training, including O1 and O2 levels.

    新特性

    • 发布超轻量级语义分割模型PP-LiteSeg技术报告以及开源模型,在1080Ti GPU上推理速度达到273.6FPS。
    • 发布高精度抠图模型PP-Matting技术报告以及开源模型,在Composition-1K和Distinctions-646上实现SOTA。
    • 发布3D医疗影像开发套件MedicalSeg,支持数据预处理、模型训练、模型部署等全流程开发,并提供肺部、椎骨数据上的高精度分割模型。
    • 发布交互式分割工具EISeg v0.5版本,新增胸片X光、医学椎骨、工业质检标注垂类方向。
    • 新增5个分割模型:ENet, CCNet, DDRNet, GloRe, PP-LiteSeg。
    • 新增1个损失函数:MultiClassFocalLoss。
    • 完整支持混合精度训练能力,包括O1、O2模式训练、边训边评估。

    Bug Fix

    • Add init weights for hrnet_contrast. https://github.com/PaddlePaddle/PaddleSeg/pull/1746
    • Fix the overflow error in calculating kappa. https://github.com/PaddlePaddle/PaddleSeg/pull/1788
    • Fix GINet interpolate problem. https://github.com/PaddlePaddle/PaddleSeg/pull/1846
    • Fix the error of nonetype object for quant. https://github.com/PaddlePaddle/PaddleSeg/pull/1854
    • Fix Enet export and infer problem. https://github.com/PaddlePaddle/PaddleSeg/pull/1919
    • Fix SemanticConnectivityLoss bug on cpu. https://github.com/PaddlePaddle/PaddleSeg/pull/1940
    • Fix import error of tensor_fusion. https://github.com/PaddlePaddle/PaddleSeg/pull/2023
    • Fix a prediction bug without val dataset. https://github.com/PaddlePaddle/PaddleSeg/pull/1816

    New Contributors

    • @xmba15 made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1743
    • @ChenjieXu made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1791
    • @ykkk2333 made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1815
    • @windstamp made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1926

    Full Changelog: https://github.com/PaddlePaddle/PaddleSeg/compare/v2.2.0...v2.5

    Source code(tar.gz)
    Source code(zip)
  • v2.4(Jan 20, 2022)

    New Features

    • Release the upgraded interactive segmentation tool, EISeg 0.4, adding Remote Sensing and Medical annotation.
    • Publish the PP-HumanSeg paper for portrait segmentation, including semantic connectivity loss and large-scale video conferencing dataset named PP-HumanSeg14K.
    • Release PP-HumanMatting for extremely fine-grained human segmentation.
    • Provide 2 tutorials for domain adaptation algorithm PixMatch, and Lane Segmentation.
    • Add 9 semantic segmentation models: ESPNetV1, ESPNetV2, HRNet_W48_Contrast, DMNet, ENCNet, PFPNNet, FastFCN, BiSeNetV1, and SegMenter.
    • Add 2 loss functions: SECrossEntropyLoss,SemanticConnectivityLoss.
    • Add 1 transform method: RandomCenterCrop.
    • Add 4 medical segmentation datasets: STARE,DRIVE,CHASE DB1,HRF, and their pretrained models in UNet.
    • Provide a comprehensive performance table for all segmentation models in PaddleSeg.

    新特性

    • 发布交互式分割工具EISeg v0.4版本,支持静态图预测,新增遥感、医疗标注垂类方向。
    • 发布人像分割论文PP-HumanSeg,并开源连通性学习(SCL)方法和大规模视频会议数据集PP-HumanSeg14K。
    • 开源人像发丝级抠图Matting算法,PP-HumanMatting。
    • 新增2个分割案例:无监督领域自适应模型PixMatch,车道线分割。
    • 新增9个分割模型:ESPNetV1, ESPNetV2, HRNet_W48_Contrast, DMNet, ENCNet, PFPNNet, FastFCN, BiSeNetV1, 以及Transformer系列模型SegMenter。
    • 新增2个损失函数:SECrossEntropyLoss,SemanticConnectivityLoss。
    • 新增1个数据增强方法:RandomCenterCrop。
    • 新增医疗分割数据集STARE,DRIVE,CHASE DB1,HRF,并提供UNet预训练模型。
    • 提供分割模型性能对比图,帮助用户全面了解分割模型性能,方便模型选型。

    Bug Fix

    • Fix the error of saving image in infer.py https://github.com/PaddlePaddle/PaddleSeg/pull/1513
    • Fix GINet export bugs https://github.com/PaddlePaddle/PaddleSeg/pull/1518
    • Remove flip_horizontal when aug_eval is True https://github.com/PaddlePaddle/PaddleSeg/pull/1559
    • Replace item with numpy in segformer https://github.com/PaddlePaddle/PaddleSeg/pull/1579
    • Add CocoStuff in init.py https://github.com/PaddlePaddle/PaddleSeg/pull/1604
    • Fix DICE format and a bug https://github.com/PaddlePaddle/PaddleSeg/pull/1630
    • Solve the TRT inference problem when dynamic shape is not set https://github.com/PaddlePaddle/PaddleSeg/pull/1640
    • Fix ENCNet export problem https://github.com/PaddlePaddle/PaddleSeg/pull/1677
    • Fix weighted cross_entropy bug when 255 in label https://github.com/PaddlePaddle/PaddleSeg/pull/1499
    • Fix CityscapesSOTA incompatibility in PaddlePaddle 2.2 https://github.com/PaddlePaddle/PaddleSeg/pull/1595

    New Contributors

    • @acdart made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1195
    • @txyugood made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1132
    • @CuberrChen made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1305
    • @neonhuang made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1405
    • @mmglove made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1495
    • @justld made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1490
    • @qianbin1989228 made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1538
    • @JiehangXie made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1481
    • @Fate-Sunshine made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1549
    • @0x45f made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1527
    • @ucsk made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1584
    • @louis-she made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1604
    • @simuler made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1625
    • @ETTR123 made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1638
    • @JamesLim-sy made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1683
    • @Thudjr made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1712
    • @Mrwow made their first contribution in https://github.com/PaddlePaddle/PaddleSeg/pull/1721

    Full Changelog: https://github.com/PaddlePaddle/PaddleSeg/compare/v2.2.0...v2.4

    Source code(tar.gz)
    Source code(zip)
  • v2.3.0(Oct 11, 2021)

    新特性

    • 发布交互式分割SOTA算法论文,EdgeFlow。
    • 开源精细化分割Matting算法,DIM和MODNet。
    • 新增分割模型压缩高阶功能,蒸馏和量化。
    • 提供基于Paddle Inference的C++的分割模型预测指南。
    • 提供Paddle Servering部署和导出ONNX模型的示例和指南。
    • 新增经典模型SegNet,PointRend,图结构模型GINet,轻量级模型STDC,轻量级Transformer系列模型SegFormer。
    • 新增损失函数:RMI Loss,Focal Loss,KL Loss,Detail Aggregate Loss, Point CE Loss。
    • 支持自定义任意类别数量的color map,提升可视化效果。

    问题修复

    • #1240 修复CrossEntropyLoss在加权情况下的值越界问题。
    • #1219 #1385 修复未训练完完整epoch退出时,dataloader随机抛出段错误的问题。
    • #1113 修复多进程dataloader在不同epoch下随机数种子相同的bug。

    New Features

    • Published a paper on interactive segmentation named EdgeFlow.
    • Released two Matting algorithms, DIM and MODNet.
    • Provided advanced features on segmentation model compression, Knowledge Distillation and “Molde Quantization”.
    • Provided the model inference tutorial based on Paddle Inference and Paddle Serving.
    • Provided the ONNX exporting tutorial, which allows cross-platform deployment.
    • Added five models, SegNet, PointRend, GINet, STDC, SegFormer.
    • Added RMI Loss,Focal Loss,KL Loss,Detail Aggregate Loss, Point CE Loss.
    • Support customized color map.

    Bug Fix

    • #1240 fix the problem of CrossEntropyLoss.
    • #1219 #1385 fix the segment problem of dataloader while exiting before a full epoch.
    • #1113 fix the problem of the same seed on multi-process dataloader.
    Source code(tar.gz)
    Source code(zip)
  • v2.2.0(Jul 13, 2021)

    新特性

    • CVPR 2021 AutoNUE语义分割赛道 冠军方案 开源!
    • 全新开源的超轻量级人像分割模型PPSeg,基于自采的大规模半身人像数据训练,适用于 视频会议 等半身像场景
    • 新增交互式分割应用场景,基于seed-based SOTA模型RITM 提供了基于 人像COCO+LVIS 训练的权重
    • 全新发布的交互式分割工具EISeg,可用于快速标注数据
    • 新增人像分割领域的经典模型 PortraitNet,新增Transformer系列 SOTA模型 SwinTransformer
    • 优化模型预测的后处理逻辑,提升模型预测精度

    问题修复

    • #1123 修复模型剪枝时内存不足的问题
    • #1100 修复CrossEntropyLoss 使用 weight权重时训练无法收敛的问题
    • #1082 修复模型剪枝脚本运行失败的问题
    • #1081 修复了Windows系统下预测脚本输出保存路径不正确的问题
    • #1078 修复多卡训练模型时DataLoader未设置work_init_fn导致多进程中所使用同样的random seed的问题
    • #34c1bbf#30860e 修复DecoupledSegNet和SFNet导出失败的问题

    致谢


    New Features

    • CVPR 2021 AutoNUE Semantic Segmentation Track Technical Report is open sourced!
    • An ultra-lightweight portrait segmentation model named PPSeg is open sourced, which is training based on large-scale portrait data and suitable for video conference
    • We provide interactive segmentation application scenarios, based on the seed-based SOTA model RITM and also provide weights training on portrait and COCO+LVIS.
    • A newly released interactive segmentation tool EISeg can be used to quickly label data
    • Added the popular model PortraitNet in the field of portrait segmentation, and added the Transformer series SOTA model SwinTransformer
    • We optimize the post-processing logic of model prediction to improve model prediction accuracy

    Bug Fix

    • #1123 Fix the problem of insufficient memory during model pruning
    • #1100 Fix the problem that the weighted CrossEntropyLoss cannot converge during training
    • #1082 Fix the problem that the model pruning script fails to run
    • #1081 Fix the problem that the save path of the prediction script under Windows system is incorrect
    • #1078 Fix an issue where the DataLoader did not set work_init_fn when training the model in multi-card, which caused the same random seed to be used in multiple processes
    • #34c1bbf/#30860e Fix the problem that DecoupledSegNet and SFNet cannot be successfully exported

    Thanks

    Source code(tar.gz)
    Source code(zip)
  • v2.1.0(May 19, 2021)

    新特性

    • 语义分割方向新增医疗分割模型UNet3+、轻量级模型SFNet、ShuffleNetV2等模型。
    • 全新增加 全景分割 场景,支持训练、评估、预测以及可视化等能力,新增Anchor-Free的SOTA模型Panoptic-DeepLab。
    • 完善部署能力,新增 移动端部署 能力和 web端部署 能力,并支持添加后处理算子(argmax/softmax)。
    • 高精度的人像分割模型humanseg升级为动态图版,并显著优化边缘锯齿问题。
    • 升级学习率配置模块,新增10种学习率策略,涵盖了业界主流学习率调度方式。
    • 新增Weighted Cross Entropy Loss、L1 Loss、MSE Loss,适用于不同场景下的模型优化。

    Bug修复

    • #1016 修复NonLocal2D模块在非gaussian模式下shape不一致的问题。
    • #1007 修复RandomRotation和RandomScaleAspect在未传入Label时无法正确调用的问题。
    • #1006 修复EMANet无法进行单卡训练的问题。
    • #995 修复了PaddleSeg在PaddlePaddle 2.1版本中存在的兼容性问题。
    • #980 修复DecoupledSegNet在PaddlePaddle 2.1版本中训练失败的问题。
    • #975 修复滑窗预测图像小于窗口大小时无法正确预测的问题。
    • #971 修复ResizeByLong进行数据增强,在预测时没有正确恢复尺寸的问题。

    New Features

    • New semantic segmentation models such as the medical segmentation model UNet3+, the lightweight model SFNet, and ShuffleNetV2 have been added.
    • Newly added panoramic segmentation scenes, supporting training, evaluation, prediction and visualization capabilities, and new Anchor-Free SOTA model Panoptic-DeepLab.
    • Improve deployment capabilities, add mobile deployment and web deployment capabilities, and support the addition of post-processing operators (argmax/softmax).
    • The high-precision portrait segmentation model humanseg is upgraded to dynamic graph version, and the edge aliasing problem is significantly optimized.
    • Upgrade the learning rate configuration module and add 10 new learning rate strategies, covering the mainstream learning rate scheduling methods in the industry.
    • Added Weighted Cross Entropy Loss, L1 Loss, and MSE Loss, which are suitable for model optimization in different scenarios.

    Bug Fix

    • #1016 Fix the problem that the shape of NonLocal2D module is inconsistent in non-gaussian mode.
    • #1007 Fixed an issue where RandomRotation and RandomScaleAspect could not be called correctly when Label was not passed in.
    • #1006 Fix the problem that EMANet cannot be trained in single card.
    • #995 Fixed the compatibility issue of PaddleSeg in PaddlePaddle 2.1 version.
    • #980 Fixed the problem that DecoupledSegNet failed to train in PaddlePaddle 2.1.
    • #975 Fix the problem that the sliding window prediction image cannot be correctly predicted when the image is smaller than the window size.
    • #971 Fix the problem that ResizeByLong does not restore the size correctly in predict phase.
    Source code(tar.gz)
    Source code(zip)
  • v2.0.0(Feb 26, 2021)

    新特性

    • 全新发布2.0版本,全面升级至动态图,支持20+分割模型,4个骨干网络,5个数据集,9种Loss:
      • 分割模型:ANN、BiSeNetV2、DANet、DeeplabV3、DeeplabV3+、FCN、FastSCNN、Gated-scnn、GCNet、HarDNet、OCRNet、PSPNet、UNet、UNet++、U2Net、Attention UNet、Decoupled SegNet、EMANet、DNLNet、ISANet
      • 骨干网络:ResNet, HRNet, MobileNetV3, Xception
      • 数据集:Cityscapes, ADE20K, Pascal VOC, Pascal Context, COCO Stuff
      • Loss:CrossEntropy Loss、BootstrappedCrossEntropy Loss、Dice Loss、BCE Loss、OhemCrossEntropyLoss、RelaxBoundaryLoss、OhemEdgeAttentionLoss、Lovasz Hinge Loss、Lovasz Softmax Loss
    • 提供基于Cityscapes和Pascal Voc数据集的高质量预训练模型 50+
    • 支持多卡GPU并行评估,提供了高效的指标计算功能。支持多尺度评估/翻转评估/滑动窗口评估等多种评估方式。
    • 支持XPU模型训练,包括DeepLabv3、HRNet、UNet。
    • 开源了基于Hierarchical Multi-Scale Attention结构的语义分割模型,在Cityscapes验证集上达到87% mIoU。
    • 动态图模式支持模型在线量化、剪枝等模型压缩功能。
    • 动态图下支持模型动转静,实现高性能部署。

    New Features

    • We newly released version 2.0 which has been fully upgraded to dynamic graphics. It supports more than 20 segmentation models, 4 backbone networks, , 5 datasets and 9 losses:
      • Segmentation models: ANN, BiSeNetV2, DANet, DeeplabV3, DeeplabV3+, FCN, FastSCNN, Gated-scnn, GCNet, HarDNet, OCRNet, PSPNet, UNet, UNet++, U2Net, Attention UNet, Decoupled SegNet, EMANet, DNLNet, ISANet
      • Backbone networks: ResNet, HRNet, MobileNetV3, and Xception
      • Datasets: Cityscapes, ADE20K, Pascal VOC, Pascal Context, COCO Stuff
      • Losses: CrossEntropy Loss, BootstrappedCrossEntropy Loss, Dice Loss, BCE Loss, OhemCrossEntropyLoss, RelaxBoundaryLoss, OhemEdgeAttentionLoss, Lovasz Hinge Loss, Lovasz Softmax Loss
    • We provide more than 50 high quality pre-trained models based on Cityscapes and Pascal Voc datasets.
    • The new version support multi-card GPU parallel evaluation for more efficient metrics calculation. It also support multiple evaluation methods such as multi-scale evaluation/flip evaluation/sliding window evaluation.
    • XPU model training including DeepLabv3, HRNet, UNet, is available now.
    • We open source a semantic segmentation model based on the Hierarchical Multi-Scale Attention structure, and it reached 87% mIoU on the Cityscapes validation set.
    • The dynamic graph mode supports model compression functions such as online quantification and pruning.
    • The dynamic graph mode supports model export for high-performance deployment.
    Source code(tar.gz)
    Source code(zip)
  • v2.0.0-rc0(Dec 18, 2020)

    新特性

    • 全新发布2.0-rc版本,全面升级至动态图,支持15+分割模型,4个骨干网络,3个数据集,4种Loss:
      • 分割模型:ANN, BiSeNetV2, DANet, DeeplabV3, DeeplabV3+, FCN, FastSCNN, Gated-scnn, GCNet, HarDNet, OCRNet, PSPNet, UNet, UNet++, U^2Net, Attention UNet
      • 骨干网络:ResNet, HRNet, MobileNetV3, Xception
      • 数据集:Cityscapes, ADE20K, Pascal VOC
      • Loss:CrossEntropy Loss、BootstrappedCrossEntropy Loss、Dice Loss、BCE Loss
    • 提供基于Cityscapes和Pascal Voc数据集的高质量预训练模型 40+。
    • 支持多卡GPU并行评估,提供了高效的指标计算功能。支持多尺度评估/翻转评估/滑动窗口评估等多种评估方式。

    New Features

    • Newly release 2.0-rc version, fully upgraded to dynamic graph. It supports 15+ segmentation models, 4 backbone networks, 3 datasets, and 4 types of loss functions:
      • Segmentation models: ANN, BiSeNetV2, DANet, DeeplabV3, DeeplabV3+, FCN, FastSCNN, Gated-scnn, GCNet, OCRNet, PSPNet, UNet, and U^2Net
      • Backbone networks: ResNet, HRNet, MobileNetV3, and Xception
      • Datasets: Cityscapes, ADE20K, and Pascal VOC
      • Loss: CrossEntropy Loss、BootstrappedCrossEntropy Loss、Dice Loss、BCE Loss.
    • Provide 40+ high quality pre-trained models based on Cityscapes and Pascal Voc datasets.
    • Support multi-card GPU parallel evaluation. This provides the efficient index calculation function. Support multiple evaluation methods such as multi-scale evaluation/flip evaluation/sliding window evaluation.
    Source code(tar.gz)
    Source code(zip)
  • v0.8.0(Dec 3, 2020)

    新特性

    • 增加多尺度评估/翻转评估/滑动窗口评估等功能。
    • 支持多卡GPU并行评估,提供了高效的指标计算功能。
    • 增加Pascal VOC 2012数据集。
    • 新增在Pascal VOC 2012数据集上的高精度预训练模型,详见模型库
    • 支持对PNG格式的伪彩色图片进行预测可视化。

    New Features

    • Add multi-scale/flipping/sliding-window inference.
    • Add the fast multi-GPUs evaluation, and high-efficient metric calculation.
    • Add Pascal VOC 2012 dataset.
    • Add high-accuracy pre-trained models on Pascal VOC 2012, see detailed models.
    • Support visualizing pseudo-color images in PNG format while predicting.
    Source code(tar.gz)
    Source code(zip)
  • v0.7.0(Oct 28, 2020)

    • 全面支持Paddle2.0-rc动态图模式,推出PaddleSeg动态图体验版
    • 发布大量动态图模型,支持11个分割模型,4个骨干网络,3个数据集:
      • 分割模型:ANN, BiSeNetV2, DANet, DeeplabV3, DeeplabV3+, FCN, FastSCNN, GCNet, OCRNet, PSPNet, UNet
      • 骨干网络:ResNet, HRNet, MobileNetV3, Xception
      • 数据集:Cityscapes, ADE20K, Pascal VOC
    • 提供高精度骨干网络预训练模型以及基于Cityscapes数据集的语义分割预训练模型。Cityscapes精度超过82%
    Source code(tar.gz)
    Source code(zip)
  • v0.6.0(Sep 1, 2020)

    • 丰富Deeplabv3p网络结构,新增ResNet-vd、MobileNetv3两种backbone,满足高性能与高精度场景,并提供基于Cityscapes和ImageNet的预训练模型4个。
    • 新增高精度分割模型OCRNet,支持以HRNet作为backbone,提供基于Cityscapes的预训练模型,mIoU超过80%。
    • 新增proposal free的实例分割模型Spatial Embedding,性能与精度均超越MaskRCNN。提供了基于kitti的预训练模型。
    Source code(tar.gz)
    Source code(zip)
  • v0.5.0(Jul 2, 2020)

    • 全面升级HumanSeg人像分割模型,新增超轻量级人像分割模型HumanSeg-lite支持移动端实时人像分割处理,并提供基于光流的视频分割后处理提升分割流畅性。
    • 新增气象遥感分割方案,支持积雪识别、云检测等气象遥感场景。
    • 新增Lovasz Loss,解决数据类别不均衡问题。
    • 使用VisualDL 2.0作为训练可视化工具
    Source code(tar.gz)
    Source code(zip)
  • v0.4.0(May 11, 2020)

    • 新增适用于实时场景且不需要预训练模型的分割网络Fast-SCNN,提供基于Cityscapes的预训练模型1个。
    • 新增LaneNet车道线检测网络,提供预训练模型一个。
    • 新增基于PaddleSlim的分割库压缩策略(量化, 蒸馏, 剪枝, 搜索)
    Source code(tar.gz)
    Source code(zip)
  • v0.3.0(Dec 16, 2019)

    • 新增HRNet分割网络,提供基于cityscapes和ImageNet的预训练模型8个
    • 支持使用伪彩色标签进行训练/评估/预测,提升训练体验,并提供将灰度标注图转为伪彩色标注图的脚本
    • 新增学习率warmup功能,支持与不同的学习率Decay策略配合使用
    • 新增图像归一化操作的GPU化功能,进一步提升预测速度。
    • 新增Python部署方案,更低成本完成工业级部署。
    • 新增Paddle-Lite移动端部署方案,支持人像分割模型的移动端部署。
    Source code(tar.gz)
    Source code(zip)
  • v0.2.0(Nov 4, 2019)

  • v0.1.0(Sep 11, 2019)

    • PaddleSeg分割库初始版本发布,包含DeepLabv3+, U-Net, ICNet三类分割模型, 其中DeepLabv3+支持Xception, MobileNet两种可调节的骨干网络。共包含预训练模型14个
    • CVPR19 LIP人体部件分割比赛冠军预测模型ACE2P发布
    • 基于DeepLabv3+网络的人像分割和车道线分割预测模型发布
    Source code(tar.gz)
    Source code(zip)
Object detection and instance segmentation toolkit based on PaddlePaddle.

Object detection and instance segmentation toolkit based on PaddlePaddle.

null 9.3k Jan 2, 2023
rastrainer is a QGIS plugin to training remote sensing semantic segmentation model based on PaddlePaddle.

rastrainer rastrainer is a QGIS plugin to training remote sensing semantic segmentation model based on PaddlePaddle. UI TODO Init UI. Add Block. Add l

deepbands 5 Mar 4, 2022
Demo for the paper "Overlap-aware low-latency online speaker diarization based on end-to-end local segmentation"

Streaming speaker diarization Overlap-aware low-latency online speaker diarization based on end-to-end local segmentation by Juan Manuel Coria, Hervé

Juanma Coria 187 Jan 6, 2023
E2EC: An End-to-End Contour-based Method for High-Quality High-Speed Instance Segmentation

E2EC: An End-to-End Contour-based Method for High-Quality High-Speed Instance Segmentation E2EC: An End-to-End Contour-based Method for High-Quality H

zhangtao 146 Dec 29, 2022
A PaddlePaddle version image model zoo.

Paddle-Image-Models English | 简体中文 A PaddlePaddle version image model zoo. Install Package Install by pip: $ pip install ppim Install by wheel package

AgentMaker 131 Dec 7, 2022
Python-based Informatics Kit for Analysing Chemical Units

INSTALLATION Python-based Informatics Kit for the Analysis of Chemical Units Step 1: Make a conda environment: conda create -n pikachu python=3.9 cond

null 47 Dec 23, 2022
Paddle-Adversarial-Toolbox (PAT) is a Python library for Deep Learning Security based on PaddlePaddle.

Paddle-Adversarial-Toolbox Paddle-Adversarial-Toolbox (PAT) is a Python library for Deep Learning Security based on PaddlePaddle. Model Zoo Common FGS

AgentMaker 17 Nov 8, 2022
Remote sensing change detection tool based on PaddlePaddle

PdRSCD PdRSCD(PaddlePaddle Remote Sensing Change Detection)是一个基于飞桨PaddlePaddle的遥感变化检测的项目,pypi包名为ppcd。目前0.2版本,最新支持图像列表输入的训练和预测,如多期影像、多源影像甚至多期多源影像。可以快速完

null 38 Aug 31, 2022
Large-scale open domain KNOwledge grounded conVERsation system based on PaddlePaddle

Knover Knover is a toolkit for knowledge grounded dialogue generation based on PaddlePaddle. Knover allows researchers and developers to carry out eff

null 607 Dec 31, 2022
Classical OCR DCNN reproduction based on PaddlePaddle framework.

Paddle-SVHN Classical OCR DCNN reproduction based on PaddlePaddle framework. This project reproduces Multi-digit Number Recognition from Street View I

null 1 Nov 12, 2021
buildseg is a building extraction plugin of QGIS based on PaddlePaddle.

buildseg buildseg is a building extraction plugin of QGIS based on PaddlePaddle. TODO Extract building on 512x512 remote sensing images. Extract build

Yizhou Chen 11 Sep 26, 2022
buildseg is a building extraction plugin of QGIS based on PaddlePaddle.

buildseg buildseg is a Building Extraction plugin for QGIS based on PaddlePaddle. How to use Download and install QGIS and clone the repo : git clone

null 39 Dec 9, 2022
Multi-Modal Machine Learning toolkit based on PaddlePaddle.

简体中文 | English PaddleMM 简介 飞桨多模态学习工具包 PaddleMM 旨在于提供模态联合学习和跨模态学习算法模型库,为处理图片文本等多模态数据提供高效的解决方案,助力多模态学习应用落地。 近期更新 2022.1.5 发布 PaddleMM 初始版本 v1.0 特性 丰富的任务

njustkmg 520 Dec 28, 2022
Awesome Remote Sensing Toolkit based on PaddlePaddle.

基于飞桨框架开发的高性能遥感图像处理开发套件,端到端地完成从训练到部署的全流程遥感深度学习应用。 最新动态 PaddleRS 即将发布alpha版本!欢迎大家试用 简介 PaddleRS是遥感科研院所、相关高校共同基于飞桨开发的遥感处理平台,支持遥感图像分类,目标检测,图像分割,以及变化检测等常用遥

null 146 Dec 11, 2022
[CVPR2021 Oral] End-to-End Video Instance Segmentation with Transformers

VisTR: End-to-End Video Instance Segmentation with Transformers This is the official implementation of the VisTR paper: Installation We provide instru

Yuqing Wang 687 Jan 7, 2023
Learning recognition/segmentation models without end-to-end training. 40%-60% less GPU memory footprint. Same training time. Better performance.

InfoPro-Pytorch The Information Propagation algorithm for training deep networks with local supervision. (ICLR 2021) Revisiting Locally Supervised Lea

null 78 Dec 27, 2022
ISTR: End-to-End Instance Segmentation with Transformers (https://arxiv.org/abs/2105.00637)

This is the project page for the paper: ISTR: End-to-End Instance Segmentation via Transformers, Jie Hu, Liujuan Cao, Yao Lu, ShengChuan Zhang, Yan Wa

Jie Hu 182 Dec 19, 2022
"SOLQ: Segmenting Objects by Learning Queries", SOLQ is an end-to-end instance segmentation framework with Transformer.

SOLQ: Segmenting Objects by Learning Queries This repository is an official implementation of the paper SOLQ: Segmenting Objects by Learning Queries.

MEGVII Research 179 Jan 2, 2023
An end-to-end PyTorch framework for image and video classification

What's New: March 2021: Added RegNetZ models November 2020: Vision Transformers now available, with training recipes! 2020-11-20: Classy Vision v0.5 R

Facebook Research 1.5k Dec 31, 2022