Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
wangsen
paddle_dbnet
Commits
b2004fe5
Commit
b2004fe5
authored
Nov 09, 2020
by
WenmuZhou
Browse files
添加resnet backbone
parent
4d775dc9
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
17 additions
and
11 deletions
+17
-11
ppocr/modeling/backbones/det_resnet_vd.py
ppocr/modeling/backbones/det_resnet_vd.py
+8
-5
ppocr/modeling/backbones/rec_resnet_vd.py
ppocr/modeling/backbones/rec_resnet_vd.py
+9
-6
No files found.
ppocr/modeling/backbones/det_resnet_vd.py
View file @
b2004fe5
...
@@ -19,6 +19,7 @@ from __future__ import print_function
...
@@ -19,6 +19,7 @@ from __future__ import print_function
import
paddle
import
paddle
from
paddle
import
ParamAttr
from
paddle
import
ParamAttr
import
paddle.nn
as
nn
import
paddle.nn
as
nn
import
paddle.nn.functional
as
F
__all__
=
[
"ResNet"
]
__all__
=
[
"ResNet"
]
...
@@ -37,9 +38,9 @@ class ConvBNLayer(nn.Layer):
...
@@ -37,9 +38,9 @@ class ConvBNLayer(nn.Layer):
super
(
ConvBNLayer
,
self
).
__init__
()
super
(
ConvBNLayer
,
self
).
__init__
()
self
.
is_vd_mode
=
is_vd_mode
self
.
is_vd_mode
=
is_vd_mode
self
.
_pool2d_avg
=
nn
.
AvgPool2
d
(
self
.
_pool2d_avg
=
nn
.
AvgPool2
D
(
kernel_size
=
2
,
stride
=
2
,
padding
=
0
,
ceil_mode
=
True
)
kernel_size
=
2
,
stride
=
2
,
padding
=
0
,
ceil_mode
=
True
)
self
.
_conv
=
nn
.
Conv2
d
(
self
.
_conv
=
nn
.
Conv2
D
(
in_channels
=
in_channels
,
in_channels
=
in_channels
,
out_channels
=
out_channels
,
out_channels
=
out_channels
,
kernel_size
=
kernel_size
,
kernel_size
=
kernel_size
,
...
@@ -118,7 +119,8 @@ class BottleneckBlock(nn.Layer):
...
@@ -118,7 +119,8 @@ class BottleneckBlock(nn.Layer):
short
=
inputs
short
=
inputs
else
:
else
:
short
=
self
.
short
(
inputs
)
short
=
self
.
short
(
inputs
)
y
=
paddle
.
elementwise_add
(
x
=
short
,
y
=
conv2
,
act
=
'relu'
)
y
=
paddle
.
add
(
x
=
short
,
y
=
conv2
)
y
=
F
.
relu
(
y
)
return
y
return
y
...
@@ -165,7 +167,8 @@ class BasicBlock(nn.Layer):
...
@@ -165,7 +167,8 @@ class BasicBlock(nn.Layer):
short
=
inputs
short
=
inputs
else
:
else
:
short
=
self
.
short
(
inputs
)
short
=
self
.
short
(
inputs
)
y
=
paddle
.
elementwise_add
(
x
=
short
,
y
=
conv1
,
act
=
'relu'
)
y
=
paddle
.
add
(
x
=
short
,
y
=
conv1
)
y
=
F
.
relu
(
y
)
return
y
return
y
...
@@ -214,7 +217,7 @@ class ResNet(nn.Layer):
...
@@ -214,7 +217,7 @@ class ResNet(nn.Layer):
stride
=
1
,
stride
=
1
,
act
=
'relu'
,
act
=
'relu'
,
name
=
"conv1_3"
)
name
=
"conv1_3"
)
self
.
pool2d_max
=
nn
.
MaxPool2
d
(
kernel_size
=
3
,
stride
=
2
,
padding
=
1
)
self
.
pool2d_max
=
nn
.
MaxPool2
D
(
kernel_size
=
3
,
stride
=
2
,
padding
=
1
)
self
.
stages
=
[]
self
.
stages
=
[]
self
.
out_channels
=
[]
self
.
out_channels
=
[]
...
...
ppocr/modeling/backbones/rec_resnet_vd.py
View file @
b2004fe5
...
@@ -19,6 +19,7 @@ from __future__ import print_function
...
@@ -19,6 +19,7 @@ from __future__ import print_function
import
paddle
import
paddle
from
paddle
import
ParamAttr
from
paddle
import
ParamAttr
import
paddle.nn
as
nn
import
paddle.nn
as
nn
import
paddle.nn.functional
as
F
__all__
=
[
"ResNet"
]
__all__
=
[
"ResNet"
]
...
@@ -37,9 +38,9 @@ class ConvBNLayer(nn.Layer):
...
@@ -37,9 +38,9 @@ class ConvBNLayer(nn.Layer):
super
(
ConvBNLayer
,
self
).
__init__
()
super
(
ConvBNLayer
,
self
).
__init__
()
self
.
is_vd_mode
=
is_vd_mode
self
.
is_vd_mode
=
is_vd_mode
self
.
_pool2d_avg
=
nn
.
AvgPool2
d
(
self
.
_pool2d_avg
=
nn
.
AvgPool2
D
(
kernel_size
=
stride
,
stride
=
stride
,
padding
=
0
,
ceil_mode
=
True
)
kernel_size
=
stride
,
stride
=
stride
,
padding
=
0
,
ceil_mode
=
True
)
self
.
_conv
=
nn
.
Conv2
d
(
self
.
_conv
=
nn
.
Conv2
D
(
in_channels
=
in_channels
,
in_channels
=
in_channels
,
out_channels
=
out_channels
,
out_channels
=
out_channels
,
kernel_size
=
kernel_size
,
kernel_size
=
kernel_size
,
...
@@ -119,7 +120,8 @@ class BottleneckBlock(nn.Layer):
...
@@ -119,7 +120,8 @@ class BottleneckBlock(nn.Layer):
short
=
inputs
short
=
inputs
else
:
else
:
short
=
self
.
short
(
inputs
)
short
=
self
.
short
(
inputs
)
y
=
paddle
.
elementwise_add
(
x
=
short
,
y
=
conv2
,
act
=
'relu'
)
y
=
paddle
.
add
(
x
=
short
,
y
=
conv2
)
y
=
F
.
relu
(
y
)
return
y
return
y
...
@@ -166,7 +168,8 @@ class BasicBlock(nn.Layer):
...
@@ -166,7 +168,8 @@ class BasicBlock(nn.Layer):
short
=
inputs
short
=
inputs
else
:
else
:
short
=
self
.
short
(
inputs
)
short
=
self
.
short
(
inputs
)
y
=
paddle
.
elementwise_add
(
x
=
short
,
y
=
conv1
,
act
=
'relu'
)
y
=
paddle
.
add
(
x
=
short
,
y
=
conv1
)
y
=
F
.
relu
(
y
)
return
y
return
y
...
@@ -215,7 +218,7 @@ class ResNet(nn.Layer):
...
@@ -215,7 +218,7 @@ class ResNet(nn.Layer):
stride
=
1
,
stride
=
1
,
act
=
'relu'
,
act
=
'relu'
,
name
=
"conv1_3"
)
name
=
"conv1_3"
)
self
.
pool2d_max
=
nn
.
MaxPool2
d
(
kernel_size
=
3
,
stride
=
2
,
padding
=
1
)
self
.
pool2d_max
=
nn
.
MaxPool2
D
(
kernel_size
=
3
,
stride
=
2
,
padding
=
1
)
self
.
block_list
=
[]
self
.
block_list
=
[]
if
layers
>=
50
:
if
layers
>=
50
:
...
@@ -270,7 +273,7 @@ class ResNet(nn.Layer):
...
@@ -270,7 +273,7 @@ class ResNet(nn.Layer):
shortcut
=
True
shortcut
=
True
self
.
block_list
.
append
(
basic_block
)
self
.
block_list
.
append
(
basic_block
)
self
.
out_channels
=
num_filters
[
block
]
self
.
out_channels
=
num_filters
[
block
]
self
.
out_pool
=
nn
.
MaxPool2
d
(
kernel_size
=
2
,
stride
=
2
,
padding
=
0
)
self
.
out_pool
=
nn
.
MaxPool2
D
(
kernel_size
=
2
,
stride
=
2
,
padding
=
0
)
def
forward
(
self
,
inputs
):
def
forward
(
self
,
inputs
):
y
=
self
.
conv1_1
(
inputs
)
y
=
self
.
conv1_1
(
inputs
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment