Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
PaddleX
提交
25d5b693
P
PaddleX
项目概览
PaddlePaddle
/
PaddleX
通知
138
Star
4
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
43
列表
看板
标记
里程碑
合并请求
5
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleX
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
43
Issue
43
列表
看板
标记
里程碑
合并请求
5
合并请求
5
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
25d5b693
编写于
7月 12, 2020
作者:
J
jiangjiajun
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update tutorials
上级
4c9e2a62
变更
22
隐藏空白更改
内联
并排
Showing
22 changed file
with
212 addition
and
29 deletion
+212
-29
docs/apis/datasets.md
docs/apis/datasets.md
+8
-8
docs/quick_start.md
docs/quick_start.md
+9
-7
tutorials/train/image_classification/alexnet.py
tutorials/train/image_classification/alexnet.py
+11
-1
tutorials/train/image_classification/mobilenetv2.py
tutorials/train/image_classification/mobilenetv2.py
+9
-0
tutorials/train/image_classification/mobilenetv3_small_ssld.py
...ials/train/image_classification/mobilenetv3_small_ssld.py
+9
-0
tutorials/train/image_classification/resnet50_vd_ssld.py
tutorials/train/image_classification/resnet50_vd_ssld.py
+9
-0
tutorials/train/image_classification/shufflenetv2.py
tutorials/train/image_classification/shufflenetv2.py
+9
-0
tutorials/train/instance_segmentation/mask_rcnn_hrnet_fpn.py
tutorials/train/instance_segmentation/mask_rcnn_hrnet_fpn.py
+9
-1
tutorials/train/instance_segmentation/mask_rcnn_r18_fpn.py
tutorials/train/instance_segmentation/mask_rcnn_r18_fpn.py
+9
-1
tutorials/train/instance_segmentation/mask_rcnn_r50_fpn.py
tutorials/train/instance_segmentation/mask_rcnn_r50_fpn.py
+9
-1
tutorials/train/object_detection/faster_rcnn_hrnet_fpn.py
tutorials/train/object_detection/faster_rcnn_hrnet_fpn.py
+9
-1
tutorials/train/object_detection/faster_rcnn_r18_fpn.py
tutorials/train/object_detection/faster_rcnn_r18_fpn.py
+12
-0
tutorials/train/object_detection/faster_rcnn_r50_fpn.py
tutorials/train/object_detection/faster_rcnn_r50_fpn.py
+12
-0
tutorials/train/object_detection/yolov3_darknet53.py
tutorials/train/object_detection/yolov3_darknet53.py
+11
-0
tutorials/train/object_detection/yolov3_mobilenetv1.py
tutorials/train/object_detection/yolov3_mobilenetv1.py
+11
-0
tutorials/train/object_detection/yolov3_mobilenetv3.py
tutorials/train/object_detection/yolov3_mobilenetv3.py
+11
-0
tutorials/train/semantic_segmentation/deeplabv3p_mobilenetv2.py
...als/train/semantic_segmentation/deeplabv3p_mobilenetv2.py
+10
-1
tutorials/train/semantic_segmentation/deeplabv3p_mobilenetv2_x0.25.py
...ain/semantic_segmentation/deeplabv3p_mobilenetv2_x0.25.py
+9
-1
tutorials/train/semantic_segmentation/deeplabv3p_xception65.py
...ials/train/semantic_segmentation/deeplabv3p_xception65.py
+9
-1
tutorials/train/semantic_segmentation/fast_scnn.py
tutorials/train/semantic_segmentation/fast_scnn.py
+9
-4
tutorials/train/semantic_segmentation/hrnet.py
tutorials/train/semantic_segmentation/hrnet.py
+9
-1
tutorials/train/semantic_segmentation/unet.py
tutorials/train/semantic_segmentation/unet.py
+9
-1
未找到文件。
docs/apis/datasets.md
浏览文件 @
25d5b693
...
@@ -7,7 +7,7 @@ paddlex.datasets.ImageNet(data_dir, file_list, label_list, transforms=None, num_
...
@@ -7,7 +7,7 @@ paddlex.datasets.ImageNet(data_dir, file_list, label_list, transforms=None, num_
```
```
读取ImageNet格式的分类数据集,并对样本进行相应的处理。ImageNet数据集格式的介绍可查看文档:
[
数据集格式说明
](
../data/format/index.html
)
读取ImageNet格式的分类数据集,并对样本进行相应的处理。ImageNet数据集格式的介绍可查看文档:
[
数据集格式说明
](
../data/format/index.html
)
示例:
[
代码文件
](
https://github.com/PaddlePaddle/PaddleX/blob/develop/tutorials/train/
classification/mobilenetv2.py#L25
)
示例:
[
代码文件
](
https://github.com/PaddlePaddle/PaddleX/blob/develop/tutorials/train/
image_classification/mobilenetv2.py
)
> **参数**
> **参数**
...
@@ -20,15 +20,15 @@ paddlex.datasets.ImageNet(data_dir, file_list, label_list, transforms=None, num_
...
@@ -20,15 +20,15 @@ paddlex.datasets.ImageNet(data_dir, file_list, label_list, transforms=None, num_
> > * **parallel_method** (str): 数据集中样本在预处理过程中并行处理的方式,支持'thread'线程和'process'进程两种方式。默认为'process'(Windows和Mac下会强制使用thread,该参数无效)。
> > * **parallel_method** (str): 数据集中样本在预处理过程中并行处理的方式,支持'thread'线程和'process'进程两种方式。默认为'process'(Windows和Mac下会强制使用thread,该参数无效)。
> > * **shuffle** (bool): 是否需要对数据集中样本打乱顺序。默认为False。
> > * **shuffle** (bool): 是否需要对数据集中样本打乱顺序。默认为False。
## paddlex.datasets.
PascalVOC
## paddlex.datasets.
VOCDetection
> **用于目标检测模型**
> **用于目标检测模型**
```
```
paddlex.datasets.
PascalVOC
(data_dir, file_list, label_list, transforms=None, num_workers=‘auto’, buffer_size=100, parallel_method='thread', shuffle=False)
paddlex.datasets.
VOCDetection
(data_dir, file_list, label_list, transforms=None, num_workers=‘auto’, buffer_size=100, parallel_method='thread', shuffle=False)
```
```
> 读取PascalVOC格式的检测数据集,并对样本进行相应的处理。PascalVOC数据集格式的介绍可查看文档:[数据集格式说明](../data/format/index.html)
> 读取PascalVOC格式的检测数据集,并对样本进行相应的处理。PascalVOC数据集格式的介绍可查看文档:[数据集格式说明](../data/format/index.html)
> 示例:[代码文件](https://github.com/PaddlePaddle/PaddleX/blob/develop/tutorials/train/
detection/yolov3_darknet53.py#L29
)
> 示例:[代码文件](https://github.com/PaddlePaddle/PaddleX/blob/develop/tutorials/train/
object_detection/yolov3_darknet53.py
)
> **参数**
> **参数**
...
@@ -41,15 +41,15 @@ paddlex.datasets.PascalVOC(data_dir, file_list, label_list, transforms=None, num
...
@@ -41,15 +41,15 @@ paddlex.datasets.PascalVOC(data_dir, file_list, label_list, transforms=None, num
> > * **parallel_method** (str): 数据集中样本在预处理过程中并行处理的方式,支持'thread'线程和'process'进程两种方式。默认为'process'(Windows和Mac下会强制使用thread,该参数无效)。
> > * **parallel_method** (str): 数据集中样本在预处理过程中并行处理的方式,支持'thread'线程和'process'进程两种方式。默认为'process'(Windows和Mac下会强制使用thread,该参数无效)。
> > * **shuffle** (bool): 是否需要对数据集中样本打乱顺序。默认为False。
> > * **shuffle** (bool): 是否需要对数据集中样本打乱顺序。默认为False。
## paddlex.datasets.
MSCOCO
## paddlex.datasets.
CocoDetection
> **用于实例分割/目标检测模型**
> **用于实例分割/目标检测模型**
```
```
paddlex.datasets.
MSCOCO
(data_dir, ann_file, transforms=None, num_workers='auto', buffer_size=100, parallel_method='thread', shuffle=False)
paddlex.datasets.
CocoDetection
(data_dir, ann_file, transforms=None, num_workers='auto', buffer_size=100, parallel_method='thread', shuffle=False)
```
```
> 读取MSCOCO格式的检测数据集,并对样本进行相应的处理,该格式的数据集同样可以应用到实例分割模型的训练中。MSCOCO数据集格式的介绍可查看文档:[数据集格式说明](../data/format/index.html)
> 读取MSCOCO格式的检测数据集,并对样本进行相应的处理,该格式的数据集同样可以应用到实例分割模型的训练中。MSCOCO数据集格式的介绍可查看文档:[数据集格式说明](../data/format/index.html)
> 示例:[代码文件](https://github.com/PaddlePaddle/PaddleX/blob/develop/tutorials/train/
detection/mask_rcnn_r50_fpn.py#L27
)
> 示例:[代码文件](https://github.com/PaddlePaddle/PaddleX/blob/develop/tutorials/train/
instance_segmentation/mask_rcnn_r50_fpn.py
)
> **参数**
> **参数**
...
@@ -69,7 +69,7 @@ paddlex.datasets.SegDataset(data_dir, file_list, label_list, transforms=None, nu
...
@@ -69,7 +69,7 @@ paddlex.datasets.SegDataset(data_dir, file_list, label_list, transforms=None, nu
> 读取语义分割任务数据集,并对样本进行相应的处理。语义分割任务数据集格式的介绍可查看文档:[数据集格式说明](../data/format/index.html)
> 读取语义分割任务数据集,并对样本进行相应的处理。语义分割任务数据集格式的介绍可查看文档:[数据集格式说明](../data/format/index.html)
> 示例:[代码文件](https://github.com/PaddlePaddle/PaddleX/blob/develop/tutorials/train/se
gmentation/unet.py#L27
)
> 示例:[代码文件](https://github.com/PaddlePaddle/PaddleX/blob/develop/tutorials/train/se
mantic_segmentation/unet.py
)
> **参数**
> **参数**
...
...
docs/quick_start.md
浏览文件 @
25d5b693
# 10分钟快速上手使用
# 10分钟快速上手使用
本文档在一个小数据集上展示了如何通过PaddleX进行训练,您可以阅读PaddleX的
**使用教程**
来了解更多模型任务的训练使用方式。本示例同步在AIStudio上,可直接
[
在线体验模型训练
](
https://aistudio.baidu.com/aistudio/projectdetail/439860
)
本文档在一个小数据集上展示了如何通过PaddleX进行训练。本示例同步在AIStudio上,可直接
[
在线体验模型训练
](
https://aistudio.baidu.com/aistudio/projectdetail/450220
)
。
本示例代码源于Github
[
tutorials/train/classification/mobilenetv3_small_ssld.py
](
https://github.com/PaddlePaddle/PaddleX/blob/develop/tutorials/train/image_classification/mobilenetv3_small_ssld.py
)
,用户可自行下载至本地运行。
PaddleX中的所有模型训练跟随以下3个步骤,即可快速完成训练代码开发!
PaddleX中的所有模型训练跟随以下3个步骤,即可快速完成训练代码开发!
...
@@ -35,7 +37,7 @@ tar xzvf vegetables_cls.tar.gz
...
@@ -35,7 +37,7 @@ tar xzvf vegetables_cls.tar.gz
<a
name=
"定义训练验证图像处理流程transforms"
></a>
<a
name=
"定义训练验证图像处理流程transforms"
></a>
**3. 定义训练/验证图像处理流程transforms**
**3. 定义训练/验证图像处理流程transforms**
由于训练时数据增强操作的加入,因此模型在训练和验证过程中,数据处理流程需要分别进行定义。如下所示,代码在
`train_transforms`
中加入了
[
RandomCrop
](
apis/transforms/cls_transforms.html#
RandomCrop
)
和
[
RandomHorizontalFlip
](
apis/transforms/cls_transforms.html#RandomHorizontalF
lip
)
两种数据增强方式, 更多方法可以参考
[
数据增强文档
](
apis/transforms/augment.md
)
。
由于训练时数据增强操作的加入,因此模型在训练和验证过程中,数据处理流程需要分别进行定义。如下所示,代码在
`train_transforms`
中加入了
[
RandomCrop
](
apis/transforms/cls_transforms.html#
randomcrop
)
和
[
RandomHorizontalFlip
](
apis/transforms/cls_transforms.html#randomhorizontalf
lip
)
两种数据增强方式, 更多方法可以参考
[
数据增强文档
](
apis/transforms/augment.md
)
。
```
```
from paddlex.cls import transforms
from paddlex.cls import transforms
train_transforms = transforms.Compose([
train_transforms = transforms.Compose([
...
@@ -54,7 +56,7 @@ eval_transforms = transforms.Compose([
...
@@ -54,7 +56,7 @@ eval_transforms = transforms.Compose([
**4. 定义`dataset`加载图像分类数据集**
**4. 定义`dataset`加载图像分类数据集**
定义数据集,
`pdx.datasets.ImageNet`
表示读取ImageNet格式的分类数据集
定义数据集,
`pdx.datasets.ImageNet`
表示读取ImageNet格式的分类数据集
-
[
paddlex.datasets.ImageNet接口说明
](
apis/datasets
/classification
.md
)
-
[
paddlex.datasets.ImageNet接口说明
](
apis/datasets.md
)
-
[
ImageNet数据格式说明
](
data/format/classification.md
)
-
[
ImageNet数据格式说明
](
data/format/classification.md
)
```
```
...
@@ -118,7 +120,7 @@ Predict Result: Predict Result: [{'score': 0.9999393, 'category': 'bocai', 'cate
...
@@ -118,7 +120,7 @@ Predict Result: Predict Result: [{'score': 0.9999393, 'category': 'bocai', 'cate
<a
name=
"更多使用教程"
></a>
<a
name=
"更多使用教程"
></a>
**更多使用教程**
**更多使用教程**
-
1.
[
目标检测模型训练
](
t
utorials/train/
detection.md
)
-
1.
[
目标检测模型训练
](
t
rain/object_
detection.md
)
-
2.
[
语义分割模型训练
](
t
utorials/train/
segmentation.md
)
-
2.
[
语义分割模型训练
](
t
rain/semantic_
segmentation.md
)
-
3.
[
实例分割模型训练
](
t
utorials/t
rain/instance_segmentation.md
)
-
3.
[
实例分割模型训练
](
train/instance_segmentation.md
)
-
4.
[
模型太大,想要更小的模型,试试模型裁剪吧!
](
tutorials/compress/classification.md
)
-
4.
[
模型太大,想要更小的模型,试试模型裁剪吧!
](
https://github.com/PaddlePaddle/PaddleX/tree/develop/tutorials/compress
)
tutorials/train/image_classification/alexnet.py
浏览文件 @
25d5b693
# 环境变量配置,用于控制是否使用GPU
# 说明文档:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html#gpu
import
os
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
from
paddlex.cls
import
transforms
from
paddlex.cls
import
transforms
import
paddlex
as
pdx
import
paddlex
as
pdx
...
@@ -6,6 +11,7 @@ veg_dataset = 'https://bj.bcebos.com/paddlex/datasets/vegetables_cls.tar.gz'
...
@@ -6,6 +11,7 @@ veg_dataset = 'https://bj.bcebos.com/paddlex/datasets/vegetables_cls.tar.gz'
pdx
.
utils
.
download_and_decompress
(
veg_dataset
,
path
=
'./'
)
pdx
.
utils
.
download_and_decompress
(
veg_dataset
,
path
=
'./'
)
# 定义训练和验证时的transforms
# 定义训练和验证时的transforms
# API说明https://paddlex.readthedocs.io/zh_CN/develop/apis/transforms/cls_transforms.html
train_transforms
=
transforms
.
Compose
([
train_transforms
=
transforms
.
Compose
([
transforms
.
RandomCrop
(
crop_size
=
224
),
transforms
.
RandomCrop
(
crop_size
=
224
),
transforms
.
RandomHorizontalFlip
(),
transforms
.
RandomHorizontalFlip
(),
...
@@ -18,6 +24,7 @@ eval_transforms = transforms.Compose([
...
@@ -18,6 +24,7 @@ eval_transforms = transforms.Compose([
])
])
# 定义训练和验证所用的数据集
# 定义训练和验证所用的数据集
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-imagenet
train_dataset
=
pdx
.
datasets
.
ImageNet
(
train_dataset
=
pdx
.
datasets
.
ImageNet
(
data_dir
=
'vegetables_cls'
,
data_dir
=
'vegetables_cls'
,
file_list
=
'vegetables_cls/train_list.txt'
,
file_list
=
'vegetables_cls/train_list.txt'
,
...
@@ -33,11 +40,14 @@ eval_dataset = pdx.datasets.ImageNet(
...
@@ -33,11 +40,14 @@ eval_dataset = pdx.datasets.ImageNet(
# 初始化模型,并进行训练
# 初始化模型,并进行训练
# 可使用VisualDL查看训练指标
# 可使用VisualDL查看训练指标
# VisualDL启动方式: visualdl --logdir output/mobilenetv2/vdl_log --port 8001
# VisualDL启动方式: visualdl --logdir output/mobilenetv2/vdl_log --port 8001
# 浏览器打开 https://0.0.0.0:8001即可
# 浏览器打开 https://0.0.0.0:8001
或https://localhost:8001
即可
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
model
=
pdx
.
cls
.
AlexNet
(
num_classes
=
len
(
train_dataset
.
labels
))
model
=
pdx
.
cls
.
AlexNet
(
num_classes
=
len
(
train_dataset
.
labels
))
# AlexNet需要指定确定的input_shape
# AlexNet需要指定确定的input_shape
model
.
fixed_input_shape
=
[
224
,
224
]
model
.
fixed_input_shape
=
[
224
,
224
]
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/classification.html#train
# 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html
model
.
train
(
model
.
train
(
num_epochs
=
10
,
num_epochs
=
10
,
train_dataset
=
train_dataset
,
train_dataset
=
train_dataset
,
...
...
tutorials/train/image_classification/mobilenetv2.py
浏览文件 @
25d5b693
# 环境变量配置,用于控制是否使用GPU
# 说明文档:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html#gpu
import
os
import
os
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
from
paddlex.cls
import
transforms
from
paddlex.cls
import
transforms
import
paddlex
as
pdx
import
paddlex
as
pdx
...
@@ -7,6 +11,7 @@ veg_dataset = 'https://bj.bcebos.com/paddlex/datasets/vegetables_cls.tar.gz'
...
@@ -7,6 +11,7 @@ veg_dataset = 'https://bj.bcebos.com/paddlex/datasets/vegetables_cls.tar.gz'
pdx
.
utils
.
download_and_decompress
(
veg_dataset
,
path
=
'./'
)
pdx
.
utils
.
download_and_decompress
(
veg_dataset
,
path
=
'./'
)
# 定义训练和验证时的transforms
# 定义训练和验证时的transforms
# API说明https://paddlex.readthedocs.io/zh_CN/develop/apis/transforms/cls_transforms.html
train_transforms
=
transforms
.
Compose
([
train_transforms
=
transforms
.
Compose
([
transforms
.
RandomCrop
(
crop_size
=
224
),
transforms
.
RandomCrop
(
crop_size
=
224
),
transforms
.
RandomHorizontalFlip
(),
transforms
.
RandomHorizontalFlip
(),
...
@@ -19,6 +24,7 @@ eval_transforms = transforms.Compose([
...
@@ -19,6 +24,7 @@ eval_transforms = transforms.Compose([
])
])
# 定义训练和验证所用的数据集
# 定义训练和验证所用的数据集
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-imagenet
train_dataset
=
pdx
.
datasets
.
ImageNet
(
train_dataset
=
pdx
.
datasets
.
ImageNet
(
data_dir
=
'vegetables_cls'
,
data_dir
=
'vegetables_cls'
,
file_list
=
'vegetables_cls/train_list.txt'
,
file_list
=
'vegetables_cls/train_list.txt'
,
...
@@ -37,6 +43,9 @@ eval_dataset = pdx.datasets.ImageNet(
...
@@ -37,6 +43,9 @@ eval_dataset = pdx.datasets.ImageNet(
# 浏览器打开 https://0.0.0.0:8001即可
# 浏览器打开 https://0.0.0.0:8001即可
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
model
=
pdx
.
cls
.
MobileNetV2
(
num_classes
=
len
(
train_dataset
.
labels
))
model
=
pdx
.
cls
.
MobileNetV2
(
num_classes
=
len
(
train_dataset
.
labels
))
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/classification.html#train
# 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html
model
.
train
(
model
.
train
(
num_epochs
=
10
,
num_epochs
=
10
,
train_dataset
=
train_dataset
,
train_dataset
=
train_dataset
,
...
...
tutorials/train/image_classification/mobilenetv3_small_ssld.py
浏览文件 @
25d5b693
# 环境变量配置,用于控制是否使用GPU
# 说明文档:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html#gpu
import
os
import
os
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
from
paddlex.cls
import
transforms
from
paddlex.cls
import
transforms
import
paddlex
as
pdx
import
paddlex
as
pdx
...
@@ -7,6 +11,7 @@ veg_dataset = 'https://bj.bcebos.com/paddlex/datasets/vegetables_cls.tar.gz'
...
@@ -7,6 +11,7 @@ veg_dataset = 'https://bj.bcebos.com/paddlex/datasets/vegetables_cls.tar.gz'
pdx
.
utils
.
download_and_decompress
(
veg_dataset
,
path
=
'./'
)
pdx
.
utils
.
download_and_decompress
(
veg_dataset
,
path
=
'./'
)
# 定义训练和验证时的transforms
# 定义训练和验证时的transforms
# API说明https://paddlex.readthedocs.io/zh_CN/develop/apis/transforms/cls_transforms.html
train_transforms
=
transforms
.
Compose
([
train_transforms
=
transforms
.
Compose
([
transforms
.
RandomCrop
(
crop_size
=
224
),
transforms
.
RandomCrop
(
crop_size
=
224
),
transforms
.
RandomHorizontalFlip
(),
transforms
.
RandomHorizontalFlip
(),
...
@@ -19,6 +24,7 @@ eval_transforms = transforms.Compose([
...
@@ -19,6 +24,7 @@ eval_transforms = transforms.Compose([
])
])
# 定义训练和验证所用的数据集
# 定义训练和验证所用的数据集
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-imagenet
train_dataset
=
pdx
.
datasets
.
ImageNet
(
train_dataset
=
pdx
.
datasets
.
ImageNet
(
data_dir
=
'vegetables_cls'
,
data_dir
=
'vegetables_cls'
,
file_list
=
'vegetables_cls/train_list.txt'
,
file_list
=
'vegetables_cls/train_list.txt'
,
...
@@ -37,6 +43,9 @@ eval_dataset = pdx.datasets.ImageNet(
...
@@ -37,6 +43,9 @@ eval_dataset = pdx.datasets.ImageNet(
# 浏览器打开 https://0.0.0.0:8001即可
# 浏览器打开 https://0.0.0.0:8001即可
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
model
=
pdx
.
cls
.
MobileNetV3_small_ssld
(
num_classes
=
len
(
train_dataset
.
labels
))
model
=
pdx
.
cls
.
MobileNetV3_small_ssld
(
num_classes
=
len
(
train_dataset
.
labels
))
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-imagenet
# 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html
model
.
train
(
model
.
train
(
num_epochs
=
10
,
num_epochs
=
10
,
train_dataset
=
train_dataset
,
train_dataset
=
train_dataset
,
...
...
tutorials/train/image_classification/resnet50_vd_ssld.py
浏览文件 @
25d5b693
# 环境变量配置,用于控制是否使用GPU
# 说明文档:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html#gpu
import
os
import
os
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
from
paddlex.cls
import
transforms
from
paddlex.cls
import
transforms
import
paddlex
as
pdx
import
paddlex
as
pdx
...
@@ -7,6 +11,7 @@ veg_dataset = 'https://bj.bcebos.com/paddlex/datasets/vegetables_cls.tar.gz'
...
@@ -7,6 +11,7 @@ veg_dataset = 'https://bj.bcebos.com/paddlex/datasets/vegetables_cls.tar.gz'
pdx
.
utils
.
download_and_decompress
(
veg_dataset
,
path
=
'./'
)
pdx
.
utils
.
download_and_decompress
(
veg_dataset
,
path
=
'./'
)
# 定义训练和验证时的transforms
# 定义训练和验证时的transforms
# API说明https://paddlex.readthedocs.io/zh_CN/develop/apis/transforms/cls_transforms.html
train_transforms
=
transforms
.
Compose
([
train_transforms
=
transforms
.
Compose
([
transforms
.
RandomCrop
(
crop_size
=
224
),
transforms
.
RandomCrop
(
crop_size
=
224
),
transforms
.
RandomHorizontalFlip
(),
transforms
.
RandomHorizontalFlip
(),
...
@@ -19,6 +24,7 @@ eval_transforms = transforms.Compose([
...
@@ -19,6 +24,7 @@ eval_transforms = transforms.Compose([
])
])
# 定义训练和验证所用的数据集
# 定义训练和验证所用的数据集
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-imagenet
train_dataset
=
pdx
.
datasets
.
ImageNet
(
train_dataset
=
pdx
.
datasets
.
ImageNet
(
data_dir
=
'vegetables_cls'
,
data_dir
=
'vegetables_cls'
,
file_list
=
'vegetables_cls/train_list.txt'
,
file_list
=
'vegetables_cls/train_list.txt'
,
...
@@ -37,6 +43,9 @@ eval_dataset = pdx.datasets.ImageNet(
...
@@ -37,6 +43,9 @@ eval_dataset = pdx.datasets.ImageNet(
# 浏览器打开 https://0.0.0.0:8001即可
# 浏览器打开 https://0.0.0.0:8001即可
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
model
=
pdx
.
cls
.
ResNet50_vd_ssld
(
num_classes
=
len
(
train_dataset
.
labels
))
model
=
pdx
.
cls
.
ResNet50_vd_ssld
(
num_classes
=
len
(
train_dataset
.
labels
))
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/classification.html#train
# 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html
model
.
train
(
model
.
train
(
num_epochs
=
10
,
num_epochs
=
10
,
train_dataset
=
train_dataset
,
train_dataset
=
train_dataset
,
...
...
tutorials/train/image_classification/shufflenetv2.py
浏览文件 @
25d5b693
# 环境变量配置,用于控制是否使用GPU
# 说明文档:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html#gpu
import
os
import
os
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
from
paddlex.cls
import
transforms
from
paddlex.cls
import
transforms
import
paddlex
as
pdx
import
paddlex
as
pdx
...
@@ -7,6 +11,7 @@ veg_dataset = 'https://bj.bcebos.com/paddlex/datasets/vegetables_cls.tar.gz'
...
@@ -7,6 +11,7 @@ veg_dataset = 'https://bj.bcebos.com/paddlex/datasets/vegetables_cls.tar.gz'
pdx
.
utils
.
download_and_decompress
(
veg_dataset
,
path
=
'./'
)
pdx
.
utils
.
download_and_decompress
(
veg_dataset
,
path
=
'./'
)
# 定义训练和验证时的transforms
# 定义训练和验证时的transforms
# API说明https://paddlex.readthedocs.io/zh_CN/develop/apis/transforms/cls_transforms.html
train_transforms
=
transforms
.
Compose
([
train_transforms
=
transforms
.
Compose
([
transforms
.
RandomCrop
(
crop_size
=
224
),
transforms
.
RandomCrop
(
crop_size
=
224
),
transforms
.
RandomHorizontalFlip
(),
transforms
.
RandomHorizontalFlip
(),
...
@@ -19,6 +24,7 @@ eval_transforms = transforms.Compose([
...
@@ -19,6 +24,7 @@ eval_transforms = transforms.Compose([
])
])
# 定义训练和验证所用的数据集
# 定义训练和验证所用的数据集
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-imagenet
train_dataset
=
pdx
.
datasets
.
ImageNet
(
train_dataset
=
pdx
.
datasets
.
ImageNet
(
data_dir
=
'vegetables_cls'
,
data_dir
=
'vegetables_cls'
,
file_list
=
'vegetables_cls/train_list.txt'
,
file_list
=
'vegetables_cls/train_list.txt'
,
...
@@ -37,6 +43,9 @@ eval_dataset = pdx.datasets.ImageNet(
...
@@ -37,6 +43,9 @@ eval_dataset = pdx.datasets.ImageNet(
# 浏览器打开 https://0.0.0.0:8001即可
# 浏览器打开 https://0.0.0.0:8001即可
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
model
=
pdx
.
cls
.
ShuffleNetV2
(
num_classes
=
len
(
train_dataset
.
labels
))
model
=
pdx
.
cls
.
ShuffleNetV2
(
num_classes
=
len
(
train_dataset
.
labels
))
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/classification.html#train
# 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html
model
.
train
(
model
.
train
(
num_epochs
=
10
,
num_epochs
=
10
,
train_dataset
=
train_dataset
,
train_dataset
=
train_dataset
,
...
...
tutorials/train/instance_segmentation/mask_rcnn_hrnet_fpn.py
浏览文件 @
25d5b693
# 环境变量配置,用于控制是否使用GPU
# 说明文档:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html#gpu
import
os
import
os
# 选择使用0号卡
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
from
paddlex.det
import
transforms
from
paddlex.det
import
transforms
...
@@ -10,6 +11,7 @@ xiaoduxiong_dataset = 'https://bj.bcebos.com/paddlex/datasets/xiaoduxiong_ins_de
...
@@ -10,6 +11,7 @@ xiaoduxiong_dataset = 'https://bj.bcebos.com/paddlex/datasets/xiaoduxiong_ins_de
pdx
.
utils
.
download_and_decompress
(
xiaoduxiong_dataset
,
path
=
'./'
)
pdx
.
utils
.
download_and_decompress
(
xiaoduxiong_dataset
,
path
=
'./'
)
# 定义训练和验证时的transforms
# 定义训练和验证时的transforms
# API说明 https://paddlex.readthedocs.io/zh_CN/develop/apis/transforms/det_transforms.html
train_transforms
=
transforms
.
Compose
([
train_transforms
=
transforms
.
Compose
([
transforms
.
RandomHorizontalFlip
(),
transforms
.
RandomHorizontalFlip
(),
transforms
.
Normalize
(),
transforms
.
Normalize
(),
...
@@ -24,6 +26,7 @@ eval_transforms = transforms.Compose([
...
@@ -24,6 +26,7 @@ eval_transforms = transforms.Compose([
])
])
# 定义训练和验证所用的数据集
# 定义训练和验证所用的数据集
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-cocodetection
train_dataset
=
pdx
.
datasets
.
CocoDetection
(
train_dataset
=
pdx
.
datasets
.
CocoDetection
(
data_dir
=
'xiaoduxiong_ins_det/JPEGImages'
,
data_dir
=
'xiaoduxiong_ins_det/JPEGImages'
,
ann_file
=
'xiaoduxiong_ins_det/train.json'
,
ann_file
=
'xiaoduxiong_ins_det/train.json'
,
...
@@ -41,7 +44,12 @@ eval_dataset = pdx.datasets.CocoDetection(
...
@@ -41,7 +44,12 @@ eval_dataset = pdx.datasets.CocoDetection(
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# num_classes 需要设置为包含背景类的类别数,即: 目标类别数量 + 1
# num_classes 需要设置为包含背景类的类别数,即: 目标类别数量 + 1
num_classes
=
len
(
train_dataset
.
labels
)
+
1
num_classes
=
len
(
train_dataset
.
labels
)
+
1
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/instance_segmentation.html#maskrcnn
model
=
pdx
.
det
.
MaskRCNN
(
num_classes
=
num_classes
,
backbone
=
'HRNet_W18'
)
model
=
pdx
.
det
.
MaskRCNN
(
num_classes
=
num_classes
,
backbone
=
'HRNet_W18'
)
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/instance_segmentation.html#train
# 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html
model
.
train
(
model
.
train
(
num_epochs
=
12
,
num_epochs
=
12
,
train_dataset
=
train_dataset
,
train_dataset
=
train_dataset
,
...
...
tutorials/train/instance_segmentation/mask_rcnn_r18_fpn.py
浏览文件 @
25d5b693
# 环境变量配置,用于控制是否使用GPU
# 说明文档:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html#gpu
import
os
import
os
# 选择使用0号卡
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
from
paddlex.det
import
transforms
from
paddlex.det
import
transforms
...
@@ -10,6 +11,7 @@ xiaoduxiong_dataset = 'https://bj.bcebos.com/paddlex/datasets/xiaoduxiong_ins_de
...
@@ -10,6 +11,7 @@ xiaoduxiong_dataset = 'https://bj.bcebos.com/paddlex/datasets/xiaoduxiong_ins_de
pdx
.
utils
.
download_and_decompress
(
xiaoduxiong_dataset
,
path
=
'./'
)
pdx
.
utils
.
download_and_decompress
(
xiaoduxiong_dataset
,
path
=
'./'
)
# 定义训练和验证时的transforms
# 定义训练和验证时的transforms
# API说明 https://paddlex.readthedocs.io/zh_CN/develop/apis/transforms/det_transforms.html
train_transforms
=
transforms
.
Compose
([
train_transforms
=
transforms
.
Compose
([
transforms
.
RandomHorizontalFlip
(),
transforms
.
RandomHorizontalFlip
(),
transforms
.
Normalize
(),
transforms
.
Normalize
(),
...
@@ -24,6 +26,7 @@ eval_transforms = transforms.Compose([
...
@@ -24,6 +26,7 @@ eval_transforms = transforms.Compose([
])
])
# 定义训练和验证所用的数据集
# 定义训练和验证所用的数据集
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-cocodetection
train_dataset
=
pdx
.
datasets
.
CocoDetection
(
train_dataset
=
pdx
.
datasets
.
CocoDetection
(
data_dir
=
'xiaoduxiong_ins_det/JPEGImages'
,
data_dir
=
'xiaoduxiong_ins_det/JPEGImages'
,
ann_file
=
'xiaoduxiong_ins_det/train.json'
,
ann_file
=
'xiaoduxiong_ins_det/train.json'
,
...
@@ -41,7 +44,12 @@ eval_dataset = pdx.datasets.CocoDetection(
...
@@ -41,7 +44,12 @@ eval_dataset = pdx.datasets.CocoDetection(
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# num_classes 需要设置为包含背景类的类别数,即: 目标类别数量 + 1
# num_classes 需要设置为包含背景类的类别数,即: 目标类别数量 + 1
num_classes
=
len
(
train_dataset
.
labels
)
+
1
num_classes
=
len
(
train_dataset
.
labels
)
+
1
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/instance_segmentation.html#maskrcnn
model
=
pdx
.
det
.
MaskRCNN
(
num_classes
=
num_classes
,
backbone
=
'ResNet18'
)
model
=
pdx
.
det
.
MaskRCNN
(
num_classes
=
num_classes
,
backbone
=
'ResNet18'
)
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/instance_segmentation.html#train
# 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html
model
.
train
(
model
.
train
(
num_epochs
=
12
,
num_epochs
=
12
,
train_dataset
=
train_dataset
,
train_dataset
=
train_dataset
,
...
...
tutorials/train/instance_segmentation/mask_rcnn_r50_fpn.py
浏览文件 @
25d5b693
# 环境变量配置,用于控制是否使用GPU
# 说明文档:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html#gpu
import
os
import
os
# 选择使用0号卡
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
from
paddlex.det
import
transforms
from
paddlex.det
import
transforms
...
@@ -10,6 +11,7 @@ xiaoduxiong_dataset = 'https://bj.bcebos.com/paddlex/datasets/xiaoduxiong_ins_de
...
@@ -10,6 +11,7 @@ xiaoduxiong_dataset = 'https://bj.bcebos.com/paddlex/datasets/xiaoduxiong_ins_de
pdx
.
utils
.
download_and_decompress
(
xiaoduxiong_dataset
,
path
=
'./'
)
pdx
.
utils
.
download_and_decompress
(
xiaoduxiong_dataset
,
path
=
'./'
)
# 定义训练和验证时的transforms
# 定义训练和验证时的transforms
# API说明 https://paddlex.readthedocs.io/zh_CN/develop/apis/transforms/det_transforms.html
train_transforms
=
transforms
.
Compose
([
train_transforms
=
transforms
.
Compose
([
transforms
.
RandomHorizontalFlip
(),
transforms
.
RandomHorizontalFlip
(),
transforms
.
Normalize
(),
transforms
.
Normalize
(),
...
@@ -24,6 +26,7 @@ eval_transforms = transforms.Compose([
...
@@ -24,6 +26,7 @@ eval_transforms = transforms.Compose([
])
])
# 定义训练和验证所用的数据集
# 定义训练和验证所用的数据集
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-cocodetection
train_dataset
=
pdx
.
datasets
.
CocoDetection
(
train_dataset
=
pdx
.
datasets
.
CocoDetection
(
data_dir
=
'xiaoduxiong_ins_det/JPEGImages'
,
data_dir
=
'xiaoduxiong_ins_det/JPEGImages'
,
ann_file
=
'xiaoduxiong_ins_det/train.json'
,
ann_file
=
'xiaoduxiong_ins_det/train.json'
,
...
@@ -41,7 +44,12 @@ eval_dataset = pdx.datasets.CocoDetection(
...
@@ -41,7 +44,12 @@ eval_dataset = pdx.datasets.CocoDetection(
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# num_classes 需要设置为包含背景类的类别数,即: 目标类别数量 + 1
# num_classes 需要设置为包含背景类的类别数,即: 目标类别数量 + 1
num_classes
=
len
(
train_dataset
.
labels
)
+
1
num_classes
=
len
(
train_dataset
.
labels
)
+
1
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/instance_segmentation.html#maskrcnn
model
=
pdx
.
det
.
MaskRCNN
(
num_classes
=
num_classes
,
backbone
=
'ResNet50'
)
model
=
pdx
.
det
.
MaskRCNN
(
num_classes
=
num_classes
,
backbone
=
'ResNet50'
)
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/instance_segmentation.html#train
# 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html
model
.
train
(
model
.
train
(
num_epochs
=
12
,
num_epochs
=
12
,
train_dataset
=
train_dataset
,
train_dataset
=
train_dataset
,
...
...
tutorials/train/object_detection/faster_rcnn_hrnet_fpn.py
浏览文件 @
25d5b693
# 环境变量配置,用于控制是否使用GPU
# 说明文档:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html#gpu
import
os
import
os
# 选择使用0号卡
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
from
paddlex.det
import
transforms
from
paddlex.det
import
transforms
...
@@ -10,6 +11,7 @@ insect_dataset = 'https://bj.bcebos.com/paddlex/datasets/insect_det.tar.gz'
...
@@ -10,6 +11,7 @@ insect_dataset = 'https://bj.bcebos.com/paddlex/datasets/insect_det.tar.gz'
pdx
.
utils
.
download_and_decompress
(
insect_dataset
,
path
=
'./'
)
pdx
.
utils
.
download_and_decompress
(
insect_dataset
,
path
=
'./'
)
# 定义训练和验证时的transforms
# 定义训练和验证时的transforms
# API说明 https://paddlex.readthedocs.io/zh_CN/develop/apis/transforms/det_transforms.html
train_transforms
=
transforms
.
Compose
([
train_transforms
=
transforms
.
Compose
([
transforms
.
RandomHorizontalFlip
(),
transforms
.
RandomHorizontalFlip
(),
transforms
.
Normalize
(),
transforms
.
Normalize
(),
...
@@ -24,6 +26,7 @@ eval_transforms = transforms.Compose([
...
@@ -24,6 +26,7 @@ eval_transforms = transforms.Compose([
])
])
# 定义训练和验证所用的数据集
# 定义训练和验证所用的数据集
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-vocdetection
train_dataset
=
pdx
.
datasets
.
VOCDetection
(
train_dataset
=
pdx
.
datasets
.
VOCDetection
(
data_dir
=
'insect_det'
,
data_dir
=
'insect_det'
,
file_list
=
'insect_det/train_list.txt'
,
file_list
=
'insect_det/train_list.txt'
,
...
@@ -43,7 +46,12 @@ eval_dataset = pdx.datasets.VOCDetection(
...
@@ -43,7 +46,12 @@ eval_dataset = pdx.datasets.VOCDetection(
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# num_classes 需要设置为包含背景类的类别数,即: 目标类别数量 + 1
# num_classes 需要设置为包含背景类的类别数,即: 目标类别数量 + 1
num_classes
=
len
(
train_dataset
.
labels
)
+
1
num_classes
=
len
(
train_dataset
.
labels
)
+
1
# API说明: https://paddlex.readthedocs.io/zh_CN/develop/apis/models/detection.html#paddlex-det-fasterrcnn
model
=
pdx
.
det
.
FasterRCNN
(
num_classes
=
num_classes
,
backbone
=
'HRNet_W18'
)
model
=
pdx
.
det
.
FasterRCNN
(
num_classes
=
num_classes
,
backbone
=
'HRNet_W18'
)
# API说明: https://paddlex.readthedocs.io/zh_CN/develop/apis/models/detection.html#id1
# 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html
model
.
train
(
model
.
train
(
num_epochs
=
12
,
num_epochs
=
12
,
train_dataset
=
train_dataset
,
train_dataset
=
train_dataset
,
...
...
tutorials/train/object_detection/faster_rcnn_r18_fpn.py
浏览文件 @
25d5b693
# 环境变量配置,用于控制是否使用GPU
# 说明文档:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html#gpu
import
os
import
os
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
from
paddlex.det
import
transforms
from
paddlex.det
import
transforms
import
paddlex
as
pdx
import
paddlex
as
pdx
...
@@ -7,6 +11,7 @@ insect_dataset = 'https://bj.bcebos.com/paddlex/datasets/insect_det.tar.gz'
...
@@ -7,6 +11,7 @@ insect_dataset = 'https://bj.bcebos.com/paddlex/datasets/insect_det.tar.gz'
pdx
.
utils
.
download_and_decompress
(
insect_dataset
,
path
=
'./'
)
pdx
.
utils
.
download_and_decompress
(
insect_dataset
,
path
=
'./'
)
# 定义训练和验证时的transforms
# 定义训练和验证时的transforms
# API说明 https://paddlex.readthedocs.io/zh_CN/develop/apis/transforms/det_transforms.html
train_transforms
=
transforms
.
Compose
([
train_transforms
=
transforms
.
Compose
([
transforms
.
RandomHorizontalFlip
(),
transforms
.
RandomHorizontalFlip
(),
transforms
.
Normalize
(),
transforms
.
Normalize
(),
...
@@ -19,7 +24,9 @@ eval_transforms = transforms.Compose([
...
@@ -19,7 +24,9 @@ eval_transforms = transforms.Compose([
transforms
.
ResizeByShort
(
short_size
=
800
,
max_size
=
1333
),
transforms
.
ResizeByShort
(
short_size
=
800
,
max_size
=
1333
),
transforms
.
Padding
(
coarsest_stride
=
32
),
transforms
.
Padding
(
coarsest_stride
=
32
),
])
])
# 定义训练和验证所用的数据集
# 定义训练和验证所用的数据集
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-vocdetection
train_dataset
=
pdx
.
datasets
.
VOCDetection
(
train_dataset
=
pdx
.
datasets
.
VOCDetection
(
data_dir
=
'insect_det'
,
data_dir
=
'insect_det'
,
file_list
=
'insect_det/train_list.txt'
,
file_list
=
'insect_det/train_list.txt'
,
...
@@ -39,7 +46,12 @@ eval_dataset = pdx.datasets.VOCDetection(
...
@@ -39,7 +46,12 @@ eval_dataset = pdx.datasets.VOCDetection(
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# num_classes 需要设置为包含背景类的类别数,即: 目标类别数量 + 1
# num_classes 需要设置为包含背景类的类别数,即: 目标类别数量 + 1
num_classes
=
len
(
train_dataset
.
labels
)
+
1
num_classes
=
len
(
train_dataset
.
labels
)
+
1
# API说明: https://paddlex.readthedocs.io/zh_CN/develop/apis/models/detection.html#paddlex-det-fasterrcnn
model
=
pdx
.
det
.
FasterRCNN
(
num_classes
=
num_classes
,
backbone
=
'ResNet18'
)
model
=
pdx
.
det
.
FasterRCNN
(
num_classes
=
num_classes
,
backbone
=
'ResNet18'
)
# API说明: https://paddlex.readthedocs.io/zh_CN/develop/apis/models/detection.html#id1
# 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html
model
.
train
(
model
.
train
(
num_epochs
=
12
,
num_epochs
=
12
,
train_dataset
=
train_dataset
,
train_dataset
=
train_dataset
,
...
...
tutorials/train/object_detection/faster_rcnn_r50_fpn.py
浏览文件 @
25d5b693
# 环境变量配置,用于控制是否使用GPU
# 说明文档:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html#gpu
import
os
import
os
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
from
paddlex.det
import
transforms
from
paddlex.det
import
transforms
import
paddlex
as
pdx
import
paddlex
as
pdx
...
@@ -7,6 +11,7 @@ insect_dataset = 'https://bj.bcebos.com/paddlex/datasets/insect_det.tar.gz'
...
@@ -7,6 +11,7 @@ insect_dataset = 'https://bj.bcebos.com/paddlex/datasets/insect_det.tar.gz'
pdx
.
utils
.
download_and_decompress
(
insect_dataset
,
path
=
'./'
)
pdx
.
utils
.
download_and_decompress
(
insect_dataset
,
path
=
'./'
)
# 定义训练和验证时的transforms
# 定义训练和验证时的transforms
# API说明 https://paddlex.readthedocs.io/zh_CN/develop/apis/transforms/det_transforms.html
train_transforms
=
transforms
.
Compose
([
train_transforms
=
transforms
.
Compose
([
transforms
.
RandomHorizontalFlip
(),
transforms
.
RandomHorizontalFlip
(),
transforms
.
Normalize
(),
transforms
.
Normalize
(),
...
@@ -19,7 +24,9 @@ eval_transforms = transforms.Compose([
...
@@ -19,7 +24,9 @@ eval_transforms = transforms.Compose([
transforms
.
ResizeByShort
(
short_size
=
800
,
max_size
=
1333
),
transforms
.
ResizeByShort
(
short_size
=
800
,
max_size
=
1333
),
transforms
.
Padding
(
coarsest_stride
=
32
),
transforms
.
Padding
(
coarsest_stride
=
32
),
])
])
# 定义训练和验证所用的数据集
# 定义训练和验证所用的数据集
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-vocdetection
train_dataset
=
pdx
.
datasets
.
VOCDetection
(
train_dataset
=
pdx
.
datasets
.
VOCDetection
(
data_dir
=
'insect_det'
,
data_dir
=
'insect_det'
,
file_list
=
'insect_det/train_list.txt'
,
file_list
=
'insect_det/train_list.txt'
,
...
@@ -39,7 +46,12 @@ eval_dataset = pdx.datasets.VOCDetection(
...
@@ -39,7 +46,12 @@ eval_dataset = pdx.datasets.VOCDetection(
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# num_classes 需要设置为包含背景类的类别数,即: 目标类别数量 + 1
# num_classes 需要设置为包含背景类的类别数,即: 目标类别数量 + 1
num_classes
=
len
(
train_dataset
.
labels
)
+
1
num_classes
=
len
(
train_dataset
.
labels
)
+
1
# API说明: https://paddlex.readthedocs.io/zh_CN/develop/apis/models/detection.html#paddlex-det-fasterrcnn
model
=
pdx
.
det
.
FasterRCNN
(
num_classes
=
num_classes
,
backbone
=
'ResNet50'
)
model
=
pdx
.
det
.
FasterRCNN
(
num_classes
=
num_classes
,
backbone
=
'ResNet50'
)
# API说明: https://paddlex.readthedocs.io/zh_CN/develop/apis/models/detection.html#id1
# 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html
model
.
train
(
model
.
train
(
num_epochs
=
12
,
num_epochs
=
12
,
train_dataset
=
train_dataset
,
train_dataset
=
train_dataset
,
...
...
tutorials/train/object_detection/yolov3_darknet53.py
浏览文件 @
25d5b693
# 环境变量配置,用于控制是否使用GPU
# 说明文档:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html#gpu
import
os
import
os
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
from
paddlex.det
import
transforms
from
paddlex.det
import
transforms
import
paddlex
as
pdx
import
paddlex
as
pdx
...
@@ -7,6 +11,7 @@ insect_dataset = 'https://bj.bcebos.com/paddlex/datasets/insect_det.tar.gz'
...
@@ -7,6 +11,7 @@ insect_dataset = 'https://bj.bcebos.com/paddlex/datasets/insect_det.tar.gz'
pdx
.
utils
.
download_and_decompress
(
insect_dataset
,
path
=
'./'
)
pdx
.
utils
.
download_and_decompress
(
insect_dataset
,
path
=
'./'
)
# 定义训练和验证时的transforms
# 定义训练和验证时的transforms
# API说明 https://paddlex.readthedocs.io/zh_CN/develop/apis/transforms/det_transforms.html
train_transforms
=
transforms
.
Compose
([
train_transforms
=
transforms
.
Compose
([
transforms
.
MixupImage
(
mixup_epoch
=
250
),
transforms
.
MixupImage
(
mixup_epoch
=
250
),
transforms
.
RandomDistort
(),
transforms
.
RandomDistort
(),
...
@@ -23,6 +28,7 @@ eval_transforms = transforms.Compose([
...
@@ -23,6 +28,7 @@ eval_transforms = transforms.Compose([
])
])
# 定义训练和验证所用的数据集
# 定义训练和验证所用的数据集
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-vocdetection
train_dataset
=
pdx
.
datasets
.
VOCDetection
(
train_dataset
=
pdx
.
datasets
.
VOCDetection
(
data_dir
=
'insect_det'
,
data_dir
=
'insect_det'
,
file_list
=
'insect_det/train_list.txt'
,
file_list
=
'insect_det/train_list.txt'
,
...
@@ -41,7 +47,12 @@ eval_dataset = pdx.datasets.VOCDetection(
...
@@ -41,7 +47,12 @@ eval_dataset = pdx.datasets.VOCDetection(
# 浏览器打开 https://0.0.0.0:8001即可
# 浏览器打开 https://0.0.0.0:8001即可
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
num_classes
=
len
(
train_dataset
.
labels
)
num_classes
=
len
(
train_dataset
.
labels
)
# API说明: https://paddlex.readthedocs.io/zh_CN/develop/apis/models/detection.html#paddlex-det-yolov3
model
=
pdx
.
det
.
YOLOv3
(
num_classes
=
num_classes
,
backbone
=
'DarkNet53'
)
model
=
pdx
.
det
.
YOLOv3
(
num_classes
=
num_classes
,
backbone
=
'DarkNet53'
)
# API说明: https://paddlex.readthedocs.io/zh_CN/develop/apis/models/detection.html#train
# 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html
model
.
train
(
model
.
train
(
num_epochs
=
270
,
num_epochs
=
270
,
train_dataset
=
train_dataset
,
train_dataset
=
train_dataset
,
...
...
tutorials/train/object_detection/yolov3_mobilenetv1.py
浏览文件 @
25d5b693
# 环境变量配置,用于控制是否使用GPU
# 说明文档:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html#gpu
import
os
import
os
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
from
paddlex.det
import
transforms
from
paddlex.det
import
transforms
import
paddlex
as
pdx
import
paddlex
as
pdx
...
@@ -7,6 +11,7 @@ insect_dataset = 'https://bj.bcebos.com/paddlex/datasets/insect_det.tar.gz'
...
@@ -7,6 +11,7 @@ insect_dataset = 'https://bj.bcebos.com/paddlex/datasets/insect_det.tar.gz'
pdx
.
utils
.
download_and_decompress
(
insect_dataset
,
path
=
'./'
)
pdx
.
utils
.
download_and_decompress
(
insect_dataset
,
path
=
'./'
)
# 定义训练和验证时的transforms
# 定义训练和验证时的transforms
# API说明 https://paddlex.readthedocs.io/zh_CN/develop/apis/transforms/det_transforms.html
train_transforms
=
transforms
.
Compose
([
train_transforms
=
transforms
.
Compose
([
transforms
.
MixupImage
(
mixup_epoch
=
250
),
transforms
.
MixupImage
(
mixup_epoch
=
250
),
transforms
.
RandomDistort
(),
transforms
.
RandomDistort
(),
...
@@ -23,6 +28,7 @@ eval_transforms = transforms.Compose([
...
@@ -23,6 +28,7 @@ eval_transforms = transforms.Compose([
])
])
# 定义训练和验证所用的数据集
# 定义训练和验证所用的数据集
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-vocdetection
train_dataset
=
pdx
.
datasets
.
VOCDetection
(
train_dataset
=
pdx
.
datasets
.
VOCDetection
(
data_dir
=
'insect_det'
,
data_dir
=
'insect_det'
,
file_list
=
'insect_det/train_list.txt'
,
file_list
=
'insect_det/train_list.txt'
,
...
@@ -41,7 +47,12 @@ eval_dataset = pdx.datasets.VOCDetection(
...
@@ -41,7 +47,12 @@ eval_dataset = pdx.datasets.VOCDetection(
# 浏览器打开 https://0.0.0.0:8001即可
# 浏览器打开 https://0.0.0.0:8001即可
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
num_classes
=
len
(
train_dataset
.
labels
)
num_classes
=
len
(
train_dataset
.
labels
)
# API说明: https://paddlex.readthedocs.io/zh_CN/develop/apis/models/detection.html#paddlex-det-yolov3
model
=
pdx
.
det
.
YOLOv3
(
num_classes
=
num_classes
,
backbone
=
'MobileNetV1'
)
model
=
pdx
.
det
.
YOLOv3
(
num_classes
=
num_classes
,
backbone
=
'MobileNetV1'
)
# API说明: https://paddlex.readthedocs.io/zh_CN/develop/apis/models/detection.html#train
# 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html
model
.
train
(
model
.
train
(
num_epochs
=
270
,
num_epochs
=
270
,
train_dataset
=
train_dataset
,
train_dataset
=
train_dataset
,
...
...
tutorials/train/object_detection/yolov3_mobilenetv3.py
浏览文件 @
25d5b693
# 环境变量配置,用于控制是否使用GPU
# 说明文档:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html#gpu
import
os
import
os
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
from
paddlex.det
import
transforms
from
paddlex.det
import
transforms
import
paddlex
as
pdx
import
paddlex
as
pdx
...
@@ -7,6 +11,7 @@ insect_dataset = 'https://bj.bcebos.com/paddlex/datasets/insect_det.tar.gz'
...
@@ -7,6 +11,7 @@ insect_dataset = 'https://bj.bcebos.com/paddlex/datasets/insect_det.tar.gz'
pdx
.
utils
.
download_and_decompress
(
insect_dataset
,
path
=
'./'
)
pdx
.
utils
.
download_and_decompress
(
insect_dataset
,
path
=
'./'
)
# 定义训练和验证时的transforms
# 定义训练和验证时的transforms
# API说明 https://paddlex.readthedocs.io/zh_CN/develop/apis/transforms/det_transforms.html
train_transforms
=
transforms
.
Compose
([
train_transforms
=
transforms
.
Compose
([
transforms
.
MixupImage
(
mixup_epoch
=
250
),
transforms
.
MixupImage
(
mixup_epoch
=
250
),
transforms
.
RandomDistort
(),
transforms
.
RandomDistort
(),
...
@@ -23,6 +28,7 @@ eval_transforms = transforms.Compose([
...
@@ -23,6 +28,7 @@ eval_transforms = transforms.Compose([
])
])
# 定义训练和验证所用的数据集
# 定义训练和验证所用的数据集
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-vocdetection
train_dataset
=
pdx
.
datasets
.
VOCDetection
(
train_dataset
=
pdx
.
datasets
.
VOCDetection
(
data_dir
=
'insect_det'
,
data_dir
=
'insect_det'
,
file_list
=
'insect_det/train_list.txt'
,
file_list
=
'insect_det/train_list.txt'
,
...
@@ -41,7 +47,12 @@ eval_dataset = pdx.datasets.VOCDetection(
...
@@ -41,7 +47,12 @@ eval_dataset = pdx.datasets.VOCDetection(
# 浏览器打开 https://0.0.0.0:8001即可
# 浏览器打开 https://0.0.0.0:8001即可
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
num_classes
=
len
(
train_dataset
.
labels
)
num_classes
=
len
(
train_dataset
.
labels
)
# API说明: https://paddlex.readthedocs.io/zh_CN/develop/apis/models/detection.html#paddlex-det-yolov3
model
=
pdx
.
det
.
YOLOv3
(
num_classes
=
num_classes
,
backbone
=
'MobileNetV3_large'
)
model
=
pdx
.
det
.
YOLOv3
(
num_classes
=
num_classes
,
backbone
=
'MobileNetV3_large'
)
# API说明: https://paddlex.readthedocs.io/zh_CN/develop/apis/models/detection.html#train
# 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html
model
.
train
(
model
.
train
(
num_epochs
=
270
,
num_epochs
=
270
,
train_dataset
=
train_dataset
,
train_dataset
=
train_dataset
,
...
...
tutorials/train/semantic_segmentation/deeplabv3p_mobilenetv2.py
浏览文件 @
25d5b693
# 环境变量配置,用于控制是否使用GPU
# 说明文档:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html#gpu
import
os
import
os
# 选择使用0号卡
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
import
paddlex
as
pdx
import
paddlex
as
pdx
...
@@ -10,6 +11,7 @@ optic_dataset = 'https://bj.bcebos.com/paddlex/datasets/optic_disc_seg.tar.gz'
...
@@ -10,6 +11,7 @@ optic_dataset = 'https://bj.bcebos.com/paddlex/datasets/optic_disc_seg.tar.gz'
pdx
.
utils
.
download_and_decompress
(
optic_dataset
,
path
=
'./'
)
pdx
.
utils
.
download_and_decompress
(
optic_dataset
,
path
=
'./'
)
# 定义训练和验证时的transforms
# 定义训练和验证时的transforms
# API说明 https://paddlex.readthedocs.io/zh_CN/develop/apis/transforms/seg_transforms.html
train_transforms
=
transforms
.
Compose
([
train_transforms
=
transforms
.
Compose
([
transforms
.
RandomHorizontalFlip
(),
transforms
.
RandomHorizontalFlip
(),
transforms
.
ResizeRangeScaling
(),
transforms
.
ResizeRangeScaling
(),
...
@@ -24,6 +26,7 @@ eval_transforms = transforms.Compose([
...
@@ -24,6 +26,7 @@ eval_transforms = transforms.Compose([
])
])
# 定义训练和验证所用的数据集
# 定义训练和验证所用的数据集
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-segdataset
train_dataset
=
pdx
.
datasets
.
SegDataset
(
train_dataset
=
pdx
.
datasets
.
SegDataset
(
data_dir
=
'optic_disc_seg'
,
data_dir
=
'optic_disc_seg'
,
file_list
=
'optic_disc_seg/train_list.txt'
,
file_list
=
'optic_disc_seg/train_list.txt'
,
...
@@ -42,7 +45,13 @@ eval_dataset = pdx.datasets.SegDataset(
...
@@ -42,7 +45,13 @@ eval_dataset = pdx.datasets.SegDataset(
# 浏览器打开 https://0.0.0.0:8001即可
# 浏览器打开 https://0.0.0.0:8001即可
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
num_classes
=
len
(
train_dataset
.
labels
)
num_classes
=
len
(
train_dataset
.
labels
)
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/semantic_segmentation.html#paddlex-seg-deeplabv3p
model
=
pdx
.
seg
.
DeepLabv3p
(
num_classes
=
num_classes
,
backbone
=
'MobileNetV2_x1.0'
)
model
=
pdx
.
seg
.
DeepLabv3p
(
num_classes
=
num_classes
,
backbone
=
'MobileNetV2_x1.0'
)
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/semantic_segmentation.html#train
# 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html
model
.
train
(
model
.
train
(
num_epochs
=
40
,
num_epochs
=
40
,
train_dataset
=
train_dataset
,
train_dataset
=
train_dataset
,
...
...
tutorials/train/semantic_segmentation/deeplabv3p_mobilenetv2_x0.25.py
浏览文件 @
25d5b693
# 环境变量配置,用于控制是否使用GPU
# 说明文档:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html#gpu
import
os
import
os
# 选择使用0号卡
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
import
paddlex
as
pdx
import
paddlex
as
pdx
...
@@ -10,6 +11,7 @@ optic_dataset = 'https://bj.bcebos.com/paddlex/datasets/optic_disc_seg.tar.gz'
...
@@ -10,6 +11,7 @@ optic_dataset = 'https://bj.bcebos.com/paddlex/datasets/optic_disc_seg.tar.gz'
pdx
.
utils
.
download_and_decompress
(
optic_dataset
,
path
=
'./'
)
pdx
.
utils
.
download_and_decompress
(
optic_dataset
,
path
=
'./'
)
# 定义训练和验证时的transforms
# 定义训练和验证时的transforms
# API说明 https://paddlex.readthedocs.io/zh_CN/develop/apis/transforms/seg_transforms.html
train_transforms
=
transforms
.
Compose
([
train_transforms
=
transforms
.
Compose
([
transforms
.
RandomHorizontalFlip
(),
transforms
.
RandomHorizontalFlip
(),
transforms
.
ResizeRangeScaling
(),
transforms
.
ResizeRangeScaling
(),
...
@@ -24,6 +26,7 @@ eval_transforms = transforms.Compose([
...
@@ -24,6 +26,7 @@ eval_transforms = transforms.Compose([
])
])
# 定义训练和验证所用的数据集
# 定义训练和验证所用的数据集
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-segdataset
train_dataset
=
pdx
.
datasets
.
SegDataset
(
train_dataset
=
pdx
.
datasets
.
SegDataset
(
data_dir
=
'optic_disc_seg'
,
data_dir
=
'optic_disc_seg'
,
file_list
=
'optic_disc_seg/train_list.txt'
,
file_list
=
'optic_disc_seg/train_list.txt'
,
...
@@ -42,7 +45,12 @@ eval_dataset = pdx.datasets.SegDataset(
...
@@ -42,7 +45,12 @@ eval_dataset = pdx.datasets.SegDataset(
# 浏览器打开 https://0.0.0.0:8001即可
# 浏览器打开 https://0.0.0.0:8001即可
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
num_classes
=
len
(
train_dataset
.
labels
)
num_classes
=
len
(
train_dataset
.
labels
)
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/semantic_segmentation.html#paddlex-seg-deeplabv3p
model
=
pdx
.
seg
.
DeepLabv3p
(
num_classes
=
num_classes
,
backbone
=
'MobileNetV2_x0.25'
)
model
=
pdx
.
seg
.
DeepLabv3p
(
num_classes
=
num_classes
,
backbone
=
'MobileNetV2_x0.25'
)
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/semantic_segmentation.html#train
# 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html
model
.
train
(
model
.
train
(
num_epochs
=
40
,
num_epochs
=
40
,
train_dataset
=
train_dataset
,
train_dataset
=
train_dataset
,
...
...
tutorials/train/semantic_segmentation/deeplabv3p_xception65.py
浏览文件 @
25d5b693
# 环境变量配置,用于控制是否使用GPU
# 说明文档:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html#gpu
import
os
import
os
# 选择使用0号卡
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
import
paddlex
as
pdx
import
paddlex
as
pdx
...
@@ -10,6 +11,7 @@ optic_dataset = 'https://bj.bcebos.com/paddlex/datasets/optic_disc_seg.tar.gz'
...
@@ -10,6 +11,7 @@ optic_dataset = 'https://bj.bcebos.com/paddlex/datasets/optic_disc_seg.tar.gz'
pdx
.
utils
.
download_and_decompress
(
optic_dataset
,
path
=
'./'
)
pdx
.
utils
.
download_and_decompress
(
optic_dataset
,
path
=
'./'
)
# 定义训练和验证时的transforms
# 定义训练和验证时的transforms
# API说明 https://paddlex.readthedocs.io/zh_CN/develop/apis/transforms/seg_transforms.html
train_transforms
=
transforms
.
Compose
([
train_transforms
=
transforms
.
Compose
([
transforms
.
RandomHorizontalFlip
(),
transforms
.
RandomHorizontalFlip
(),
transforms
.
ResizeRangeScaling
(),
transforms
.
ResizeRangeScaling
(),
...
@@ -24,6 +26,7 @@ eval_transforms = transforms.Compose([
...
@@ -24,6 +26,7 @@ eval_transforms = transforms.Compose([
])
])
# 定义训练和验证所用的数据集
# 定义训练和验证所用的数据集
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-segdataset
train_dataset
=
pdx
.
datasets
.
SegDataset
(
train_dataset
=
pdx
.
datasets
.
SegDataset
(
data_dir
=
'optic_disc_seg'
,
data_dir
=
'optic_disc_seg'
,
file_list
=
'optic_disc_seg/train_list.txt'
,
file_list
=
'optic_disc_seg/train_list.txt'
,
...
@@ -42,7 +45,12 @@ eval_dataset = pdx.datasets.SegDataset(
...
@@ -42,7 +45,12 @@ eval_dataset = pdx.datasets.SegDataset(
# 浏览器打开 https://0.0.0.0:8001即可
# 浏览器打开 https://0.0.0.0:8001即可
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
num_classes
=
len
(
train_dataset
.
labels
)
num_classes
=
len
(
train_dataset
.
labels
)
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/semantic_segmentation.html#paddlex-seg-deeplabv3p
model
=
pdx
.
seg
.
DeepLabv3p
(
num_classes
=
num_classes
,
backbone
=
'Xception65'
)
model
=
pdx
.
seg
.
DeepLabv3p
(
num_classes
=
num_classes
,
backbone
=
'Xception65'
)
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/semantic_segmentation.html#train
# 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html
model
.
train
(
model
.
train
(
num_epochs
=
40
,
num_epochs
=
40
,
train_dataset
=
train_dataset
,
train_dataset
=
train_dataset
,
...
...
tutorials/train/semantic_segmentation/fast_scnn.py
浏览文件 @
25d5b693
# 环境变量配置,用于控制是否使用GPU
# 说明文档:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html#gpu
import
os
import
os
# 选择使用0号卡
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
import
paddlex
as
pdx
import
paddlex
as
pdx
...
@@ -10,7 +11,7 @@ optic_dataset = 'https://bj.bcebos.com/paddlex/datasets/optic_disc_seg.tar.gz'
...
@@ -10,7 +11,7 @@ optic_dataset = 'https://bj.bcebos.com/paddlex/datasets/optic_disc_seg.tar.gz'
pdx
.
utils
.
download_and_decompress
(
optic_dataset
,
path
=
'./'
)
pdx
.
utils
.
download_and_decompress
(
optic_dataset
,
path
=
'./'
)
# 定义训练和验证时的transforms
# 定义训练和验证时的transforms
# API说明
: https://paddlex.readthedocs.io/zh_CN/latest/apis/transforms/seg_transforms.html#composedsegtransforms
# API说明
https://paddlex.readthedocs.io/zh_CN/develop/apis/transforms/seg_transforms.html
train_transforms
=
transforms
.
Compose
([
train_transforms
=
transforms
.
Compose
([
transforms
.
RandomHorizontalFlip
(),
transforms
.
RandomHorizontalFlip
(),
transforms
.
ResizeRangeScaling
(),
transforms
.
ResizeRangeScaling
(),
...
@@ -25,7 +26,7 @@ eval_transforms = transforms.Compose([
...
@@ -25,7 +26,7 @@ eval_transforms = transforms.Compose([
])
])
# 定义训练和验证所用的数据集
# 定义训练和验证所用的数据集
# API说明
: https://paddlex.readthedocs.io/zh_CN/latest/apis/datasets/semantic_segmentation.html#
segdataset
# API说明
:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-
segdataset
train_dataset
=
pdx
.
datasets
.
SegDataset
(
train_dataset
=
pdx
.
datasets
.
SegDataset
(
data_dir
=
'optic_disc_seg'
,
data_dir
=
'optic_disc_seg'
,
file_list
=
'optic_disc_seg/train_list.txt'
,
file_list
=
'optic_disc_seg/train_list.txt'
,
...
@@ -44,9 +45,13 @@ eval_dataset = pdx.datasets.SegDataset(
...
@@ -44,9 +45,13 @@ eval_dataset = pdx.datasets.SegDataset(
# 浏览器打开 https://0.0.0.0:8001即可
# 浏览器打开 https://0.0.0.0:8001即可
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# https://paddlex.readthedocs.io/zh_CN/latest/apis/models/semantic_segmentation.html#fastscnn
num_classes
=
len
(
train_dataset
.
labels
)
num_classes
=
len
(
train_dataset
.
labels
)
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/semantic_segmentation.html#paddlex-seg-fastscnn
model
=
pdx
.
seg
.
FastSCNN
(
num_classes
=
num_classes
)
model
=
pdx
.
seg
.
FastSCNN
(
num_classes
=
num_classes
)
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/semantic_segmentation.html#train
# 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html
model
.
train
(
model
.
train
(
num_epochs
=
20
,
num_epochs
=
20
,
train_dataset
=
train_dataset
,
train_dataset
=
train_dataset
,
...
...
tutorials/train/semantic_segmentation/hrnet.py
浏览文件 @
25d5b693
# 环境变量配置,用于控制是否使用GPU
# 说明文档:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html#gpu
import
os
import
os
# 选择使用0号卡
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
import
paddlex
as
pdx
import
paddlex
as
pdx
...
@@ -10,6 +11,7 @@ optic_dataset = 'https://bj.bcebos.com/paddlex/datasets/optic_disc_seg.tar.gz'
...
@@ -10,6 +11,7 @@ optic_dataset = 'https://bj.bcebos.com/paddlex/datasets/optic_disc_seg.tar.gz'
pdx
.
utils
.
download_and_decompress
(
optic_dataset
,
path
=
'./'
)
pdx
.
utils
.
download_and_decompress
(
optic_dataset
,
path
=
'./'
)
# 定义训练和验证时的transforms
# 定义训练和验证时的transforms
# API说明 https://paddlex.readthedocs.io/zh_CN/develop/apis/transforms/seg_transforms.html
train_transforms
=
transforms
.
Compose
([
train_transforms
=
transforms
.
Compose
([
transforms
.
RandomHorizontalFlip
(),
transforms
.
RandomHorizontalFlip
(),
transforms
.
ResizeRangeScaling
(),
transforms
.
ResizeRangeScaling
(),
...
@@ -24,6 +26,7 @@ eval_transforms = transforms.Compose([
...
@@ -24,6 +26,7 @@ eval_transforms = transforms.Compose([
])
])
# 定义训练和验证所用的数据集
# 定义训练和验证所用的数据集
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-segdataset
train_dataset
=
pdx
.
datasets
.
SegDataset
(
train_dataset
=
pdx
.
datasets
.
SegDataset
(
data_dir
=
'optic_disc_seg'
,
data_dir
=
'optic_disc_seg'
,
file_list
=
'optic_disc_seg/train_list.txt'
,
file_list
=
'optic_disc_seg/train_list.txt'
,
...
@@ -42,7 +45,12 @@ eval_dataset = pdx.datasets.SegDataset(
...
@@ -42,7 +45,12 @@ eval_dataset = pdx.datasets.SegDataset(
# 浏览器打开 https://0.0.0.0:8001即可
# 浏览器打开 https://0.0.0.0:8001即可
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
num_classes
=
len
(
train_dataset
.
labels
)
num_classes
=
len
(
train_dataset
.
labels
)
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/semantic_segmentation.html#paddlex-seg-hrnet
model
=
pdx
.
seg
.
HRNet
(
num_classes
=
num_classes
)
model
=
pdx
.
seg
.
HRNet
(
num_classes
=
num_classes
)
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/semantic_segmentation.html#train
# 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html
model
.
train
(
model
.
train
(
num_epochs
=
20
,
num_epochs
=
20
,
train_dataset
=
train_dataset
,
train_dataset
=
train_dataset
,
...
...
tutorials/train/semantic_segmentation/unet.py
浏览文件 @
25d5b693
# 环境变量配置,用于控制是否使用GPU
# 说明文档:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html#gpu
import
os
import
os
# 选择使用0号卡
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
os
.
environ
[
'CUDA_VISIBLE_DEVICES'
]
=
'0'
import
paddlex
as
pdx
import
paddlex
as
pdx
...
@@ -10,6 +11,7 @@ optic_dataset = 'https://bj.bcebos.com/paddlex/datasets/optic_disc_seg.tar.gz'
...
@@ -10,6 +11,7 @@ optic_dataset = 'https://bj.bcebos.com/paddlex/datasets/optic_disc_seg.tar.gz'
pdx
.
utils
.
download_and_decompress
(
optic_dataset
,
path
=
'./'
)
pdx
.
utils
.
download_and_decompress
(
optic_dataset
,
path
=
'./'
)
# 定义训练和验证时的transforms
# 定义训练和验证时的transforms
# API说明 https://paddlex.readthedocs.io/zh_CN/develop/apis/transforms/seg_transforms.html
train_transforms
=
transforms
.
Compose
([
train_transforms
=
transforms
.
Compose
([
transforms
.
RandomHorizontalFlip
(),
transforms
.
RandomHorizontalFlip
(),
transforms
.
ResizeRangeScaling
(),
transforms
.
ResizeRangeScaling
(),
...
@@ -23,6 +25,7 @@ eval_transforms = transforms.Compose([
...
@@ -23,6 +25,7 @@ eval_transforms = transforms.Compose([
])
])
# 定义训练和验证所用的数据集
# 定义训练和验证所用的数据集
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/datasets.html#paddlex-datasets-segdataset
train_dataset
=
pdx
.
datasets
.
SegDataset
(
train_dataset
=
pdx
.
datasets
.
SegDataset
(
data_dir
=
'optic_disc_seg'
,
data_dir
=
'optic_disc_seg'
,
file_list
=
'optic_disc_seg/train_list.txt'
,
file_list
=
'optic_disc_seg/train_list.txt'
,
...
@@ -41,7 +44,12 @@ eval_dataset = pdx.datasets.SegDataset(
...
@@ -41,7 +44,12 @@ eval_dataset = pdx.datasets.SegDataset(
# 浏览器打开 https://0.0.0.0:8001即可
# 浏览器打开 https://0.0.0.0:8001即可
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
# 其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP
num_classes
=
len
(
train_dataset
.
labels
)
num_classes
=
len
(
train_dataset
.
labels
)
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/semantic_segmentation.html#paddlex-seg-deeplabv3p
model
=
pdx
.
seg
.
UNet
(
num_classes
=
num_classes
)
model
=
pdx
.
seg
.
UNet
(
num_classes
=
num_classes
)
# API说明:https://paddlex.readthedocs.io/zh_CN/develop/apis/models/semantic_segmentation.html#train
# 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html
model
.
train
(
model
.
train
(
num_epochs
=
20
,
num_epochs
=
20
,
train_dataset
=
train_dataset
,
train_dataset
=
train_dataset
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录