Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
慢慢CG
Mace
提交
c264d3b2
Mace
项目概览
慢慢CG
/
Mace
与 Fork 源项目一致
Fork自
Xiaomi / Mace
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Mace
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
c264d3b2
编写于
1月 18, 2018
作者:
Y
yejianwu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
merge commit in mace repo
上级
0e5ebc1f
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
16 addition
and
2 deletion
+16
-2
python/tools/model.template
python/tools/model.template
+4
-0
python/tools/source_converter_lib.py
python/tools/source_converter_lib.py
+2
-1
python/tools/tf_converter.py
python/tools/tf_converter.py
+10
-1
未找到文件。
python/tools/model.template
浏览文件 @
c264d3b2
...
...
@@ -263,6 +263,10 @@ NetDef CreateNet() {
return net_def;
}
const std::string ModelChecksum() {
return {{ model_pb_checksum|tojson }};
}
} // namespace {{tag}}
} // namespace mace
{% endif %}
python/tools/source_converter_lib.py
浏览文件 @
c264d3b2
...
...
@@ -86,7 +86,7 @@ class TensorInfo:
def
stringfy
(
value
):
return
', '
.
join
(
'"{0}"'
.
format
(
w
)
for
w
in
value
)
def
convert_to_source
(
net_def
,
template
,
obfuscate
,
model_tag
,
output
,
runtime
):
def
convert_to_source
(
net_def
,
mode_pb_checksum
,
template
,
obfuscate
,
model_tag
,
output
,
runtime
):
if
obfuscate
:
obfuscate_name
(
net_def
)
else
:
...
...
@@ -140,6 +140,7 @@ def convert_to_source(net_def, template, obfuscate, model_tag, output, runtime):
tag
=
model_tag
,
mode
=
2
,
runtime
=
runtime
,
model_pb_checksum
=
mode_pb_checksum
,
)
with
gfile
.
GFile
(
output
,
"wb"
)
as
f
:
f
.
write
(
source
)
python/tools/tf_converter.py
浏览文件 @
c264d3b2
import
argparse
import
sys
import
hashlib
import
tensorflow
as
tf
from
tensorflow
import
gfile
from
lib.proto
import
mace_pb2
...
...
@@ -11,11 +12,19 @@ from lib.python.tools import source_converter_lib
FLAGS
=
None
def
md5
(
fname
):
hash_md5
=
hashlib
.
md5
()
with
open
(
fname
,
"rb"
)
as
f
:
for
chunk
in
iter
(
lambda
:
f
.
read
(
4096
),
b
""
):
hash_md5
.
update
(
chunk
)
return
hash_md5
.
hexdigest
()
def
main
(
unused_args
):
if
not
gfile
.
Exists
(
FLAGS
.
input
):
print
(
"Input graph file '"
+
FLAGS
.
input
+
"' does not exist!"
)
return
-
1
mode_pb_checksum
=
md5
(
FLAGS
.
input
)
input_graph_def
=
tf
.
GraphDef
()
with
gfile
.
Open
(
FLAGS
.
input
,
"rb"
)
as
f
:
data
=
f
.
read
()
...
...
@@ -29,7 +38,7 @@ def main(unused_args):
input_graph_def
,
FLAGS
.
input_node
,
FLAGS
.
output_node
,
FLAGS
.
data_type
,
FLAGS
.
runtime
)
if
FLAGS
.
output_type
==
'source'
:
source_converter_lib
.
convert_to_source
(
output_graph_def
,
FLAGS
.
template
,
FLAGS
.
obfuscate
,
source_converter_lib
.
convert_to_source
(
output_graph_def
,
mode_pb_checksum
,
FLAGS
.
template
,
FLAGS
.
obfuscate
,
FLAGS
.
model_tag
,
FLAGS
.
output
,
FLAGS
.
runtime
)
else
:
with
gfile
.
GFile
(
FLAGS
.
output
,
"wb"
)
as
f
:
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录