Parcourir la source

new doc structure

jiangjiajun il y a 5 ans
Parent
commit
e355406173

+ 8 - 0
docs/FAQ.md

@@ -0,0 +1,8 @@
+{% extends "!layout.html" %}
+  {% block footer %} {{ super() }}
+
+  <style>
+         .wy-nav-content { max-width: 1080px; }
+  </style>
+
+{% endblock %}

+ 1 - 1
docs/apis/datasets.md

@@ -1,4 +1,4 @@
-接口说明
+PaddleX API说明文档
 ============================
 
 .. toctree::

+ 1 - 1
docs/apis/load_model.md → docs/apis/load_model.md

@@ -7,7 +7,7 @@ Anaconda是一个开源的Python发行版本,其包含了conda、Python等180
 
 ### 第二步 安装
 运行下载的安装包(以.exe为后辍),根据引导完成安装, 用户可自行修改安装目录(如下图)
-![](./images/anaconda_windows.png)
+![](../images/anaconda_windows.png)
 
 ### 第三步 使用
 - 点击Windows系统左下角的Windows图标,打开:所有程序->Anaconda3/2(64-bit)->Anaconda Prompt  

+ 0 - 0
docs/gpu_configure.md → docs/appendix/gpu_configure.md


+ 0 - 0
docs/how_to_offline_run.md → docs/appendix/how_to_offline_run.md


+ 24 - 0
docs/appendix/index.rst

@@ -0,0 +1,24 @@
+附录
+=======================================
+
+
+.. toctree::
+   :maxdepth: 2
+   :caption: 目录:
+
+   quick_start.md
+   install.md
+   tutorials/index.rst
+   model_zoo.md
+   apis/index
+   client_use.md
+   update.md
+   FAQ.md
+   appendix/index.rst
+
+* PaddleX版本: v0.1.7
+* 项目官网: http://www.paddlepaddle.org.cn/paddle/paddlex  
+* 项目GitHub: https://github.com/PaddlePaddle/PaddleX/tree/develop  
+* 官方QQ用户群: 1045148026  
+* GitHub Issue反馈: http://www.github.com/PaddlePaddle/PaddleX/issues
+

+ 0 - 0
docs/metrics.md → docs/appendix/metrics.md


+ 50 - 0
docs/appendix/model_zoo.md

@@ -0,0 +1,50 @@
+## 图像分类模型
+> 表中模型相关指标均为在ImageNet数据集上使用PaddlePaddle Python预测接口测试得到(测试GPU型号为Nvidia Tesla P40),预测速度为每张图片预测用时(不包括预处理和后处理),表中符号`-`表示相关指标暂未测试。
+
+
+| 模型  | 模型大小 | 预测速度(毫秒) | Top1准确率(%) | Top5准确率(%) |
+| :----|  :------- | :----------- | :--------- | :--------- |
+| ResNet18| 46.9MB   | 1.499        | 71.0     | 89.9     |
+| ResNet34| 87.5MB   | 2.272        | 74.6    | 92.1    |
+| ResNet50| 102.7MB  | 2.939        | 76.5     | 93.0     |
+| ResNet101 |179.1MB  | 5.314      | 77.6     | 93.6  |
+| ResNet50_vd |102.8MB  | 3.165        | 79.1     | 94.4     |
+| ResNet101_vd| 179.2MB  | 5.252       | 80.2   | 95.0     |
+| ResNet50_vd_ssld |102.8MB  | 3.165        | 82.4     | 96.1     |
+| ResNet101_vd_ssld| 179.2MB  | 5.252       | 83.7   | 96.7     |
+| DarkNet53|166.9MB  | 3.139       | 78.0     | 94.1     |
+| MobileNetV1 | 16.0MB   | 32.523        | 71.0     | 89.7    |
+| MobileNetV2 | 14.0MB   | 23.318        | 72.2     | 90.7    |
+| MobileNetV3_large|  21.0MB   | 19.308        | 75.3    | 93.2   |
+| MobileNetV3_small |  12.0MB   | 6.546        | 68.2    | 88.1     |
+| MobileNetV3_large_ssld|  21.0MB   | 19.308        | 79.0     | 94.5     |
+| MobileNetV3_small_ssld |  12.0MB   | 6.546        | 71.3     | 90.1     |
+| Xception41 |92.4MB   | 4.408       | 79.6    | 94.4     |
+| Xception65 | 144.6MB  | 6.464       | 80.3     | 94.5     |
+| DenseNet121 | 32.8MB   | 4.371       | 75.7     | 92.6     |
+| DenseNet161|116.3MB  | 8.863       | 78.6     | 94.1     |
+| DenseNet201|  84.6MB   | 8.173       | 77.6     | 93.7     |
+| ShuffleNetV2 | 9.0MB   | 10.941        | 68.8     | 88.5     |
+
+## 目标检测模型
+
+> 表中模型相关指标均为在MSCOCO数据集上使用PaddlePaddle Python预测接口测试得到(测试GPU型号为Nvidia Tesla V100测试得到,表中符号`-`表示相关指标暂未测试。
+
+| 模型    | 模型大小    | 预测时间(毫秒) | BoxAP(%) |
+|:-------|:-----------|:-------------|:----------|
+|FasterRCNN-ResNet50|135.6MB| 78.450 | 35.2 |
+|FasterRCNN-ResNet50_vd| 135.7MB | 79.523 | 36.4 |
+|FasterRCNN-ResNet101| 211.7MB | 107.342 | 38.3 |
+|FasterRCNN-ResNet50-FPN| 167.2MB | 44.897 | 37.2 |
+|FasterRCNN-ResNet50_vd-FPN|168.7MB | 45.773 | 38.9 |
+|FasterRCNN-ResNet101-FPN| 251.7MB | 55.782 | 38.7 |
+|FasterRCNN-ResNet101_vd-FPN |252MB | 58.785 | 40.5 |
+|YOLOv3-DarkNet53|252.4MB | 21.944 | 38.9 |
+|YOLOv3-MobileNetv1 |101.2MB | 12.771 | 29.3 |
+|YOLOv3-MobileNetv3|94.6MB | - | 31.6 |
+| YOLOv3-ResNet34|169.7MB | 15.784 | 36.2 |
+
+## 实例分割模型
+
+> 表中模型相关指标均为在MSCOCO数据集上测试得到。
+

+ 0 - 17
docs/conf.py

@@ -1,17 +0,0 @@
-# 模型转换
-
-## 转ONNX模型
-PaddleX基于[Paddle2ONNX工具](https://github.com/PaddlePaddle/paddle2onnx),提供了便捷的API,支持用户将PaddleX训练保存的模型导出为ONNX模型。
-通过如下示例代码,用户即可将PaddleX训练好的MobileNetV2模型导出
-```
-import paddlex as pdx
-pdx.convertor.to_onnx(model_dir='paddle_mobilenet', save_dir='onnx_mobilenet')
-```
-
-## 转PaddleLite模型
-PaddleX可支持导出为[PaddleLite](https://github.com/PaddlePaddle/Paddle-Lite)支持的模型格式,用于支持用户将模型部署更多硬件设备。
-通过如下示例代码,用户即可将PaddleX训练好的MobileNetV2模型导出
-```
-import paddlex as pdx
-pdx.convertor.to_lite(model_dir='paddle_mobilenet', save_dir='lite_mobilnet', terminal='arm')
-```

+ 63 - 0
docs/cv_solutions.md

@@ -0,0 +1,63 @@
+# PaddleX视觉方案介绍  
+
+PaddleX目前提供了4种视觉任务解决方案,分别为图像分类、目标检测、实例分割和语义分割。用户可以根据自己的任务类型按需选取。
+
+## 图像分类
+图像分类任务指的是输入一张图片,模型预测图片的类别,如识别为风景、动物、车等。
+
+![](./images/image_classification.png)
+
+对于图像分类任务,针对不同的应用场景,PaddleX提供了百度改进的模型,见下表所示
+
+|    模型    | 模型大小 | GPU预测速度 | CPU预测速度 | ARM芯片预测速度 | 准确率 | 备注 |
+| :--------- | :------  | :---------- | :-----------| :-------------  | :----- | :--- |
+| MobileNetV3_small_ssld | 12M | ? | ? | ? | 71.3% |适用于移动端场景 |
+| MobileNetV3_large_ssld | 21M | ? | ? | ? | 79.0% | 适用于移动端/服务端场景 |
+| ResNet50_vd_ssld | 102.8MB | ? | ? | ? | 82.4% | 适用于服务端场景 |
+| ResNet101_vd_ssld | 179.2MB | ? | ? | ? |83.7% | 适用于服务端场景 |
+
+除上述模型外,PaddleX还支持近20种图像分类模型,模型列表可参考[PaddleX模型库](../appendix/model_zoo.md)
+
+
+## 目标检测
+目标检测任务指的是输入图像,模型识别出图像中物体的位置(用矩形框框出来,并给出框的位置),和物体的类别,如在手机等零件质检中,用于检测外观上的瑕疵等。
+
+![](./images/object_detection.png)
+
+对于目标检测,针对不同的应用场景,PaddleX提供了主流的YOLOv3模型和Faster-RCNN模型,见下表所示
+
+|   模型   | 模型大小  | GPU预测速度 | CPU预测速度 |ARM芯片预测速度 | BoxMAP | 备注 |
+| :------- | :-------  | :---------  | :---------- | :-------------  | :----- | :--- |
+| YOLOv3-MobileNetV1 | 101.2M | ? | ? | ? | 29.3 | |
+| YOLOv3-MobileNetV3 | 94.6M | ? | ? | ? | 31.6 | |
+| YOLOv3-ResNet34 | 169.7M | ? | ? | ? | 36.2 | |
+| YOLOv3-DarkNet53 | 252.4 | ? | ? | ? | 38.9 | |
+
+除YOLOv3模型外,PaddleX同时也支持FasterRCNN模型,支持FPN结构和5种backbone网络,详情可参考[PaddleX模型库](../appendix/model_zoo.md)
+
+## 实例分割
+在目标检测中,模型识别出图像中物体的位置和物体的类别。而实例分割则是在目标检测的基础上,做了像素级的分类,将框内的属于目标物体的像素识别出来。
+
+![](./images/instance_segmentation.png)
+
+PaddleX目前提供了实例分割MaskRCNN模型,支持5种不同的backbone网络,详情可参考[PaddleX模型库](../appendix/model_zoo.md)
+
+|  模型 | 模型大小 | GPU预测速度 | CPU预测速度 | ARM芯片预测速度 | BoxMAP | SegMAP | 备注 |
+| :---- | :------- | :---------- | :---------- | :-------------  | :----- | :----- | :--- |
+| MaskRCNN-ResNet50_vd-FPN | 185.5M | ? | ? | ? | 39.8 | 35.4 | |
+| MaskRCNN-ResNet101_vd-FPN | 268.6M | ? | ? | ? | 41.4 | 36.8 | |
+
+
+## 语义分割
+语义分割用于对图像做像素级的分类,应用在人像分类、遥感图像识别等场景。  
+
+![](./images/semantic_segmentation.png)
+
+对于语义分割,PaddleX也针对不同的应用场景,提供了不同的模型选择,如下表所示
+
+| 模型 | 模型大小 | GPU预测速度 | CPU预测速度 | ARM芯片预测速度 | mIOU | 备注 |
+| :---- | :------- | :---------- | :---------- | :-------------  | :----- | :----- |
+| DeepLabv3p-MobileNetV2_x0.25 | | ? | ? | ? | ? | ? |
+| DeepLabv3p-MobileNetV2_x1.0 | | ? | ? | ? | ? | ? |
+| DeepLabv3p-Xception65 | | ? | ? | ? | ? | ? |
+| UNet | | ? | ? | ? | ? | ? |

BIN
docs/images/00_loaddata.png


BIN
docs/images/instance_segmentation.png


BIN
docs/images/mask_eval.png


BIN
docs/images/paddlex.jpg


+ 21 - 12
docs/images/vdl1.jpg


+ 2 - 2
docs/install.md

@@ -1,8 +1,8 @@
-# 安装
+# 快速安装
 
 以下安装过程默认用户已安装好**paddlepaddle-gpu或paddlepaddle(版本大于或等于1.7.1)**,paddlepaddle安装方式参照[飞桨官网](https://www.paddlepaddle.org.cn/install/quick)
 
-> 推荐使用Anaconda Python环境,Anaconda下安装PaddleX参考文档[Anaconda安装使用](./anaconda_install.md)
+> 推荐使用Anaconda Python环境,Anaconda下安装PaddleX参考文档[Anaconda安装使用](../appendix/anaconda_install.md)
 
 ## Github代码安装
 github代码会跟随开发进度不断更新

+ 0 - 72
docs/make.bat

@@ -1,72 +0,0 @@
-# 模型库
-本文档梳理了PaddleX v0.1.0支持的模型,同时也提供了在各个数据集上的预训练模型和对应验证集上的指标。用户也可自行下载对应的代码,在安装PaddleX后,即可使用相应代码训练模型。
-
-表中相关模型也可下载好作为相应模型的预训练模型,通过`pretrain_weights`指定目录加载使用。
-
-## 图像分类模型
-> 表中模型相关指标均为在ImageNet数据集上使用PaddlePaddle Python预测接口测试得到(测试GPU型号为Nvidia Tesla P40),预测速度为每张图片预测用时(不包括预处理和后处理),表中符号`-`表示相关指标暂未测试。
-
-
-| 模型  | 模型大小 | 预测速度(毫秒) | Top1准确率(%) | Top5准确率(%) |
-| :----|  :------- | :----------- | :--------- | :--------- |
-| ResNet18| 46.9MB   | 1.3568        | 71.0     | 89.9     |
-| ResNet34| 87.5MB   | 2.23092        | 74.6    | 92.1    |
-| ResNet50| 102.7MB  | 2.63824        | 76.5     | 93.0     |
-| ResNet101 |179.1MB  | 5.04037      | 77.6     | 93.6  |
-| ResNet50_vd |102.8MB  | 2.65164        | 79.1     | 94.4     |
-| ResNet101_vd| 179.2MB  | 5.05972       | 80.2   | 95.0     |
-| ResNet50_vd_ssld |102.8MB  | 2.65164        | 82.4     | 96.1     |
-| ResNet101_vd_ssld| 179.2MB  | 5.05972       | 83.7   | 96.7     |
-| DarkNet53|166.9MB  | 3.18101       | 78.0     | 94.1     |
-| MobileNetV1 | 16.0MB   | 0.71942        | 71.0     | 89.7    |
-| MobileNetV2 | 14.0MB   | 2.78603        | 72.2     | 90.7    |
-| MobileNetV3_large|  21.0MB   | 2.20149        | 75.3    | 93.2   |
-| MobileNetV3_small |  12.0MB   | 1.73933        | 68.2    | 88.1     |
-| MobileNetV3_large_ssld|  21.0MB   | 2.20149        | 79.0     | 94.5     |
-| MobileNetV3_small_ssld |  12.0MB   | 1.73933         | 71.3     | 90.1     |
-| Xception41 |92.4MB   | 2.85934       | 79.6    | 94.4     |
-| Xception65 | 144.6MB  | 4.06803       | 80.3     | 94.5     |
-| DenseNet121 | 32.8MB   | 4.16436       | 75.7     | 92.6     |
-| DenseNet161|116.3MB  | 9.27249       | 78.6     | 94.1     |
-| DenseNet201|  84.6MB   | 7.9617      | 77.6     | 93.7     |
-| ShuffleNetV2 | 9.0MB   | 1.95064        | 68.8     | 88.5     |
-
-## 目标检测模型
-
-> 表中模型相关指标均为在MSCOCO数据集上使用PaddlePaddle Python预测接口测试得到(测试GPU型号为Nvidia Tesla V100测试得到,表中符号`-`表示相关指标暂未测试。
-
-| 模型    | 模型大小    | 预测时间(毫秒) | BoxAP(%) |
-|:-------|:-----------|:-------------|:----------|
-|FasterRCNN-ResNet50|135.6MB| 78.450 | 35.2 |
-|FasterRCNN-ResNet50_vd| 135.7MB | 79.523 | 36.4 |
-|FasterRCNN-ResNet101| 211.7MB | 107.342 | 38.3 |
-|FasterRCNN-ResNet50-FPN| 167.2MB | 44.897 | 37.2 |
-|FasterRCNN-ResNet50_vd-FPN|168.7MB | 45.773 | 38.9 |
-|FasterRCNN-ResNet101-FPN| 251.7MB | 55.782 | 38.7 |
-|FasterRCNN-ResNet101_vd-FPN |252MB | 58.785 | 40.5 |
-|YOLOv3-DarkNet53|252.4MB | 21.944 | 38.9 |
-|YOLOv3-MobileNetv1 |101.2MB | 12.771 | 29.3 |
-|YOLOv3-MobileNetv3|94.6MB | - | 31.6 |
-| YOLOv3-ResNet34|169.7MB | 15.784 | 36.2 |
-
-## 实例分割模型
-
-> 表中模型相关指标均为在MSCOCO数据集上测试得到。
-
-| 模型 |模型大小 | 预测时间(毫秒) | BoxAP | SegAP(%) |
-|:---------|:---------|:----------|:---------|:--------|
-|MaskRCNN-ResNet50|51.2MB| 86.096 | 36.5 |32.2|
-|MaskRCNN-ResNet50-FPN|184.6MB | 65.859 | 37.9 |34.2|
-|MaskRCNN-ResNet50_vd-FPN |185.5MB | 63.191 | 39.8 |35.4|
-|MaskRCNN-ResNet101-FPN|268.6MB | 77.024 | 39.5 |35.2|
-|MaskRCNN-ResNet101vd-FPN |268.6MB | 76.307 | 41.4 |36.8|
-
-## 语义分割模型
-
-> 表中符号`-`表示相关指标暂未测试。
-
-| 模型| 模型大小 | 预测速度 | mIOU |
-|:--------|:----------|:----------|:----------|
-| UNet|53.7M | - |-|
-| DeepLabv3+/Xception65| 165.1M |- | 0.7930 |
-| DeepLabv3+/MobileNetV2 | 7.4M | - | 0.6981 |

+ 1 - 1
docs/client_use.md → docs/paddlex_gui.md

@@ -1,4 +1,4 @@
-# 使用PaddleX客户端进行模型训练
+# PaddleX-GUI使用文档
 
 **第一步:下载PaddleX客户端**
 

+ 2 - 0
docs/quick_start.md

@@ -2,6 +2,8 @@
 
 本文档在一个小数据集上展示了如何通过PaddleX进行训练,您可以阅读PaddleX的**使用教程**来了解更多模型任务的训练使用方式。本示例同步在AIStudio上,可直接[在线体验模型训练](https://aistudio.baidu.com/aistudio/projectdetail/439860)
 
+
+pip install
 ## 1. 准备蔬菜分类数据集
 ```
 wget https://bj.bcebos.com/paddlex/datasets/vegetables_cls.tar.gz

+ 0 - 0
docs/requirements.txt → docs/requirements.txt


+ 0 - 0
docs/slim/prune.md → docs/tutorials/compress/slim/prune.md


+ 0 - 0
docs/slim/quant.md → docs/tutorials/compress/slim/quant.md


+ 7 - 0
docs/tutorials/dataset_prepare.md

@@ -0,0 +1,7 @@
+# 数据准备
+
+## 数据标注
+
+## 主流标注软件支持
+
+## EasyData数据标注支持

+ 0 - 0
docs/datasets.md → docs/tutorials/datasets.md


+ 0 - 0
docs/deploy/deploy.md → docs/tutorials/deploy/deploy.md


+ 0 - 0
docs/deploy/deploy_cpp_linux.md → docs/tutorials/deploy/deploy_cpp_linux.md


+ 0 - 0
docs/deploy/deploy_cpp_win_vs2019.md → docs/tutorials/deploy/deploy_cpp_win_vs2019.md


+ 0 - 0
docs/deploy/images/vs2019_step1.png → docs/tutorials/deploy/images/vs2019_step1.png


+ 0 - 0
docs/deploy/images/vs2019_step2.png → docs/tutorials/deploy/images/vs2019_step2.png


+ 0 - 0
docs/deploy/images/vs2019_step3.png → docs/tutorials/deploy/images/vs2019_step3.png


+ 0 - 0
docs/deploy/images/vs2019_step4.png → docs/tutorials/deploy/images/vs2019_step4.png


+ 0 - 0
docs/deploy/images/vs2019_step5.png → docs/tutorials/deploy/images/vs2019_step5.png


+ 0 - 0
docs/deploy/images/vs2019_step6.png → docs/tutorials/deploy/images/vs2019_step6.png


+ 2 - 0
docs/tutorials/deploy/index.rst

@@ -0,0 +1,2 @@
+多端部署
+==============

+ 3 - 1
docs/tutorials/index.rst

@@ -1,8 +1,10 @@
-使用教程
+PaddleX全流程开发教程
 =========================
 
 .. toctree::
    :maxdepth: 1
 
+   dataset_prepare.md
    train/index.rst
    compress/index.rst
+   deploy/index.rst

+ 2 - 0
docs/tutorials/train/classification.md

@@ -0,0 +1,2 @@
+# 更新日志
+

+ 99 - 0
docs/xx

@@ -0,0 +1,99 @@
+.
+./._tutorials
+./._README.md
+./._FAQ.md
+./apis/._visualize.md
+./apis/._deploy.md
+./apis/._images
+./apis/._models.md
+./apis/transforms/._cls_transforms.md
+./apis/transforms/._seg_transforms.md
+./apis/transforms/._det_transforms.md
+./apis/transforms/._index.rst
+./apis/._datasets.md
+./apis/images/._insect_bbox_pr_curve(iou-0.5).png
+./apis/._transforms
+./apis/._load_model.md
+./apis/._slim.md
+./apis/._index.rst
+./._images
+./._conf.py
+./._cv_solutions.md
+./._make.bat
+./images/._voc_eval.png
+./images/._08_deploy.png
+./images/._paddlex.png
+./images/._vdl2.jpg
+./images/._05_train.png
+./images/._faster_eval.png
+./images/._object_detection.png
+./images/._visualized_deeplab.jpg
+./images/._02_newproject.png
+./images/._PaddleX-Pipe-Line.png
+./images/._visualized_fasterrcnn.jpg
+./images/._04_parameter.png
+./images/._cls_train.png
+./images/._instance_segmentation.png
+./images/._paddlex.jpg
+./images/._anaconda_windows.png
+./images/._00_loaddata.png
+./images/._mask_train.png
+./images/._seg_train.png
+./images/._yolo_train.png
+./images/._faster_train.png
+./images/._cls_eval.png
+./images/._mask_eval.png
+./images/._06_VisualDL.png
+./images/._seg_eval.png
+./images/._visualized_maskrcnn.jpeg
+./images/._QQGroup.jpeg
+./images/._garbage.bmp
+./images/._semantic_segmentation.png
+./images/._03_choosedata.png
+./images/._07_evaluate.png
+./images/._01_datasplit.png
+./images/._image_classification.png
+./images/._vdl1.jpg
+./images/._vdl3.jpg
+./._requirements.txt
+./._Makefile
+./._apis
+./appendix/._metrics.md
+./appendix/._how_to_offline_run.md
+./appendix/._index.rst
+./appendix/._gpu_configure.md
+./appendix/._anaconda_install.md
+./._install.md
+./._paddlex_gui.md
+./._index.rst
+./._quick_start.md
+./tutorials/._README.md
+./tutorials/deploy/._deploy.md
+./tutorials/deploy/._images
+./tutorials/deploy/._deploy_cpp_win_vs2019.md
+./tutorials/deploy/._deploy_cpp_linux.md
+./tutorials/deploy/images/._vs2019_step4.png
+./tutorials/deploy/images/._vs2019_step3.png
+./tutorials/deploy/images/._vs2019_step6.png
+./tutorials/deploy/images/._vs2019_step1.png
+./tutorials/deploy/images/._vs2019_step5.png
+./tutorials/deploy/images/._vs2019_step2.png
+./tutorials/._compress
+./tutorials/._datasets.md
+./tutorials/._train
+./tutorials/train/._detection.md
+./tutorials/train/._visualdl.md
+./tutorials/train/._instance_segmentation.md
+./tutorials/train/._classification.md
+./tutorials/train/._index.rst
+./tutorials/train/._segmentation.md
+./tutorials/compress/._slim
+./tutorials/compress/._detection.md
+./tutorials/compress/._classification.md
+./tutorials/compress/._index.rst
+./tutorials/compress/slim/._prune.md
+./tutorials/compress/slim/._quant.md
+./tutorials/compress/slim/._index.rst
+./tutorials/compress/._segmentation.md
+./tutorials/._index.rst
+./tutorials/._deploy