Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
PaddleHub
提交
898cc7dc
P
PaddleHub
项目概览
PaddlePaddle
/
PaddleHub
接近 2 年 前同步成功
通知
284
Star
12117
Fork
2091
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
200
列表
看板
标记
里程碑
合并请求
4
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleHub
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
200
Issue
200
列表
看板
标记
里程碑
合并请求
4
合并请求
4
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
898cc7dc
编写于
10月 27, 2020
作者:
W
wuzewu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Update demo
上级
821d6c14
变更
11
隐藏空白更改
内联
并排
Showing
11 changed file
with
28 addition
and
66 deletion
+28
-66
demo/colorization/predict.py
demo/colorization/predict.py
+3
-4
demo/colorization/train.py
demo/colorization/train.py
+3
-5
demo/image_classification/predict.py
demo/image_classification/predict.py
+5
-17
demo/image_classification/train.py
demo/image_classification/train.py
+4
-6
demo/key_point_detection/openpose_body/demo.jpg
demo/key_point_detection/openpose_body/demo.jpg
+0
-0
demo/key_point_detection/openpose_body/predict.py
demo/key_point_detection/openpose_body/predict.py
+0
-8
demo/key_point_detection/openpose_hands/demo.jpg
demo/key_point_detection/openpose_hands/demo.jpg
+0
-0
demo/key_point_detection/openpose_hands/predict.py
demo/key_point_detection/openpose_hands/predict.py
+0
-8
demo/style_transfer/predict.py
demo/style_transfer/predict.py
+2
-3
demo/style_transfer/train.py
demo/style_transfer/train.py
+6
-8
paddlehub/finetune/trainer.py
paddlehub/finetune/trainer.py
+5
-7
未找到文件。
demo/colorization/predict.py
浏览文件 @
898cc7dc
import
paddle
import
paddle
import
paddlehub
as
hub
import
paddlehub
as
hub
import
paddle.nn
as
nn
if
__name__
==
'__main__'
:
if
__name__
==
'__main__'
:
paddle
.
disable_static
()
model
=
hub
.
Module
(
name
=
'user_guided_colorization'
)
model
=
hub
.
Module
(
name
=
'user_guided_colorization'
)
model
.
eval
()
state_dict
=
paddle
.
load
(
'img_colorization_ckpt'
)
result
=
model
.
predict
(
images
=
'house.png'
)
model
.
set_dict
(
state_dict
)
result
=
model
.
predict
(
'house.png'
)
demo/colorization/train.py
浏览文件 @
898cc7dc
import
paddle
import
paddle
import
paddlehub
as
hub
import
paddlehub
as
hub
import
paddle
.nn
as
nn
import
paddle
hub.process.transforms
as
T
from
paddlehub.finetune.trainer
import
Trainer
from
paddlehub.finetune.trainer
import
Trainer
from
paddlehub.datasets.colorizedataset
import
Colorizedataset
from
paddlehub.datasets.colorizedataset
import
Colorizedataset
import
paddlehub.process.transforms
as
T
if
__name__
==
'__main__'
:
if
__name__
==
'__main__'
:
paddle
.
disable_static
()
model
=
hub
.
Module
(
name
=
'user_guided_colorization'
)
model
=
hub
.
Module
(
name
=
'user_guided_colorization'
)
transform
=
T
.
Compose
([
T
.
Resize
((
256
,
256
),
interp
=
'NEAREST'
),
transform
=
T
.
Compose
([
T
.
Resize
((
256
,
256
),
interp
=
'NEAREST'
),
T
.
RandomPaddingCrop
(
crop_size
=
176
),
T
.
RandomPaddingCrop
(
crop_size
=
176
),
T
.
RGB2LAB
()],
T
.
RGB2LAB
()],
stay_rgb
=
True
,
stay_rgb
=
True
,
is_permute
=
False
)
is_permute
=
False
)
color_set
=
Colorizedataset
(
transform
=
transform
,
mode
=
'train'
)
color_set
=
Colorizedataset
(
transform
=
transform
,
mode
=
'train'
)
optimizer
=
paddle
.
optimizer
.
Adam
(
learning_rate
=
0.0001
,
parameters
=
model
.
parameters
())
optimizer
=
paddle
.
optimizer
.
Adam
(
learning_rate
=
0.0001
,
parameters
=
model
.
parameters
())
trainer
=
Trainer
(
model
,
optimizer
,
checkpoint_dir
=
'
test_ckpt_img_cls
'
)
trainer
=
Trainer
(
model
,
optimizer
,
checkpoint_dir
=
'
img_colorization_ckpt
'
)
trainer
.
train
(
color_set
,
epochs
=
101
,
batch_size
=
2
,
eval_dataset
=
color_set
,
log_interval
=
10
,
save_interval
=
10
)
trainer
.
train
(
color_set
,
epochs
=
101
,
batch_size
=
2
,
eval_dataset
=
color_set
,
log_interval
=
10
,
save_interval
=
10
)
demo/image_classification/predict.py
浏览文件 @
898cc7dc
import
paddle
.fluid
as
fluid
import
paddle
import
paddlehub
as
hub
import
paddlehub
as
hub
from
paddlehub.finetune.trainer
import
Trainer
from
paddlehub.datasets.flowers
import
Flowers
from
paddlehub.process.transforms
import
Compose
,
Resize
,
Normalize
from
paddlehub.module.cv_module
import
ImageClassifierModule
if
__name__
==
'__main__'
:
if
__name__
==
'__main__'
:
with
fluid
.
dygraph
.
guard
():
model
=
hub
.
Module
(
name
=
'mobilenet_v2_imagenet'
,
class_dim
=
5
)
transforms
=
Compose
([
Resize
((
224
,
224
)),
Normalize
()])
state_dict
=
paddle
.
load
(
'img_classification_ckpt'
)
flowers
=
Flowers
(
transforms
)
model
.
set_dict
(
state_dict
)
flowers_validate
=
Flowers
(
transforms
,
mode
=
'val'
)
result
=
model
.
predict
(
'flower.jpg'
)
model
=
hub
.
Module
(
directory
=
'mobilenet_v2_animals'
,
class_dim
=
flowers
.
num_classes
)
# model = hub.Module(name='mobilenet_v2_animals', class_dim=flowers.num_classes)
optimizer
=
fluid
.
optimizer
.
AdamOptimizer
(
learning_rate
=
0.001
,
parameter_list
=
model
.
parameters
())
trainer
=
Trainer
(
model
,
optimizer
,
checkpoint_dir
=
'test_ckpt_img_cls'
)
# trainer.train(flowers, epochs=100, batch_size=32, eval_dataset=flowers_validate)
demo/image_classification/train.py
浏览文件 @
898cc7dc
import
paddle
import
paddle
import
paddlehub
as
hub
import
paddlehub
as
hub
from
paddle.distributed
import
ParallelEnv
import
paddlehub.process.transforms
as
T
from
paddlehub.finetune.trainer
import
Trainer
from
paddlehub.finetune.trainer
import
Trainer
from
paddlehub.datasets.flowers
import
Flowers
from
paddlehub.datasets.flowers
import
Flowers
from
paddlehub.process.transforms
import
Compose
,
Resize
,
Normalize
from
paddlehub.module.cv_module
import
ImageClassifierModule
if
__name__
==
'__main__'
:
if
__name__
==
'__main__'
:
paddle
.
disable_static
(
paddle
.
CUDAPlace
(
ParallelEnv
().
dev_id
)
)
transforms
=
T
.
Compose
([
T
.
Resize
((
224
,
224
)),
T
.
Normalize
()]
)
transforms
=
Compose
([
Resize
((
224
,
224
)),
Normalize
()])
flowers
=
Flowers
(
transforms
)
flowers
=
Flowers
(
transforms
)
flowers_validate
=
Flowers
(
transforms
,
mode
=
'val'
)
flowers_validate
=
Flowers
(
transforms
,
mode
=
'val'
)
model
=
hub
.
Module
(
name
=
'mobilenet_v2_imagenet'
,
class_dim
=
flowers
.
num_classes
)
model
=
hub
.
Module
(
name
=
'mobilenet_v2_imagenet'
,
class_dim
=
flowers
.
num_classes
)
optimizer
=
paddle
.
optimizer
.
Adam
(
learning_rate
=
0.001
,
parameters
=
model
.
parameters
())
optimizer
=
paddle
.
optimizer
.
Adam
(
learning_rate
=
0.001
,
parameters
=
model
.
parameters
())
trainer
=
Trainer
(
model
,
optimizer
,
checkpoint_dir
=
'
test_ckpt_img_cls
'
)
trainer
=
Trainer
(
model
,
optimizer
,
checkpoint_dir
=
'
img_classification_ckpt
'
)
trainer
.
train
(
flowers
,
epochs
=
100
,
batch_size
=
32
,
eval_dataset
=
flowers_validate
,
save_interval
=
1
)
trainer
.
train
(
flowers
,
epochs
=
100
,
batch_size
=
32
,
eval_dataset
=
flowers_validate
,
save_interval
=
1
)
demo/key_point_detection/openpose_body/demo.jpg
已删除
100644 → 0
浏览文件 @
821d6c14
16.0 KB
demo/key_point_detection/openpose_body/predict.py
已删除
100644 → 0
浏览文件 @
821d6c14
import
paddle
import
paddlehub
as
hub
if
__name__
==
"__main__"
:
paddle
.
disable_static
()
model
=
hub
.
Module
(
name
=
'openpose_body_estimation'
)
out1
,
out2
=
model
.
predict
(
"demo.jpg"
)
demo/key_point_detection/openpose_hands/demo.jpg
已删除
100644 → 0
浏览文件 @
821d6c14
16.0 KB
demo/key_point_detection/openpose_hands/predict.py
已删除
100644 → 0
浏览文件 @
821d6c14
import
paddle
import
paddlehub
as
hub
if
__name__
==
"__main__"
:
paddle
.
disable_static
()
model
=
hub
.
Module
(
name
=
'openpose_hands_estimation'
)
all_hand_peaks
=
model
.
predict
(
"demo.jpg"
)
demo/style_transfer/predict.py
浏览文件 @
898cc7dc
...
@@ -2,8 +2,7 @@ import paddle
...
@@ -2,8 +2,7 @@ import paddle
import
paddlehub
as
hub
import
paddlehub
as
hub
if
__name__
==
'__main__'
:
if
__name__
==
'__main__'
:
place
=
paddle
.
CUDAPlace
(
0
)
paddle
.
disable_static
()
model
=
hub
.
Module
(
name
=
'msgnet'
)
model
=
hub
.
Module
(
name
=
'msgnet'
)
model
.
eval
()
state_dict
=
paddle
.
load
(
'img_style_transfer_ckpt'
)
model
.
set_dict
(
state_dict
)
result
=
model
.
predict
(
"venice-boat.jpg"
,
"candy.jpg"
)
result
=
model
.
predict
(
"venice-boat.jpg"
,
"candy.jpg"
)
demo/style_transfer/train.py
浏览文件 @
898cc7dc
import
paddle
import
paddle
import
paddlehub
as
hub
import
paddlehub
as
hub
import
paddlehub.process.transforms
as
T
from
paddlehub.finetune.trainer
import
Trainer
from
paddlehub.finetune.trainer
import
Trainer
from
paddlehub.datasets.styletransfer
import
StyleTransferData
from
paddlehub.datasets.styletransfer
import
StyleTransferData
from
paddlehub.process.transforms
import
Compose
,
Resize
,
CenterCrop
,
SetType
if
__name__
==
"__main__"
:
if
__name__
==
"__main__"
:
place
=
paddle
.
CUDAPlace
(
0
)
paddle
.
disable_static
()
model
=
hub
.
Module
(
name
=
'msgnet'
)
model
=
hub
.
Module
(
name
=
'msgnet'
)
transform
=
Compose
([
Resize
((
256
,
256
),
interp
=
'LINEAR'
),
CenterCrop
(
crop_size
=
256
)],
SetType
(
datatype
=
'float32'
))
transform
=
T
.
Compose
([
T
.
Resize
(
(
256
,
256
),
interp
=
'LINEAR'
),
T
.
CenterCrop
(
crop_size
=
256
)],
T
.
SetType
(
datatype
=
'float32'
))
styledata
=
StyleTransferData
(
transform
)
styledata
=
StyleTransferData
(
transform
)
model
.
train
()
optimizer
=
paddle
.
optimizer
.
Adam
(
learning_rate
=
0.0001
,
parameters
=
model
.
parameters
())
optimizer
=
paddle
.
optimizer
.
Adam
(
learning_rate
=
0.0001
,
parameters
=
model
.
parameters
())
trainer
=
Trainer
(
model
,
optimizer
,
checkpoint_dir
=
'
test_ckpt_img_cls
'
)
trainer
=
Trainer
(
model
,
optimizer
,
checkpoint_dir
=
'
img_style_transfer_ckpt
'
)
trainer
.
train
(
styledata
,
epochs
=
5
,
batch_size
=
1
,
eval_dataset
=
styledata
,
log_interval
=
1
,
save_interval
=
1
)
trainer
.
train
(
styledata
,
epochs
=
5
,
batch_size
=
1
6
,
eval_dataset
=
styledata
,
log_interval
=
1
,
save_interval
=
1
)
paddlehub/finetune/trainer.py
浏览文件 @
898cc7dc
...
@@ -111,20 +111,18 @@ class Trainer(object):
...
@@ -111,20 +111,18 @@ class Trainer(object):
self
.
current_epoch
,
metric_msg
))
self
.
current_epoch
,
metric_msg
))
# load model checkpoint
# load model checkpoint
model_params_path
=
os
.
path
.
join
(
self
.
checkpoint_dir
,
'{}_{}'
.
format
(
'epoch'
,
self
.
current_epoch
),
model_params_path
=
os
.
path
.
join
(
self
.
checkpoint_dir
,
'epoch_{}'
.
format
(
self
.
current_epoch
),
'model.pdparmas'
)
'model.pdparmas'
)
state_dict
=
paddle
.
load
(
model_params_path
)
state_dict
=
paddle
.
load
(
model_params_path
)
self
.
model
.
set_dict
(
state_dict
)
self
.
model
.
set_dict
(
state_dict
)
# load optimizer checkpoint
# load optimizer checkpoint
optim_params_path
=
os
.
path
.
join
(
self
.
checkpoint_dir
,
'{}_{}'
.
format
(
'epoch'
,
self
.
current_epoch
),
optim_params_path
=
os
.
path
.
join
(
self
.
checkpoint_dir
,
'epoch_{}'
.
format
(
self
.
current_epoch
),
'model.pdopt'
)
'model.pdopt'
)
state_dict
=
paddle
.
load
(
optim_params_path
)
state_dict
=
paddle
.
load
(
optim_params_path
)
self
.
optimizer
.
set_dict
(
state_dict
)
self
.
optimizer
.
set_dict
(
state_dict
)
def
_save_checkpoint
(
self
):
def
_save_checkpoint
(
self
):
'''Save model checkpoint and state dict'''
'''Save model checkpoint and state dict'''
model_path
=
os
.
path
.
join
(
self
.
checkpoint_dir
,
'
{}_{}'
.
format
(
'epoch'
,
self
.
current_epoch
),
'model'
)
model_path
=
os
.
path
.
join
(
self
.
checkpoint_dir
,
'
epoch_{}'
.
format
(
self
.
current_epoch
)
)
logger
.
info
(
'Saving model checkpoint to {}'
.
format
(
model_path
))
logger
.
info
(
'Saving model checkpoint to {}'
.
format
(
model_path
))
self
.
save_model
(
model_path
)
self
.
save_model
(
model_path
)
...
@@ -171,7 +169,7 @@ class Trainer(object):
...
@@ -171,7 +169,7 @@ class Trainer(object):
batch_sampler
=
paddle
.
io
.
DistributedBatchSampler
(
batch_sampler
=
paddle
.
io
.
DistributedBatchSampler
(
train_dataset
,
batch_size
=
batch_size
,
shuffle
=
True
,
drop_last
=
False
)
train_dataset
,
batch_size
=
batch_size
,
shuffle
=
True
,
drop_last
=
False
)
loader
=
paddle
.
io
.
DataLoader
(
loader
=
paddle
.
io
.
DataLoader
(
train_dataset
,
batch_sampler
=
batch_sampler
,
places
=
place
,
num_workers
=
num_workers
,
return_list
=
True
)
train_dataset
,
batch_sampler
=
batch_sampler
,
num_workers
=
num_workers
,
return_list
=
True
)
steps_per_epoch
=
len
(
batch_sampler
)
steps_per_epoch
=
len
(
batch_sampler
)
timer
=
Timer
(
steps_per_epoch
*
epochs
)
timer
=
Timer
(
steps_per_epoch
*
epochs
)
...
@@ -263,7 +261,7 @@ class Trainer(object):
...
@@ -263,7 +261,7 @@ class Trainer(object):
eval_dataset
,
batch_size
=
batch_size
,
shuffle
=
False
,
drop_last
=
False
)
eval_dataset
,
batch_size
=
batch_size
,
shuffle
=
False
,
drop_last
=
False
)
loader
=
paddle
.
io
.
DataLoader
(
loader
=
paddle
.
io
.
DataLoader
(
eval_dataset
,
batch_sampler
=
batch_sampler
,
places
=
place
,
num_workers
=
num_workers
,
return_list
=
True
)
eval_dataset
,
batch_sampler
=
batch_sampler
,
num_workers
=
num_workers
,
return_list
=
True
)
self
.
model
.
eval
()
self
.
model
.
eval
()
avg_loss
=
num_samples
=
0
avg_loss
=
num_samples
=
0
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录