Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
慢慢CG
Mace
提交
1dff40fc
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看板
提交
1dff40fc
编写于
3月 02, 2018
作者:
L
liuqi
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Support caffe model.
上级
dabe486e
变更
3
显示空白变更内容
内联
并排
Showing
3 changed file
with
46 addition
and
6 deletion
+46
-6
generate_model_code.sh
generate_model_code.sh
+4
-2
mace_tools.py
mace_tools.py
+0
-1
validate_tools.sh
validate_tools.sh
+42
-3
未找到文件。
generate_model_code.sh
浏览文件 @
1dff40fc
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
CURRENT_DIR
=
`
dirname
$0
`
CURRENT_DIR
=
`
dirname
$0
`
source
${
CURRENT_DIR
}
/env.sh
source
${
CURRENT_DIR
}
/env.sh
bazel build //lib/python/tools:
tf_
converter
||
exit
1
bazel build //lib/python/tools:converter
||
exit
1
rm
-rf
${
MODEL_CODEGEN_DIR
}
rm
-rf
${
MODEL_CODEGEN_DIR
}
mkdir
-p
${
MODEL_CODEGEN_DIR
}
mkdir
-p
${
MODEL_CODEGEN_DIR
}
if
[
${
DSP_MODE
}
]
;
then
if
[
${
DSP_MODE
}
]
;
then
...
@@ -15,7 +15,9 @@ if [ "${BENCHMARK_FLAG}" = "1" ]; then
...
@@ -15,7 +15,9 @@ if [ "${BENCHMARK_FLAG}" = "1" ]; then
OBFUSCATE
=
False
OBFUSCATE
=
False
fi
fi
bazel-bin/lib/python/tools/tf_converter
--input
=
${
MODEL_FILE_PATH
}
\
bazel-bin/lib/python/tools/tf_converter
--platform
=
${
PLATFORM
}
\
--model_file
=
${
MODEL_FILE_PATH
}
\
--weight_file
=
${
WEIGHT_FILE_PATH
}
\
--model_checksum
=
${
MODEL_SHA256_CHECKSUM
}
\
--model_checksum
=
${
MODEL_SHA256_CHECKSUM
}
\
--output
=
${
MODEL_CODEGEN_DIR
}
/model.cc
\
--output
=
${
MODEL_CODEGEN_DIR
}
/model.cc
\
--input_node
=
${
INPUT_NODE
}
\
--input_node
=
${
INPUT_NODE
}
\
...
...
mace_tools.py
浏览文件 @
1dff40fc
...
@@ -17,7 +17,6 @@ import yaml
...
@@ -17,7 +17,6 @@ import yaml
from
ConfigParser
import
ConfigParser
from
ConfigParser
import
ConfigParser
def
run_command
(
command
):
def
run_command
(
command
):
print
(
"Run command: {}"
.
format
(
command
))
print
(
"Run command: {}"
.
format
(
command
))
result
=
subprocess
.
Popen
(
result
=
subprocess
.
Popen
(
...
...
validate_tools.sh
浏览文件 @
1dff40fc
...
@@ -15,12 +15,17 @@ source ${CURRENT_DIR}/env.sh
...
@@ -15,12 +15,17 @@ source ${CURRENT_DIR}/env.sh
MODEL_OUTPUT_DIR
=
$1
MODEL_OUTPUT_DIR
=
$1
GENERATE_DATA_OR_NOT
=
$2
GENERATE_DATA_OR_NOT
=
$2
echo
$MODEL_OUTPUT_DIR
if
[
"
$GENERATE_DATA_OR_NOT
"
=
1
]
;
then
if
[
"
$GENERATE_DATA_OR_NOT
"
=
1
]
;
then
rm
-rf
${
MODEL_OUTPUT_DIR
}
/
${
INPUT_FILE_NAME
}
rm
-rf
${
MODEL_OUTPUT_DIR
}
/
${
INPUT_FILE_NAME
}
python tools/validate.py
--generate_data
true
\
python tools/validate.py
--generate_data
true
\
--input_file
=
${
MODEL_OUTPUT_DIR
}
/
${
INPUT_FILE_NAME
}
\
--input_file
=
${
MODEL_OUTPUT_DIR
}
/
${
INPUT_FILE_NAME
}
\
--input_shape
=
"
${
INPUT_SHAPE
}
"
||
exit
1
--input_shape
=
"
${
INPUT_SHAPE
}
"
||
exit
1
else
exit
0
fi
if
[
"
$PLATFORM
"
=
"tensorflow"
]
;
then
rm
-rf
${
MODEL_OUTPUT_DIR
}
/
${
OUTPUT_FILE_NAME
}
rm
-rf
${
MODEL_OUTPUT_DIR
}
/
${
OUTPUT_FILE_NAME
}
adb </dev/null pull
${
PHONE_DATA_DIR
}
/
${
OUTPUT_FILE_NAME
}
${
MODEL_OUTPUT_DIR
}
adb </dev/null pull
${
PHONE_DATA_DIR
}
/
${
OUTPUT_FILE_NAME
}
${
MODEL_OUTPUT_DIR
}
python tools/validate.py
--model_file
${
MODEL_FILE_PATH
}
\
python tools/validate.py
--model_file
${
MODEL_FILE_PATH
}
\
...
@@ -30,5 +35,39 @@ else
...
@@ -30,5 +35,39 @@ else
--input_node
${
INPUT_NODE
}
\
--input_node
${
INPUT_NODE
}
\
--output_node
${
OUTPUT_NODE
}
\
--output_node
${
OUTPUT_NODE
}
\
--input_shape
${
INPUT_SHAPE
}
\
--input_shape
${
INPUT_SHAPE
}
\
--output_shape
${
OUTPUT_SHAPE
}
||
exit
1
elif
[
"
$PLATFORM
"
=
"caffe"
]
;
then
IMAGE_NAME
=
mace-caffe:latest
CONTAINER_NAME
=
mace_caffe_validator
RES_FILE
=
validation.result
if
[[
"
$(
docker images
-q
mace-caffe:latest 2> /dev/null
)
"
==
""
]]
;
then
echo
"Build caffe docker"
docker build
-t
${
IMAGE_NAME
}
docker/caffe
||
exit
1
fi
if
[
!
"
$(
docker ps
-qa
-f
name
=
${
CONTAINER_NAME
}
)
"
]
;
then
echo
"Run caffe container"
docker run
-d
-it
--name
${
CONTAINER_NAME
}
${
IMAGE_NAME
}
/bin/bash
||
exit
1
fi
rm
-rf
${
MODEL_OUTPUT_DIR
}
/
${
OUTPUT_FILE_NAME
}
adb </dev/null pull
${
PHONE_DATA_DIR
}
/
${
OUTPUT_FILE_NAME
}
${
MODEL_OUTPUT_DIR
}
docker
cp
tools/validate_caffe.py
${
CONTAINER_NAME
}
:/mace
docker
cp
${
MODEL_OUTPUT_DIR
}
/
${
INPUT_FILE_NAME
}
${
CONTAINER_NAME
}
:/mace
docker
cp
${
MODEL_OUTPUT_DIR
}
/
${
OUTPUT_FILE_NAME
}
${
CONTAINER_NAME
}
:/mace
docker
cp
${
MODEL_FILE_PATH
}
${
CONTAINER_NAME
}
:/mace
docker
cp
${
WEIGHT_FILE_PATH
}
${
CONTAINER_NAME
}
:/mace
docker
exec
-it
${
CONTAINER_NAME
}
python /mace/validate_caffe.py
--model_file
/mace/
${
MODEL_NAME
}
\
--weight_file
/mace/
${
WEIGHT_NAME
}
\
--input_file
/mace/
${
INPUT_FILE_NAME
}
\
--mace_out_file
/mace/
${
OUTPUT_FILE_NAME
}
\
--mace_runtime
${
RUNTIME
}
\
--input_node
${
INPUT_NODE
}
\
--output_node
${
OUTPUT_NODE
}
\
--input_shape
${
INPUT_SHAPE
}
\
--output_shape
${
OUTPUT_SHAPE
}
--output_shape
${
OUTPUT_SHAPE
}
fi
fi
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录