Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update docs in release/2.1 #1075

Merged
merged 20 commits into from
Jun 11, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
133 changes: 62 additions & 71 deletions README_CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,21 +8,33 @@
![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)

<img src="./docs/images/seg_news_icon.png" width="50"/> *[2021-02-26] PaddleSeg发布2.0动态图正式版。静态图已经被移至[legacy](./legacy)子目录下。更多信息请查看详细[更新日志](./docs/release_notes_cn.md)。*
<img src="./docs/images/seg_news_icon.png" width="50"/> *[2021-5-19] PaddleSeg发布2.1版本,适配PaddlePaddle2.1版本。静态图已经被移至[legacy](./legacy)子目录下。更多信息请查看[更新日志](./docs/release_notes_cn.md)。
*[2021-02-26] PaddleSeg发布2.0动态图正式版。静态图已经被移至[legacy](./legacy)子目录下。更多信息请查看详细[更新日志](./docs/release_notes_cn.md)。

![demo](./docs/images/cityscapes.gif)

PaddleSeg是基于飞桨[PaddlePaddle](https://www.paddlepaddle.org.cn)开发的端到端图像分割开发套件,涵盖了**高精度**和**轻量级**等不同方向的大量高质量分割模型。通过模块化的设计,提供了**配置化驱动**和**API调用**两种应用方式,帮助开发者更便捷地完成从训练到部署的全流程图像分割应用。

## 特性
## 特性 <img src="./docs/images/feature.png" width="30"/>

* **高精度模型**:基于百度自研的[半监督标签知识蒸馏方案(SSLD)](https://paddleclas.readthedocs.io/zh_CN/latest/advanced_tutorials/distillation/distillation.html#ssld)训练得到高精度骨干网络,结合前沿的分割技术,提供了50+的高质量预训练模型,效果优于其他开源实现。

* **模块化设计**:支持15+主流 *分割网络* ,结合模块化设计的 *数据增强策略* 、*骨干网络*、*损失函数* 等不同组件,开发者可以基于实际应用场景出发,组装多样化的训练配置,满足不同性能和精度的要求
* <img src="./docs/images/f1.png" width="20"/> **高精度模型**:基于百度自研的[半监督标签知识蒸馏方案(SSLD)](https://paddleclas.readthedocs.io/zh_CN/latest/advanced_tutorials/distillation/distillation.html#ssld)训练得到高精度骨干网络,结合前沿的分割技术,提供了50+的高质量预训练模型,效果优于其他开源实现

* **高性能**:支持多进程异步I/O、多卡并行训练、评估等加速策略,结合飞桨核心框架的显存优化功能,可大幅度减少分割模型的训练开销,让开发者更低成本、更高效地完成图像分割训练
* <img src="./docs/images/f2.png" width="20"/> **模块化设计**:支持20+主流 *分割网络* ,结合模块化设计的 *数据增强策略* 、*骨干网络*、*损失函数* 等不同组件,开发者可以基于实际应用场景出发,组装多样化的训练配置,满足不同性能和精度的要求

## 模型库
* <img src="./docs/images/f3.png" width="20"/> **高性能**:支持多进程异步I/O、多卡并行训练、评估等加速策略,结合飞桨核心框架的显存优化功能,可大幅度减少分割模型的训练开销,让开发者更低成本、更高效地完成图像分割训练。
* :heart:**您可以前往 [完整PaddleSeg在线使用文档目录](https://paddleseg.readthedocs.io/zh_CN/develop/index.html) 获得更详细的说明文档**:heart:


## 技术交流 <img src="./docs/images/chat.png" width="30"/>

* 如果你发现任何PaddleSeg存在的问题或者是建议, 欢迎通过[GitHub Issues](https://github.com/PaddlePaddle/PaddleSeg/issues)给我们提issues。
* 欢迎加入PaddleSeg微信群(左侧)和QQ群(右侧)
<div align="center">
<img src="./docs/images/wechat_qq.png" width = "500" />
</div>

## 模型库 <img src="./docs/images/model.png" width="20"/>

|模型\骨干网络|ResNet50|ResNet101|HRNetw18|HRNetw48|
|-|-|-|-|-|
Expand Down Expand Up @@ -50,77 +62,56 @@ PaddleSeg是基于飞桨[PaddlePaddle](https://www.paddlepaddle.org.cn)开发的
|[SFNet](./configs/sfnet)|✔|-|-|-|
|[ShuffleNetV2](./configs/shufflenetv2)|-|-|-|-|

## 数据集

- [x] Cityscapes
- [x] Pascal VOC
- [x] ADE20K
- [x] Pascal Context
- [x] COCO stuff

## 安装

#### 1. 安装PaddlePaddle

版本要求

* PaddlePaddle >= 2.0.0

* Python >= 3.6+

由于图像分割模型计算开销大,推荐在GPU版本的PaddlePaddle下使用PaddleSeg。推荐安装10.0以上的CUDA环境。安装教程请见[PaddlePaddle官网](https://www.paddlepaddle.org.cn/install/quick?docurl=/documentation/docs/zh/2.0/install/)。


#### 2. 安装PaddleSeg
支持用**API调用**的方式构建定制化的分割框架,灵活开发。

```shell
pip install paddleseg
```

#### 3. 下载PaddleSeg仓库
支持用**配置化驱动**的方式完成全流程分割应用,简单快捷。

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

#### 4. 验证安装
运行以下命令,如果可以正常进行训练,说明您已经安装成功。

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

## 使用教程

* [快速入门](./docs/quick_start.md)
* [API使用教程](https://aistudio.baidu.com/aistudio/projectdetail/1339458)
* [数据集准备](./docs/data_prepare.md)
* [配置项](./configs/)
* [Loss使用](./docs/loss_usage.md)
* [API参考](./docs/apis)
* [添加新组件](./docs/add_new_model.md)
* [模型压缩](./slim)
* [模型导出](./docs/model_export.md)

## 实践案例

* [人像分割HumanSeg](./contrib/HumanSeg)
* [Cityscapes SOTA](./contrib/CityscapesSOTA)

## 联系我们
* 如果你发现任何PaddleSeg存在的问题或者是建议, 欢迎通过[GitHub Issues](https://github.com/PaddlePaddle/PaddleSeg/issues)给我们提issues。
* 同时欢迎加入PaddleSeg技术交流群:1004738029 (QQ群3) 或者 850378321(QQ群1已满)或者793114768(QQ群2已满)。
## 使用教程 <img src="./docs/images/teach.png" width="30"/>

* [安装](./docs/install.md)
* [全流程跑通PaddleSeg](./docs/quick_start.md)
* 数据处理
* [数据格式说明](./docs/data/marker/marker_c.md)
* [数据标注和转换](./docs/data/transform/transform_c.md)
* [自定义数据集](./docs/data/custom/data_prepare.md)

* PaddleSeg的设计思想
* [配置文件详解](./docs/design/use/use.md)
* [如何创造自己的模型](./docs/design/create/add_new_model.md)
* [模型训练](/docs/train/train.md)
* [模型评估](./docs/evaluation/evaluate/evaluate.md)
* [模型导出](./docs/export/export/model_export.md)

* 模型部署
* [Inference](./docs/deployment/inference/inference.md)
* [Lite](./docs/deployment/lite/lite.md)
* [Serving](./docs/deployment/serving/serving.md)
* [Web](./docs/deployment/web/web.md)
* [模型压缩](./docs/slim/slim/slim.md)
* API使用教程
* [API文档说明](./docs/apis)
* [API应用案例](./docs/api_example.md)
* 重要模块说明
* [数据增强](./docs/module/data/data.md)
* [Loss说明](./docs/module/loss/lovasz_loss.md)
* [Tricks](./docs/module/tricks/tricks.md)
* 经典模型说明
* [DeeplabV3](./docs/models/deeplabv3.md)
* [UNet](./docs/models/unet.md)
* [OCRNet](./docs/models/ocrnet.md)
* [Fast-SCNN](./docs/models/fascnn.md)
* [提交PR说明](./docs/pr/pr/pr.md)
* [FAQ](./docs/faq/faq/faq.md)

## 实践案例 <img src="./docs/images/anli.png" width="20"/>

* [人像分割](https://github.com/PaddlePaddle/PaddleSeg/tree/release/2.1/contrib/HumanSeg)
* [医疗图像](./docs/solution/medical/medical.md)
* [遥感分割](https://github.com/PaddlePaddle/PaddleSeg/tree/release/2.1/contrib/remote_sensing)

## 代码贡献

* 非常感谢[jm12138](https://github.com/jm12138)贡献U<sup>2</sup>-Net模型。
* 非常感谢[zjhellofss](https://github.com/zjhellofss)(傅莘莘)贡献Attention U-Net模型,和Dice loss损失函数。
* 非常感谢[liuguoyu666](https://github.com/liguoyu666),[geoyee](https://github.com/geoyee)贡献U-Net++和U-Net3+模型。
* 非常感谢[yazheng0307](https://github.com/yazheng0307) (刘正)贡献快速入门文档。
* 非常感谢[liuguoyu666](https://github.com/liguoyu666)贡献U-Net++模型。

## 学术引用
## 学术引用 <img src="./docs/images/yinyong.png" width="30"/>

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

Expand Down
20 changes: 20 additions & 0 deletions docs/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Minimal makefile for Sphinx documentation
#

# You can set these variables from the command line, and also
# from the environment for the first two.
SPHINXOPTS ?=
SPHINXBUILD ?= sphinx-build
SOURCEDIR = .
BUILDDIR = _build

# Put it first so that "make" without argument is like "make help".
help:
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

.PHONY: help Makefile

# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
2 changes: 2 additions & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# PaddleSeg文档
PaddleSeg的使用文档均在本目录结构下。文档采用Read the Docs方式组织,您可以直接访问在线文档进行查阅
Loading