Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
PaddleGAN
提交
e0d46c60
P
PaddleGAN
项目概览
PaddlePaddle
/
PaddleGAN
大约 2 年 前同步成功
通知
100
Star
7254
Fork
1210
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
4
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleGAN
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
4
Issue
4
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
“90c06ac665b79647dec205da0a50e8cffd8b50b7”上不存在“develop/doc/faq/parameter/index_en.html”
提交
e0d46c60
编写于
10月 22, 2020
作者:
L
LielinJiang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix apps
上级
f5b1277d
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
15 addition
and
16 deletion
+15
-16
ppgan/apps/base_predictor.py
ppgan/apps/base_predictor.py
+3
-3
ppgan/apps/deoldify_predictor.py
ppgan/apps/deoldify_predictor.py
+1
-1
ppgan/apps/realsr_predictor.py
ppgan/apps/realsr_predictor.py
+1
-1
ppgan/models/generators/deoldify.py
ppgan/models/generators/deoldify.py
+5
-6
ppgan/models/generators/hook.py
ppgan/models/generators/hook.py
+1
-1
ppgan/models/generators/mobile_resnet.py
ppgan/models/generators/mobile_resnet.py
+2
-2
ppgan/models/generators/remaster.py
ppgan/models/generators/remaster.py
+2
-2
未找到文件。
ppgan/apps/base_predictor.py
浏览文件 @
e0d46c60
...
@@ -62,13 +62,13 @@ class BasePredictor(object):
...
@@ -62,13 +62,13 @@ class BasePredictor(object):
return
out
return
out
def
is_
video
(
self
,
input
):
def
is_
image
(
self
,
input
):
try
:
try
:
img
=
Image
.
open
(
input
)
img
=
Image
.
open
(
input
)
_
=
img
.
size
_
=
img
.
size
return
False
except
:
return
True
return
True
except
:
return
False
def
run
(
self
):
def
run
(
self
):
raise
NotImplementedError
raise
NotImplementedError
ppgan/apps/deoldify_predictor.py
浏览文件 @
e0d46c60
...
@@ -128,7 +128,7 @@ class DeOldifyPredictor(BasePredictor):
...
@@ -128,7 +128,7 @@ class DeOldifyPredictor(BasePredictor):
return
frame_pattern_combined
,
vid_out_path
return
frame_pattern_combined
,
vid_out_path
def
run
(
self
,
input
):
def
run
(
self
,
input
):
if
self
.
is_video
(
input
):
if
not
self
.
is_image
(
input
):
return
self
.
run_video
(
input
)
return
self
.
run_video
(
input
)
else
:
else
:
pred_img
=
self
.
run_image
(
input
)
pred_img
=
self
.
run_image
(
input
)
...
...
ppgan/apps/realsr_predictor.py
浏览文件 @
e0d46c60
...
@@ -101,7 +101,7 @@ class RealSRPredictor(BasePredictor):
...
@@ -101,7 +101,7 @@ class RealSRPredictor(BasePredictor):
if
not
os
.
path
.
exists
(
self
.
output
):
if
not
os
.
path
.
exists
(
self
.
output
):
os
.
makedirs
(
self
.
output
)
os
.
makedirs
(
self
.
output
)
if
self
.
is_video
(
input
):
if
not
self
.
is_image
(
input
):
return
self
.
run_video
(
input
)
return
self
.
run_video
(
input
)
else
:
else
:
pred_img
=
self
.
run_image
(
input
)
pred_img
=
self
.
run_image
(
input
)
...
...
ppgan/models/generators/deoldify.py
浏览文件 @
e0d46c60
...
@@ -2,10 +2,9 @@ import numpy as np
...
@@ -2,10 +2,9 @@ import numpy as np
import
paddle
import
paddle
import
paddle.nn
as
nn
import
paddle.nn
as
nn
import
paddle.nn.functional
as
F
import
paddle.nn.functional
as
F
from
paddle.vision.models
import
resnet101
from
.hook
import
hook_outputs
,
model_sizes
,
dummy_eval
from
.hook
import
hook_outputs
,
model_sizes
,
dummy_eval
from
..backbones
import
resnet34
,
resnet101
# from paddle.vision.models import resnet101
from
...modules.nn
import
Spectralnorm
from
...modules.nn
import
Spectralnorm
...
@@ -273,7 +272,7 @@ class PixelShuffle_ICNR(nn.Layer):
...
@@ -273,7 +272,7 @@ class PixelShuffle_ICNR(nn.Layer):
self
.
shuf
=
PixelShuffle
(
scale
)
self
.
shuf
=
PixelShuffle
(
scale
)
self
.
pad
=
ReplicationPad2d
(
(
1
,
0
,
1
,
0
)
)
self
.
pad
=
ReplicationPad2d
(
[
1
,
0
,
1
,
0
]
)
self
.
blur
=
nn
.
Pool2D
(
2
,
pool_stride
=
1
,
pool_type
=
'avg'
)
self
.
blur
=
nn
.
Pool2D
(
2
,
pool_stride
=
1
,
pool_type
=
'avg'
)
self
.
relu
=
relu
(
True
,
leaky
=
leaky
)
self
.
relu
=
relu
(
True
,
leaky
=
leaky
)
...
@@ -339,7 +338,7 @@ class CustomPixelShuffle_ICNR(nn.Layer):
...
@@ -339,7 +338,7 @@ class CustomPixelShuffle_ICNR(nn.Layer):
self
.
shuf
=
PixelShuffle
(
scale
)
self
.
shuf
=
PixelShuffle
(
scale
)
self
.
pad
=
ReplicationPad2d
(
(
1
,
0
,
1
,
0
)
)
self
.
pad
=
ReplicationPad2d
(
[
1
,
0
,
1
,
0
]
)
self
.
blur
=
nn
.
Pool2D
(
2
,
pool_stride
=
1
,
pool_type
=
'avg'
)
self
.
blur
=
nn
.
Pool2D
(
2
,
pool_stride
=
1
,
pool_type
=
'avg'
)
self
.
relu
=
nn
.
LeakyReLU
(
self
.
relu
=
nn
.
LeakyReLU
(
leaky
)
if
leaky
is
not
None
else
nn
.
ReLU
()
#relu(True, leaky=leaky)
leaky
)
if
leaky
is
not
None
else
nn
.
ReLU
()
#relu(True, leaky=leaky)
...
@@ -410,7 +409,7 @@ class ReplicationPad2d(nn.Layer):
...
@@ -410,7 +409,7 @@ class ReplicationPad2d(nn.Layer):
self
.
size
=
size
self
.
size
=
size
def
forward
(
self
,
x
):
def
forward
(
self
,
x
):
return
F
.
pad
2d
(
x
,
self
.
size
,
mode
=
"edg
e"
)
return
F
.
pad
(
x
,
self
.
size
,
mode
=
"replicat
e"
)
def
conv1d
(
ni
:
int
,
def
conv1d
(
ni
:
int
,
...
@@ -420,7 +419,7 @@ def conv1d(ni: int,
...
@@ -420,7 +419,7 @@ def conv1d(ni: int,
padding
:
int
=
0
,
padding
:
int
=
0
,
bias
:
bool
=
False
):
bias
:
bool
=
False
):
"Create and initialize a `nn.Conv1d` layer with spectral normalization."
"Create and initialize a `nn.Conv1d` layer with spectral normalization."
conv
=
nn
.
Conv1
d
(
ni
,
no
,
ks
,
stride
=
stride
,
padding
=
padding
,
bias_attr
=
bias
)
conv
=
nn
.
Conv1
D
(
ni
,
no
,
ks
,
stride
=
stride
,
padding
=
padding
,
bias_attr
=
bias
)
return
Spectralnorm
(
conv
)
return
Spectralnorm
(
conv
)
...
...
ppgan/models/generators/hook.py
浏览文件 @
e0d46c60
...
@@ -77,7 +77,7 @@ class Hooks():
...
@@ -77,7 +77,7 @@ class Hooks():
def
_hook_inner
(
m
,
i
,
o
):
def
_hook_inner
(
m
,
i
,
o
):
return
o
if
isinstance
(
return
o
if
isinstance
(
o
,
paddle
.
framework
.
Variable
)
else
o
if
is_listy
(
o
)
else
list
(
o
)
o
,
paddle
.
f
luid
.
f
ramework
.
Variable
)
else
o
if
is_listy
(
o
)
else
list
(
o
)
def
hook_output
(
module
,
detach
=
True
,
grad
=
False
):
def
hook_output
(
module
,
detach
=
True
,
grad
=
False
):
...
...
ppgan/models/generators/mobile_resnet.py
浏览文件 @
e0d46c60
...
@@ -109,9 +109,9 @@ class MobileResnetBlock(nn.Layer):
...
@@ -109,9 +109,9 @@ class MobileResnetBlock(nn.Layer):
p
=
0
p
=
0
if
self
.
padding_type
==
'reflect'
:
if
self
.
padding_type
==
'reflect'
:
self
.
conv_block
.
extend
([
nn
.
ReflectionPad2d
([
1
,
1
,
1
,
1
]
)])
self
.
conv_block
.
extend
([
nn
.
Pad2D
([
1
,
1
,
1
,
1
],
mode
=
'reflect'
)])
elif
self
.
padding_type
==
'replicate'
:
elif
self
.
padding_type
==
'replicate'
:
self
.
conv_block
.
extend
([
nn
.
ReplicationPad2d
([
1
,
1
,
1
,
1
]
)])
self
.
conv_block
.
extend
([
nn
.
Pad2D
([
1
,
1
,
1
,
1
],
mode
=
'replicate'
)])
elif
self
.
padding_type
==
'zero'
:
elif
self
.
padding_type
==
'zero'
:
p
=
1
p
=
1
else
:
else
:
...
...
ppgan/models/generators/remaster.py
浏览文件 @
e0d46c60
...
@@ -128,7 +128,7 @@ class NetworkR(nn.Layer):
...
@@ -128,7 +128,7 @@ class NetworkR(nn.Layer):
super
(
NetworkR
,
self
).
__init__
()
super
(
NetworkR
,
self
).
__init__
()
self
.
layers
=
nn
.
Sequential
(
self
.
layers
=
nn
.
Sequential
(
nn
.
ReplicationPad3d
((
1
,
1
,
1
,
1
,
1
,
1
)
),
nn
.
Pad3D
((
1
,
1
,
1
,
1
,
1
,
1
),
mode
=
'replicate'
),
TempConv
(
1
,
TempConv
(
1
,
64
,
64
,
kernel_size
=
(
3
,
3
,
3
),
kernel_size
=
(
3
,
3
,
3
),
...
@@ -165,7 +165,7 @@ class NetworkC(nn.Layer):
...
@@ -165,7 +165,7 @@ class NetworkC(nn.Layer):
super
(
NetworkC
,
self
).
__init__
()
super
(
NetworkC
,
self
).
__init__
()
self
.
down1
=
nn
.
Sequential
(
self
.
down1
=
nn
.
Sequential
(
nn
.
ReplicationPad3d
((
1
,
1
,
1
,
1
,
0
,
0
)
),
nn
.
Pad3D
((
1
,
1
,
1
,
1
,
0
,
0
),
mode
=
'replicate'
),
TempConv
(
1
,
64
,
stride
=
(
1
,
2
,
2
),
padding
=
(
0
,
0
,
0
)),
TempConv
(
1
,
64
,
stride
=
(
1
,
2
,
2
),
padding
=
(
0
,
0
,
0
)),
TempConv
(
64
,
128
),
TempConv
(
128
,
128
),
TempConv
(
64
,
128
),
TempConv
(
128
,
128
),
TempConv
(
128
,
256
,
stride
=
(
1
,
2
,
2
)),
TempConv
(
256
,
256
),
TempConv
(
128
,
256
,
stride
=
(
1
,
2
,
2
)),
TempConv
(
256
,
256
),
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录