Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
X2Paddle
提交
c676f021
X
X2Paddle
项目概览
PaddlePaddle
/
X2Paddle
大约 2 年 前同步成功
通知
329
Star
698
Fork
167
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
26
列表
看板
标记
里程碑
合并请求
4
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
X
X2Paddle
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
26
Issue
26
列表
看板
标记
里程碑
合并请求
4
合并请求
4
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
c676f021
编写于
9月 17, 2019
作者:
C
Channingss
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
merge elementwise op convert, supported dynamic scale for resize op
上级
84e9e190
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
27 addition
and
27 deletion
+27
-27
tools/check_code_style.sh
tools/check_code_style.sh
+1
-0
x2paddle/op_mapper/onnx_op_mapper.py
x2paddle/op_mapper/onnx_op_mapper.py
+26
-27
未找到文件。
tools/check_code_style.sh
浏览文件 @
c676f021
...
...
@@ -7,6 +7,7 @@ function abort(){
trap
'abort'
0
set
-e
TRAVIS_BUILD_DIR
=
${
PWD
}
cd
$TRAVIS_BUILD_DIR
export
PATH
=
/usr/bin:
$PATH
pre-commit
install
...
...
x2paddle/op_mapper/onnx_op_mapper.py
浏览文件 @
c676f021
...
...
@@ -57,7 +57,8 @@ class ONNXOpMapper(OpMapper):
'Div'
:
'elementwise_div'
,
'Sub'
:
'elementwise_sub'
,
'Mul'
:
'elementwise_mul'
,
'Pow'
:
'elementwise_pow'
,}
'Pow'
:
'elementwise_pow'
,
}
def
__init__
(
self
,
decoder
,
save_dir
):
super
(
ONNXOpMapper
,
self
).
__init__
()
...
...
@@ -160,8 +161,8 @@ class ONNXOpMapper(OpMapper):
for
opt
in
layer
.
output
:
if
opt
in
value_infos
:
value_info
=
value_infos
[
opt
]
if
len
(
value_info
[
'shape'
]
)
==
0
or
value_info
[
'dtype'
]
is
None
or
0
in
value_info
[
'shape'
]:
if
len
(
value_info
[
'shape'
]
)
==
0
or
value_info
[
'dtype'
]
is
None
or
0
in
value_info
[
'shape'
]:
if
self
.
is_inference
==
False
:
self
.
get_results_of_inference
(
onnx_model
,
value_infos
,
...
...
@@ -258,13 +259,14 @@ class ONNXOpMapper(OpMapper):
if
child_func_code
is
not
None
:
self
.
used_custom_layers
[
op
+
'_child_func'
]
=
child_func_code
def
elementwise_map
(
self
,
node
):
assert
node
.
layer_type
in
self
.
elementwise_ops
op_type
=
self
.
elementwise_ops
[
node
.
layer_type
]
val_x
=
self
.
graph
.
get_input_node
(
node
,
idx
=
0
,
copy
=
True
)
val_y
=
self
.
graph
.
get_input_node
(
node
,
idx
=
1
,
copy
=
True
)
if
len
(
val_x
.
out_shapes
[
0
])
<
len
(
val_y
.
out_shapes
[
0
]):
if
len
(
val_x
.
out_shapes
[
0
])
<
len
(
val_y
.
out_shapes
[
0
]):
val_x
,
val_y
=
val_y
,
val_x
val_y_shape
=
val_y
.
out_shapes
[
0
]
...
...
@@ -276,7 +278,6 @@ class ONNXOpMapper(OpMapper):
slice_idx
+=
1
else
:
break
attr
=
{
"name"
:
string
(
node
.
layer_name
)}
if
slice_idx
<
len
(
val_y_shape
)
and
slice_idx
>
0
:
val_y_reshaped
=
val_y_shape
[
slice_idx
:]
...
...
@@ -380,7 +381,9 @@ class ONNXOpMapper(OpMapper):
fluid_op
=
'resize_{}'
.
format
(
mode
)
if
'linear'
in
mode
:
print
(
'Warnning: paddle not support resize wiht mode: linear, we use bilinear replace linear'
)
print
(
'Warnning: paddle not support resize wiht mode: linear, we use bilinear replace linear'
)
fluid_op
=
'resize_bilinear'
if
isinstance
(
val_scales
,
ONNXGraphNode
):
...
...
@@ -447,7 +450,7 @@ class ONNXOpMapper(OpMapper):
val_x
=
self
.
graph
.
get_input_node
(
node
,
idx
=
0
,
copy
=
True
)
axes
=
node
.
get_attr
(
'axes'
)
if
len
(
val_x
.
out_shapes
[
0
])
==
0
:
if
len
(
val_x
.
out_shapes
[
0
])
==
0
:
node
.
fluid_code
.
add_layer
(
'assign'
,
inputs
=
val_x
,
output
=
node
,
...
...
@@ -459,9 +462,6 @@ class ONNXOpMapper(OpMapper):
output
=
node
,
param_attr
=
attr
)
def
Shrink
(
self
,
node
):
val_x
=
self
.
graph
.
get_input_node
(
node
,
idx
=
0
,
copy
=
True
)
bias
=
node
.
get_attr
(
'bias'
)
...
...
@@ -845,7 +845,6 @@ class ONNXOpMapper(OpMapper):
output
=
node
,
param_attr
=
attr
)
def
Sum
(
self
,
node
):
val_inps
=
node
.
layer
.
input
inputs
=
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录