Skip to content

Commit 0180098

Browse files
committed
fix conflicts and add deploy.md
2 parents a98dc7b + 2a8d4b4 commit 0180098

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

55 files changed

+420
-99
lines changed

README.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -48,21 +48,20 @@ PaddleX提供两种开发模式,满足不同场景和用户需求:
4848
```
4949
pip install paddlex -i https://mirror.baidu.com/pypi/simple
5050
```
51-
安装的相关问题参考[PaddleX安装](https://paddlex.readthedocs.io/zh_CN/latest/install.html)
51+
安装的相关问题参考[PaddleX安装](https://paddlex.readthedocs.io/zh_CN/develop/install.html)
5252

5353
### PaddleX-GUI安装
5454

5555
进入PaddleX官网[下载使用](https://www.paddlepaddle.org.cn/paddle/paddlex),申请下载绿色安装包,开箱即用。
56-
Paddle-GUI的使用教程可参考[PaddleX-GUI模式使用教程](https://paddlex.readthedocs.io/zh_CN/latest/paddlex_gui/index.html)
56+
Paddle-GUI的使用教程可参考[PaddleX-GUI模式使用教程](https://paddlex.readthedocs.io/zh_CN/develop/paddlex_gui/index.html)
5757

5858
## 使用文档
5959

60-
推荐访问[PaddleX在线使用文档](https://paddlex.readthedocs.io/zh_CN/latest/index.html),快速查阅读使用教程和API文档说明。
60+
推荐访问[PaddleX在线使用文档](https://paddlex.readthedocs.io/zh_CN/develop/index.html),快速查阅读使用教程和API文档说明。
6161

62-
- [10分钟快速上手使用](https://paddlex.readthedocs.io/zh_CN/latest/quick_start.html)
63-
- [PaddleX全流程开发教程](https://paddlex.readthedocs.io/zh_CN/latest/tutorials/index.html)
64-
- [PaddleX视觉方案介绍](https://paddlex.readthedocs.io/zh_CN/latest/cv_solutions.html)
65-
- [PaddleX API参考文档](https://paddlex.readthedocs.io/zh_CN/latest/apis/index.html)
62+
- [10分钟快速上手使用](https://paddlex.readthedocs.io/zh_CN/develop/quick_start.html)
63+
- [PaddleX模型训练教程集合](https://paddlex.readthedocs.io/zh_CN/develop/train/index.html)
64+
- [PaddleX API参考文档](https://paddlex.readthedocs.io/zh_CN/develop/apis/index.html)
6665

6766
## 在线教程
6867

@@ -81,10 +80,11 @@ Paddle-GUI的使用教程可参考[PaddleX-GUI模式使用教程](https://paddle
8180
## FAQ
8281

8382
## 更新日志
84-
* 2020.05.20
83+
> [历史版本及更新内容](https://paddlex.readthedocs.io/zh_CN/develop/change_log.html)
8584
86-
**`v1.0.0`**
87-
* 正式版本发布。
85+
- 2020.07.12 v1.0.8
86+
- 2020.05.20 v1.0.0
87+
- 2020.05.17 v0.1.8
8888

8989
## 贡献代码
9090

docs/apis/datasets.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ paddlex.datasets.ImageNet(data_dir, file_list, label_list, transforms=None, num_
77
```
88
读取ImageNet格式的分类数据集,并对样本进行相应的处理。ImageNet数据集格式的介绍可查看文档:[数据集格式说明](../data/format/index.html)
99

10-
示例:[代码文件](https://github.com/PaddlePaddle/PaddleX/blob/develop/tutorials/train/classification/mobilenetv2.py#L25)
10+
示例:[代码文件](https://github.com/PaddlePaddle/PaddleX/blob/develop/tutorials/train/image_classification/mobilenetv2.py)
1111

1212
> **参数**
1313
@@ -20,15 +20,15 @@ paddlex.datasets.ImageNet(data_dir, file_list, label_list, transforms=None, num_
2020
> > * **parallel_method** (str): 数据集中样本在预处理过程中并行处理的方式,支持'thread'线程和'process'进程两种方式。默认为'process'(Windows和Mac下会强制使用thread,该参数无效)。
2121
> > * **shuffle** (bool): 是否需要对数据集中样本打乱顺序。默认为False。
2222
23-
## paddlex.datasets.PascalVOC
23+
## paddlex.datasets.VOCDetection
2424
> **用于目标检测模型**
2525
```
26-
paddlex.datasets.PascalVOC(data_dir, file_list, label_list, transforms=None, num_workers=‘auto’, buffer_size=100, parallel_method='thread', shuffle=False)
26+
paddlex.datasets.VOCDetection(data_dir, file_list, label_list, transforms=None, num_workers=‘auto’, buffer_size=100, parallel_method='thread', shuffle=False)
2727
```
2828

2929
> 读取PascalVOC格式的检测数据集,并对样本进行相应的处理。PascalVOC数据集格式的介绍可查看文档:[数据集格式说明](../data/format/index.html)
3030
31-
> 示例:[代码文件](https://github.com/PaddlePaddle/PaddleX/blob/develop/tutorials/train/detection/yolov3_darknet53.py#L29)
31+
> 示例:[代码文件](https://github.com/PaddlePaddle/PaddleX/blob/develop/tutorials/train/object_detection/yolov3_darknet53.py)
3232
3333
> **参数**
3434
@@ -41,15 +41,15 @@ paddlex.datasets.PascalVOC(data_dir, file_list, label_list, transforms=None, num
4141
> > * **parallel_method** (str): 数据集中样本在预处理过程中并行处理的方式,支持'thread'线程和'process'进程两种方式。默认为'process'(Windows和Mac下会强制使用thread,该参数无效)。
4242
> > * **shuffle** (bool): 是否需要对数据集中样本打乱顺序。默认为False。
4343
44-
## paddlex.datasets.MSCOCO
44+
## paddlex.datasets.CocoDetection
4545
> **用于实例分割/目标检测模型**
4646
```
47-
paddlex.datasets.MSCOCO(data_dir, ann_file, transforms=None, num_workers='auto', buffer_size=100, parallel_method='thread', shuffle=False)
47+
paddlex.datasets.CocoDetection(data_dir, ann_file, transforms=None, num_workers='auto', buffer_size=100, parallel_method='thread', shuffle=False)
4848
```
4949

5050
> 读取MSCOCO格式的检测数据集,并对样本进行相应的处理,该格式的数据集同样可以应用到实例分割模型的训练中。MSCOCO数据集格式的介绍可查看文档:[数据集格式说明](../data/format/index.html)
5151
52-
> 示例:[代码文件](https://github.com/PaddlePaddle/PaddleX/blob/develop/tutorials/train/detection/mask_rcnn_r50_fpn.py#L27)
52+
> 示例:[代码文件](https://github.com/PaddlePaddle/PaddleX/blob/develop/tutorials/train/instance_segmentation/mask_rcnn_r50_fpn.py)
5353
5454
> **参数**
5555
@@ -69,7 +69,7 @@ paddlex.datasets.SegDataset(data_dir, file_list, label_list, transforms=None, nu
6969

7070
> 读取语义分割任务数据集,并对样本进行相应的处理。语义分割任务数据集格式的介绍可查看文档:[数据集格式说明](../data/format/index.html)
7171
72-
> 示例:[代码文件](https://github.com/PaddlePaddle/PaddleX/blob/develop/tutorials/train/segmentation/unet.py#L27)
72+
> 示例:[代码文件](https://github.com/PaddlePaddle/PaddleX/blob/develop/tutorials/train/semantic_segmentation/unet.py)
7373
7474
> **参数**
7575

docs/apis/deploy.md

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# 预测部署-paddlex.deploy
2+
3+
使用Paddle Inference进行高性能的Python预测部署。更多关于Paddle Inference信息请参考[Paddle Inference文档](https://paddle-inference.readthedocs.io/en/latest/#)
4+
5+
## Predictor类
6+
7+
图像分类、目标检测、实例分割、语义分割统一的预测器,实现高性能预测。
8+
9+
```
10+
paddlex.deploy.Predictor(model_dir, use_gpu=False, gpu_id=0, use_mkl=False, use_trt=False, use_glog=False, memory_optimize=True)
11+
```
12+
13+
**参数**
14+
15+
> * **model_dir** (str): 训练过程中保存的模型路径, 注意需要使用导出的inference模型。
16+
> * **use_gpu** (bool): 是否使用GPU进行预测。
17+
> * **gpu_id** (int): 使用的GPU序列号。
18+
> * **use_mkl** (bool): 是否使用mkldnn加速库。
19+
> * **use_trt** (boll): 是否使用TensorRT预测引擎。
20+
> * **use_glog** (bool): 是否打印中间日志。
21+
> * **memory_optimize** (bool): 是否优化内存使用。
22+
23+
> ### 示例
24+
>
25+
> ```
26+
> import paddlex
27+
>
28+
> model = paddlex.deploy.Predictor(model_dir, use_gpu=True)
29+
> result = model.predict(image_file)
30+
> ```
31+
32+
### predict 接口
33+
34+
```
35+
predict(image, topk=1)
36+
```
37+
38+
单张图片预测接口。
39+
40+
> **参数**
41+
>
42+
> > * **image** (str|np.ndarray): 待预测的图片路径或numpy数组(HWC排列,BGR格式)。
43+
> > * **topk** (int): 图像分类时使用的参数,表示预测前topk个可能的分类
44+
45+
### batch_predict 接口
46+
```
47+
batch_predict(image_list, topk=1, thread_num=2)
48+
```
49+
批量图片预测接口。
50+
51+
> **参数**
52+
>
53+
> > * **image_list** (list|tuple): 对列表(或元组)中的图像同时进行预测,列表中的元素可以是图像路径或numpy数组(HWC排列,BGR格式)。
54+
> > * **topk** (int): 图像分类时使用的参数,表示预测前topk个可能的分类。
55+
> > * **thread_num** (int): 并发执行各图像预处理时的线程数。

docs/apis/models/classification.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ predict(self, img_file, transforms=None, topk=5)
8181
### batch_predict
8282

8383
```python
84-
batch_predict(self, img_file_list, transforms=None, topk=5)
84+
batch_predict(self, img_file_list, transforms=None, topk=5, thread_num=2)
8585
```
8686

8787
> 分类模型批量预测接口。需要注意的是,只有在训练过程中定义了eval_dataset,模型在保存时才会将预测时的图像处理流程保存在`ResNet50.test_transforms``ResNet50.eval_transforms`中。如未在训练时定义eval_dataset,那在调用预测`predict`接口时,用户需要再重新定义test_transforms传入给`predict`接口。
@@ -91,6 +91,7 @@ batch_predict(self, img_file_list, transforms=None, topk=5)
9191
> > - **img_file_list** (list|tuple): 对列表(或元组)中的图像同时进行预测,列表中的元素可以是图像路径或numpy数组(HWC排列,BGR格式)。
9292
> > - **transforms** (paddlex.cls.transforms): 数据预处理操作。
9393
> > - **topk** (int): 预测时前k个最大值。
94+
> > - **thread_num** (int): 并发执行各图像预处理时的线程数。
9495
9596
> **返回值**
9697
>

docs/apis/models/detection.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ predict(self, img_file, transforms=None)
9898
### batch_predict
9999

100100
```python
101-
batch_predict(self, img_file_list, transforms=None)
101+
batch_predict(self, img_file_list, transforms=None, thread_num=2)
102102
```
103103

104104
> YOLOv3模型批量预测接口。需要注意的是,只有在训练过程中定义了eval_dataset,模型在保存时才会将预测时的图像处理流程保存在`YOLOv3.test_transforms``YOLOv3.eval_transforms`中。如未在训练时定义eval_dataset,那在调用预测`predict`接口时,用户需要再重新定义`test_transforms`传入给`predict`接口
@@ -107,6 +107,7 @@ batch_predict(self, img_file_list, transforms=None)
107107
>
108108
> > - **img_file_list** (str|np.ndarray): 对列表(或元组)中的图像同时进行预测,列表中的元素是预测图像路径或numpy数组(HWC排列,BGR格式)。
109109
> > - **transforms** (paddlex.det.transforms): 数据预处理操作。
110+
> > - **thread_num** (int): 并发执行各图像预处理时的线程数。
110111
>
111112
> **返回值**
112113
>
@@ -202,7 +203,7 @@ predict(self, img_file, transforms=None)
202203
### batch_predict
203204

204205
```python
205-
batch_predict(self, img_file_list, transforms=None)
206+
batch_predict(self, img_file_list, transforms=None, thread_num=2)
206207
```
207208

208209
> FasterRCNN模型批量预测接口。需要注意的是,只有在训练过程中定义了eval_dataset,模型在保存时才会将预测时的图像处理流程保存在`FasterRCNN.test_transforms``FasterRCNN.eval_transforms`中。如未在训练时定义eval_dataset,那在调用预测`predict`接口时,用户需要再重新定义test_transforms传入给`predict`接口。
@@ -211,6 +212,7 @@ batch_predict(self, img_file_list, transforms=None)
211212
>
212213
> > - **img_file_list** (list|tuple): 对列表(或元组)中的图像同时进行预测,列表中的元素是预测图像路径或numpy数组(HWC排列,BGR格式)。
213214
> > - **transforms** (paddlex.det.transforms): 数据预处理操作。
215+
> > - **thread_num** (int): 并发执行各图像预处理时的线程数。
214216
>
215217
> **返回值**
216218
>

docs/apis/models/instance_segmentation.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ predict(self, img_file, transforms=None)
8888
#### batch_predict
8989

9090
```python
91-
batch_predict(self, img_file_list, transforms=None)
91+
batch_predict(self, img_file_list, transforms=None, thread_num=2)
9292
```
9393

9494
> MaskRCNN模型批量预测接口。需要注意的是,只有在训练过程中定义了eval_dataset,模型在保存时才会将预测时的图像处理流程保存在FasterRCNN.test_transforms和FasterRCNN.eval_transforms中。如未在训练时定义eval_dataset,那在调用预测predict接口时,用户需要再重新定义test_transforms传入给predict接口。
@@ -97,6 +97,7 @@ batch_predict(self, img_file_list, transforms=None)
9797
>
9898
> > - **img_file_list** (list|tuple): 对列表(或元组)中的图像同时进行预测,列表中的元素可以是预测图像路径或numpy数组(HWC排列,BGR格式)。
9999
> > - **transforms** (paddlex.det.transforms): 数据预处理操作。
100+
> > - **thread_num** (int): 并发执行各图像预处理时的线程数。
100101
>
101102
> **返回值**
102103
>

docs/apis/models/semantic_segmentation.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ predict(self, img_file, transforms=None):
8585
> >
8686
> > - **img_file** (str|np.ndarray): 预测图像路径或numpy数组(HWC排列,BGR格式)。
8787
> > - **transforms** (paddlex.seg.transforms): 数据预处理操作。
88-
88+
> > - **thread_num** (int): 并发执行各图像预处理时的线程数。
8989
> **返回值**
9090
> >
9191
> > - **dict**: 包含关键字'label_map'和'score_map', 'label_map'存储预测结果灰度图,像素值表示对应的类别,'score_map'存储各类别的概率,shape=(h, w, num_classes)。

docs/apis/transforms/cls_transforms.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,7 @@ paddlex.cls.transforms.RandomDistort(brightness_range=0.9, brightness_prob=0.5,
122122
* **hue_range** (int): 色调因子的范围。默认为18。
123123
* **hue_prob** (float): 随机调整色调的概率。默认为0.5。
124124

125+
<!--
125126
## ComposedClsTransforms
126127
```python
127128
paddlex.cls.transforms.ComposedClsTransforms(mode, crop_size=[224, 224], mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225], random_horizontal_flip=True)
@@ -183,3 +184,4 @@ eval_transforms = transforms.Composed([
183184
transforms.Normalize()
184185
])
185186
```
187+
-->

docs/apis/transforms/det_transforms.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -168,6 +168,7 @@ paddlex.det.transforms.RandomCrop(aspect_ratio=[.5, 2.], thresholds=[.0, .1, .3,
168168
* **allow_no_crop** (bool): 是否允许未进行裁剪。默认值为True。
169169
* **cover_all_box** (bool): 是否要求所有的真实标注框都必须在裁剪区域内。默认值为False。
170170

171+
<!--
171172
## ComposedRCNNTransforms
172173
```python
173174
paddlex.det.transforms.ComposedRCNNTransforms(mode, min_max_size=[224, 224], mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225], random_horizontal_flip=True)
@@ -302,3 +303,4 @@ eval_transforms = transforms.Composed([
302303
transforms.Normalize()
303304
])
304305
```
306+
-->

docs/apis/transforms/seg_transforms.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -167,6 +167,7 @@ paddlex.seg.transforms.RandomDistort(brightness_range=0.5, brightness_prob=0.5,
167167
* **hue_range** (int): 色调因子的范围。默认为18。
168168
* **hue_prob** (float): 随机调整色调的概率。默认为0.5。
169169

170+
<!--
170171
## ComposedSegTransforms
171172
```python
172173
paddlex.det.transforms.ComposedSegTransforms(mode, min_max_size=[400, 600], train_crop_shape=[769, 769], mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225], random_horizontal_flip=True)
@@ -228,3 +229,4 @@ eval_transforms = transforms.Composed([
228229
transforms.Normalize()
229230
])
230231
```
232+
-->

0 commit comments

Comments
 (0)