提交 6309ecc1 编写于 作者: L liuqi

Update odd key to even in yaml.

上级 a0037e11
...@@ -38,10 +38,10 @@ if [ x"$TARGET_ABI" == x"host" ]; then ...@@ -38,10 +38,10 @@ if [ x"$TARGET_ABI" == x"host" ]; then
${MODEL_OUTPUT_DIR}/benchmark_model \ ${MODEL_OUTPUT_DIR}/benchmark_model \
--model_data_file=${PHONE_DATA_DIR}/${MODEL_TAG}.data \ --model_data_file=${PHONE_DATA_DIR}/${MODEL_TAG}.data \
--device=${DEVICE_TYPE} \ --device=${DEVICE_TYPE} \
--input_node="${INPUT_NODE}" \ --input_node="${INPUT_NODES}" \
--input_shape="${INPUT_SHAPE}"\ --input_shape="${INPUT_SHAPES}"\
--output_node="${OUTPUT_NODE}" \ --output_node="${OUTPUT_NODES}" \
--output_shape="${OUTPUT_SHAPE}"\ --output_shape="${OUTPUT_SHAPES}"\
--input_file=${MODEL_OUTPUT_DIR}/${INPUT_FILE_NAME} || exit 1 --input_file=${MODEL_OUTPUT_DIR}/${INPUT_FILE_NAME} || exit 1
else else
...@@ -60,7 +60,7 @@ else ...@@ -60,7 +60,7 @@ else
cp bazel-bin/benchmark/benchmark_model $MODEL_OUTPUT_DIR cp bazel-bin/benchmark/benchmark_model $MODEL_OUTPUT_DIR
adb shell "mkdir -p ${PHONE_DATA_DIR}" || exit 1 adb shell "mkdir -p ${PHONE_DATA_DIR}" || exit 1
IFS=',' read -r -a INPUT_NAMES <<< "${INPUT_NODE}" IFS=',' read -r -a INPUT_NAMES <<< "${INPUT_NODES}"
for NAME in "${INPUT_NAMES[@]}";do for NAME in "${INPUT_NAMES[@]}";do
FORMATTED_NAME=$(sed s/[^[:alnum:]]/_/g <<< ${NAME}) FORMATTED_NAME=$(sed s/[^[:alnum:]]/_/g <<< ${NAME})
adb push ${MODEL_OUTPUT_DIR}/${INPUT_FILE_NAME}_${FORMATTED_NAME} ${PHONE_DATA_DIR} || exit 1 adb push ${MODEL_OUTPUT_DIR}/${INPUT_FILE_NAME}_${FORMATTED_NAME} ${PHONE_DATA_DIR} || exit 1
...@@ -79,9 +79,9 @@ else ...@@ -79,9 +79,9 @@ else
${PHONE_DATA_DIR}/benchmark_model \ ${PHONE_DATA_DIR}/benchmark_model \
--model_data_file=${PHONE_DATA_DIR}/${MODEL_TAG}.data \ --model_data_file=${PHONE_DATA_DIR}/${MODEL_TAG}.data \
--device=${DEVICE_TYPE} \ --device=${DEVICE_TYPE} \
--input_node="${INPUT_NODE}" \ --input_node="${INPUT_NODES}" \
--input_shape="${INPUT_SHAPE}"\ --input_shape="${INPUT_SHAPES}"\
--output_node="${OUTPUT_NODE}" \ --output_node="${OUTPUT_NODES}" \
--output_shape="${OUTPUT_SHAPE}"\ --output_shape="${OUTPUT_SHAPES}"\
--input_file=${PHONE_DATA_DIR}/${INPUT_FILE_NAME} || exit 1 --input_file=${PHONE_DATA_DIR}/${INPUT_FILE_NAME} || exit 1
fi fi
...@@ -10,10 +10,10 @@ models: ...@@ -10,10 +10,10 @@ models:
platform: tensorflow platform: tensorflow
model_file_path: path/to/model64.pb # also support http:// and https:// model_file_path: path/to/model64.pb # also support http:// and https://
model_sha256_checksum: 05d92625809dc9edd6484882335c48c043397aed450a168d75eb8b538e86881a model_sha256_checksum: 05d92625809dc9edd6484882335c48c043397aed450a168d75eb8b538e86881a
input_node: input_node input_nodes: input_node
output_node: output_node output_nodes: output_node
input_shape: 1,64,64,3 input_shapes: 1,64,64,3
output_shape: 1,64,64,2 output_shapes: 1,64,64,2
runtime: gpu runtime: gpu
limit_opencl_kernel_time: 0 limit_opencl_kernel_time: 0
dsp_mode: 0 dsp_mode: 0
...@@ -25,12 +25,16 @@ models: ...@@ -25,12 +25,16 @@ models:
weight_file_path: path/to/weight.caffemodel weight_file_path: path/to/weight.caffemodel
model_sha256_checksum: 05d92625809dc9edd6484882335c48c043397aed450a168d75eb8b538e86881a model_sha256_checksum: 05d92625809dc9edd6484882335c48c043397aed450a168d75eb8b538e86881a
weight_sha256_checksum: 05d92625809dc9edd6484882335c48c043397aed450a168d75eb8b538e86881a weight_sha256_checksum: 05d92625809dc9edd6484882335c48c043397aed450a168d75eb8b538e86881a
input_node: [input_node0, input_node1] input_nodes:
output_node: [output_node0, output_node1] - input_node0
input_shape: - input_node1
output_nodes:
- output_node0
- output_node1
input_shapes:
- 1,256,256,3 - 1,256,256,3
- 1,128,128,3 - 1,128,128,3
output_shape: output_shapes:
- 1,256,256,2 - 1,256,256,2
- 1,1,1,2 - 1,1,1,2
runtime: cpu runtime: cpu
......
...@@ -15,14 +15,14 @@ bazel-bin/lib/python/tools/converter --platform=${PLATFORM} \ ...@@ -15,14 +15,14 @@ bazel-bin/lib/python/tools/converter --platform=${PLATFORM} \
--weight_file=${WEIGHT_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_NODES} \
--output_node=${OUTPUT_NODE} \ --output_node=${OUTPUT_NODES} \
--data_type=${DATA_TYPE} \ --data_type=${DATA_TYPE} \
--runtime=${RUNTIME} \ --runtime=${RUNTIME} \
--output_type=source \ --output_type=source \
--template=${LIBMACE_SOURCE_DIR}/lib/python/tools/model.template \ --template=${LIBMACE_SOURCE_DIR}/lib/python/tools/model.template \
--model_tag=${MODEL_TAG} \ --model_tag=${MODEL_TAG} \
--input_shape=${INPUT_SHAPE} \ --input_shape=${INPUT_SHAPES} \
${DSP_MODE_FLAG} \ ${DSP_MODE_FLAG} \
--embed_model_data=${EMBED_MODEL_DATA} \ --embed_model_data=${EMBED_MODEL_DATA} \
--winograd=${FAST_CONV} \ --winograd=${FAST_CONV} \
......
...@@ -205,9 +205,9 @@ def main(unused_args): ...@@ -205,9 +205,9 @@ def main(unused_args):
os.environ["MODEL_TAG"] = model_name os.environ["MODEL_TAG"] = model_name
model_config = configs["models"][model_name] model_config = configs["models"][model_name]
for key in model_config: for key in model_config:
if key in ['input_node', 'output_node'] and isinstance(model_config[key], list): if key in ['input_nodes', 'output_nodes'] and isinstance(model_config[key], list):
os.environ[key.upper()] = ",".join(model_config[key]) os.environ[key.upper()] = ",".join(model_config[key])
elif key in ['input_shape', 'output_shape'] and isinstance(model_config[key], list): elif key in ['input_shapes', 'output_shapes'] and isinstance(model_config[key], list):
os.environ[key.upper()] = ":".join(model_config[key]) os.environ[key.upper()] = ":".join(model_config[key])
else: else:
os.environ[key.upper()] = str(model_config[key]) os.environ[key.upper()] = str(model_config[key])
......
...@@ -20,10 +20,10 @@ PRODUCTION_MODE=$4 ...@@ -20,10 +20,10 @@ PRODUCTION_MODE=$4
if [ x"$TARGET_ABI" = x"host" ]; then if [ x"$TARGET_ABI" = x"host" ]; then
MACE_CPP_MIN_VLOG_LEVEL=$VLOG_LEVEL \ MACE_CPP_MIN_VLOG_LEVEL=$VLOG_LEVEL \
${MODEL_OUTPUT_DIR}/mace_run \ ${MODEL_OUTPUT_DIR}/mace_run \
--input_node="${INPUT_NODE}" \ --input_node="${INPUT_NODES}" \
--input_shape="${INPUT_SHAPE}"\ --input_shape="${INPUT_SHAPES}"\
--output_node="${OUTPUT_NODE}" \ --output_node="${OUTPUT_NODES}" \
--output_shape="${OUTPUT_SHAPE}"\ --output_shape="${OUTPUT_SHAPES}"\
--input_file=${MODEL_OUTPUT_DIR}/${INPUT_FILE_NAME} \ --input_file=${MODEL_OUTPUT_DIR}/${INPUT_FILE_NAME} \
--output_file=${MODEL_OUTPUT_DIR}/${OUTPUT_FILE_NAME} \ --output_file=${MODEL_OUTPUT_DIR}/${OUTPUT_FILE_NAME} \
--model_data_file=${MODEL_OUTPUT_DIR}/${MODEL_TAG}.data \ --model_data_file=${MODEL_OUTPUT_DIR}/${MODEL_TAG}.data \
...@@ -41,7 +41,7 @@ else ...@@ -41,7 +41,7 @@ else
adb shell "mkdir -p ${KERNEL_DIR}" || exit 1 adb shell "mkdir -p ${KERNEL_DIR}" || exit 1
fi fi
IFS=',' read -r -a INPUT_NAMES <<< "${INPUT_NODE}" IFS=',' read -r -a INPUT_NAMES <<< "${INPUT_NODES}"
for NAME in "${INPUT_NAMES[@]}";do for NAME in "${INPUT_NAMES[@]}";do
FORMATTED_NAME=$(sed s/[^[:alnum:]]/_/g <<< ${NAME}) FORMATTED_NAME=$(sed s/[^[:alnum:]]/_/g <<< ${NAME})
adb push ${MODEL_OUTPUT_DIR}/${INPUT_FILE_NAME}_${FORMATTED_NAME} ${PHONE_DATA_DIR} || exit 1 adb push ${MODEL_OUTPUT_DIR}/${INPUT_FILE_NAME}_${FORMATTED_NAME} ${PHONE_DATA_DIR} || exit 1
...@@ -61,10 +61,10 @@ else ...@@ -61,10 +61,10 @@ else
MACE_KERNEL_PATH=$KERNEL_DIR \ MACE_KERNEL_PATH=$KERNEL_DIR \
MACE_LIMIT_OPENCL_KERNEL_TIME=${LIMIT_OPENCL_KERNEL_TIME} \ MACE_LIMIT_OPENCL_KERNEL_TIME=${LIMIT_OPENCL_KERNEL_TIME} \
${PHONE_DATA_DIR}/mace_run \ ${PHONE_DATA_DIR}/mace_run \
--input_node="${INPUT_NODE}" \ --input_node="${INPUT_NODES}" \
--input_shape="${INPUT_SHAPE}"\ --input_shape="${INPUT_SHAPES}"\
--output_node="${OUTPUT_NODE}" \ --output_node="${OUTPUT_NODES}" \
--output_shape="${OUTPUT_SHAPE}"\ --output_shape="${OUTPUT_SHAPES}"\
--input_file=${PHONE_DATA_DIR}/${INPUT_FILE_NAME} \ --input_file=${PHONE_DATA_DIR}/${INPUT_FILE_NAME} \
--output_file=${PHONE_DATA_DIR}/${OUTPUT_FILE_NAME} \ --output_file=${PHONE_DATA_DIR}/${OUTPUT_FILE_NAME} \
--model_data_file=${PHONE_DATA_DIR}/${MODEL_TAG}.data \ --model_data_file=${PHONE_DATA_DIR}/${MODEL_TAG}.data \
......
...@@ -15,8 +15,8 @@ source ${CURRENT_DIR}/env.sh ...@@ -15,8 +15,8 @@ source ${CURRENT_DIR}/env.sh
MODEL_OUTPUT_DIR=$1 MODEL_OUTPUT_DIR=$1
GENERATE_DATA_OR_NOT=$2 GENERATE_DATA_OR_NOT=$2
IFS=',' read -r -a INPUT_NAMES <<< "${INPUT_NODE}" IFS=',' read -r -a INPUT_NAMES <<< "${INPUT_NODES}"
IFS=',' read -r -a OUTPUT_NAMES <<< "${OUTPUT_NODE}" IFS=',' read -r -a OUTPUT_NAMES <<< "${OUTPUT_NODES}"
echo $MODEL_OUTPUT_DIR echo $MODEL_OUTPUT_DIR
if [ "$GENERATE_DATA_OR_NOT" = 1 ]; then if [ "$GENERATE_DATA_OR_NOT" = 1 ]; then
...@@ -24,9 +24,9 @@ if [ "$GENERATE_DATA_OR_NOT" = 1 ]; then ...@@ -24,9 +24,9 @@ if [ "$GENERATE_DATA_OR_NOT" = 1 ]; then
FORMATTED_NAME=$(sed s/[^[:alnum:]]/_/g <<< ${NAME}) FORMATTED_NAME=$(sed s/[^[:alnum:]]/_/g <<< ${NAME})
rm -rf ${MODEL_OUTPUT_DIR}/${INPUT_FILE_NAME}_${FORMATTED_NAME} rm -rf ${MODEL_OUTPUT_DIR}/${INPUT_FILE_NAME}_${FORMATTED_NAME}
done done
python tools/generate_data.py --input_node=${INPUT_NODE} \ python tools/generate_data.py --input_node=${INPUT_NODES} \
--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_SHAPES}" || exit 1
exit 0 exit 0
fi fi
...@@ -43,10 +43,10 @@ if [ "$PLATFORM" == "tensorflow" ];then ...@@ -43,10 +43,10 @@ if [ "$PLATFORM" == "tensorflow" ];then
--input_file ${MODEL_OUTPUT_DIR}/${INPUT_FILE_NAME} \ --input_file ${MODEL_OUTPUT_DIR}/${INPUT_FILE_NAME} \
--mace_out_file ${MODEL_OUTPUT_DIR}/${OUTPUT_FILE_NAME} \ --mace_out_file ${MODEL_OUTPUT_DIR}/${OUTPUT_FILE_NAME} \
--mace_runtime ${RUNTIME} \ --mace_runtime ${RUNTIME} \
--input_node ${INPUT_NODE} \ --input_node ${INPUT_NODES} \
--output_node ${OUTPUT_NODE} \ --output_node ${OUTPUT_NODES} \
--input_shape ${INPUT_SHAPE} \ --input_shape ${INPUT_SHAPES} \
--output_shape ${OUTPUT_SHAPE} || exit 1 --output_shape ${OUTPUT_SHAPES} || exit 1
elif [ "$PLATFORM" == "caffe" ];then elif [ "$PLATFORM" == "caffe" ];then
IMAGE_NAME=mace-caffe:latest IMAGE_NAME=mace-caffe:latest
...@@ -96,9 +96,9 @@ elif [ "$PLATFORM" == "caffe" ];then ...@@ -96,9 +96,9 @@ elif [ "$PLATFORM" == "caffe" ];then
--input_file /mace/${INPUT_FILE_NAME} \ --input_file /mace/${INPUT_FILE_NAME} \
--mace_out_file /mace/${OUTPUT_FILE_NAME} \ --mace_out_file /mace/${OUTPUT_FILE_NAME} \
--mace_runtime ${RUNTIME} \ --mace_runtime ${RUNTIME} \
--input_node ${INPUT_NODE} \ --input_node ${INPUT_NODES} \
--output_node ${OUTPUT_NODE} \ --output_node ${OUTPUT_NODES} \
--input_shape ${INPUT_SHAPE} \ --input_shape ${INPUT_SHAPES} \
--output_shape ${OUTPUT_SHAPE} --output_shape ${OUTPUT_SHAPES}
fi fi
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册