Skip to content

Commit

Permalink
Update the Docs.
Browse files Browse the repository at this point in the history
  • Loading branch information
yazheng0307 authored Jun 7, 2021
1 parent c4553f7 commit fb77879
Show file tree
Hide file tree
Showing 191 changed files with 4,673 additions and 165 deletions.
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

0 comments on commit fb77879

Please sign in to comment.