Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
X2Paddle
提交
068a7e61
X
X2Paddle
项目概览
PaddlePaddle
/
X2Paddle
大约 1 年 前同步成功
通知
328
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看板
提交
068a7e61
编写于
11月 06, 2020
作者:
C
Channingss
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
rm paddle2onnx
上级
130a48cd
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
4 addition
and
31 deletion
+4
-31
README.md
README.md
+2
-4
x2paddle/convert.py
x2paddle/convert.py
+2
-27
未找到文件。
README.md
浏览文件 @
068a7e61
...
@@ -47,13 +47,12 @@ x2paddle --framework=onnx --model=onnx_model.onnx --save_dir=pd_model
...
@@ -47,13 +47,12 @@ x2paddle --framework=onnx --model=onnx_model.onnx --save_dir=pd_model
### Paddle2ONNX
### Paddle2ONNX
```
```
# 注意:paddle_infer_model_dir下需包含__model__和__params__两个文件
Paddle2ONNX功能已迁移至新的github: https://github.com/PaddlePaddle/paddle2onnx, 欢迎大家去新的代码仓库查看详细介绍以及新功能。
x2paddle --framework=paddle2onnx --model=paddle_infer_model_dir --save_dir=onnx_model
```
```
### 参数选项
### 参数选项
| 参数 | |
| 参数 | |
|----------|--------------|
|----------|--------------|
|--framework | 源模型类型 (tensorflow、caffe、onnx
、paddle2onnx
) |
|--framework | 源模型类型 (tensorflow、caffe、onnx) |
|--prototxt | 当framework为caffe时,该参数指定caffe模型的proto文件路径 |
|--prototxt | 当framework为caffe时,该参数指定caffe模型的proto文件路径 |
|--weight | 当framework为caffe时,该参数指定caffe模型的参数文件路径 |
|--weight | 当framework为caffe时,该参数指定caffe模型的参数文件路径 |
|--save_dir | 指定转换后的模型保存目录路径 |
|--save_dir | 指定转换后的模型保存目录路径 |
...
@@ -61,7 +60,6 @@ x2paddle --framework=paddle2onnx --model=paddle_infer_model_dir --save_dir=onnx_
...
@@ -61,7 +60,6 @@ x2paddle --framework=paddle2onnx --model=paddle_infer_model_dir --save_dir=onnx_
|--caffe_proto |
**[可选]**
由caffe.proto编译成caffe_pb2.py文件的存放路径,当存在自定义Layer时使用,默认为None |
|--caffe_proto |
**[可选]**
由caffe.proto编译成caffe_pb2.py文件的存放路径,当存在自定义Layer时使用,默认为None |
|--define_input_shape |
**[可选]**
For TensorFlow, 当指定该参数时,强制用户输入每个Placeholder的shape,见
[
文档Q2
](
FAQ.md
)
|
|--define_input_shape |
**[可选]**
For TensorFlow, 当指定该参数时,强制用户输入每个Placeholder的shape,见
[
文档Q2
](
FAQ.md
)
|
|--params_merge |
**[可选]**
当指定该参数时,转换完成后,inference_model中的所有模型参数将合并保存为一个文件__params__ |
|--params_merge |
**[可选]**
当指定该参数时,转换完成后,inference_model中的所有模型参数将合并保存为一个文件__params__ |
|--onnx_opset |
**[可选]**
当framework为paddle2onnx时,该参数可设置转换为ONNX的OpSet版本,目前支持9、10、11,默认为10 |
...
...
x2paddle/convert.py
浏览文件 @
068a7e61
...
@@ -75,12 +75,6 @@ def arg_parser():
...
@@ -75,12 +75,6 @@ def arg_parser():
action
=
"store_true"
,
action
=
"store_true"
,
default
=
False
,
default
=
False
,
help
=
"define input shape for tf model"
)
help
=
"define input shape for tf model"
)
parser
.
add_argument
(
"--onnx_opset"
,
"-oo"
,
type
=
int
,
default
=
10
,
help
=
"when paddle2onnx set onnx opset version to export"
)
parser
.
add_argument
(
parser
.
add_argument
(
"--params_merge"
,
"--params_merge"
,
"-pm"
,
"-pm"
,
...
@@ -224,24 +218,6 @@ def pytorch2paddle(model_path, save_dir, input_shapes):
...
@@ -224,24 +218,6 @@ def pytorch2paddle(model_path, save_dir, input_shapes):
mapper
.
graph
.
gen_model
(
save_dir
,
real_input_shapes
)
mapper
.
graph
.
gen_model
(
save_dir
,
real_input_shapes
)
def
paddle2onnx
(
model_path
,
save_dir
,
opset_version
=
10
):
import
paddle.fluid
as
fluid
try
:
import
paddle2onnx
except
:
print
(
"[ERROR] paddle2onnx not installed, use
\"
pip install paddle2onnx
\"
"
)
import
paddle2onnx
as
p2o
model
=
p2o
.
PaddleDecoder
(
model_path
,
'__model__'
,
'__params__'
)
mapper
=
p2o
.
PaddleOpMapper
()
mapper
.
convert
(
model
.
program
,
save_dir
,
scope
=
fluid
.
global_scope
(),
opset_version
=
opset_version
)
def
main
():
def
main
():
if
len
(
sys
.
argv
)
<
2
:
if
len
(
sys
.
argv
)
<
2
:
print
(
"Use
\"
x2paddle -h
\"
to print the help information"
)
print
(
"Use
\"
x2paddle -h
\"
to print the help information"
)
...
@@ -306,12 +282,11 @@ def main():
...
@@ -306,12 +282,11 @@ def main():
onnx2paddle
(
args
.
model
,
args
.
save_dir
,
params_merge
)
onnx2paddle
(
args
.
model
,
args
.
save_dir
,
params_merge
)
elif
args
.
framework
==
"paddle2onnx"
:
elif
args
.
framework
==
"paddle2onnx"
:
assert
args
.
model
is
not
None
,
"--model should be defined while translating paddle model to onnx"
print
(
"Paddle to ONNX tool has been migrated to the new github: https://github.com/PaddlePaddle/paddle2onnx"
)
paddle2onnx
(
args
.
model
,
args
.
save_dir
,
opset_version
=
args
.
onnx_opset
)
else
:
else
:
raise
Exception
(
raise
Exception
(
"--framework only support tensorflow/caffe/onnx/
paddle2onnx
now"
)
"--framework only support tensorflow/caffe/onnx/ now"
)
if
__name__
==
"__main__"
:
if
__name__
==
"__main__"
:
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录