提交 ff10ba59 编写于 作者: Y yejianwu

update input and output shape in validate_model.sh and validate.py, remove model msg

上级 9b2c18bc
...@@ -10,14 +10,20 @@ from tensorflow import gfile ...@@ -10,14 +10,20 @@ from tensorflow import gfile
# Validation Flow: # Validation Flow:
# 1. Generate input data # 1. Generate input data
# python validate_icnet.py --generate_data 1 # python validate.py --generate_data true \
# --input_file input_file
# --input_shape 1,64,64,3
# #
# 2. Use mace_run to run icnet on phone. # 2. Use mace_run to run model on phone.
# 3. adb pull the result. # 3. adb pull the result.
# 4. Compare output data of mace and tf # 4. Compare output data of mace and tf
# python validate_icnet.py --model_file opt_icnet.pb \ # python validate.py --model_file tf_model_opt.pb \
# --input_file input_file \ # --input_file input_file \
# --mace_out_file icnet.out # --mace_out_file output_file \
# --input_node input_node \
# --output_node output_node \
# --input_shape 1,64,64,3 \
# --output_shape 1,64,64,2
def generate_data(shape): def generate_data(shape):
np.random.seed() np.random.seed()
...@@ -65,7 +71,7 @@ def run_model(input_shape): ...@@ -65,7 +71,7 @@ def run_model(input_shape):
input_value = load_data(FLAGS.input_file) input_value = load_data(FLAGS.input_file)
input_value = input_value.reshape(input_shape) input_value = input_value.reshape(input_shape)
output_value = session.run(output_node, feed_dict={input_node: [input_value]}) output_value = session.run(output_node, feed_dict={input_node: input_value})
output_value.astype(np.float32).tofile( os.path.dirname(FLAGS.input_file) + '/tf_out') output_value.astype(np.float32).tofile( os.path.dirname(FLAGS.input_file) + '/tf_out')
return output_value return output_value
......
...@@ -2,10 +2,10 @@ ...@@ -2,10 +2,10 @@
# Must run at root dir of mace project. # Must run at root dir of mace project.
set +x set +x
Usage() { Usage() {
echo 'Usage: bash tools/validate_model.sh tools/model.config tf_model_path model_tag image_size runtime[gpu/dsp] [tuning]' echo 'Usage: bash tools/validate_model.sh tools/model.config tf_model_path model_tag input_shape output_shape runtime[gpu/dsp] [tuning]'
} }
if [ $# -lt 5 ];then if [ $# -lt 6 ];then
Usage Usage
exit -1 exit -1
fi fi
...@@ -14,9 +14,10 @@ source $1 ...@@ -14,9 +14,10 @@ source $1
TF_MODEL_FILE_PATH=$2 TF_MODEL_FILE_PATH=$2
MODEL_TAG=$3 MODEL_TAG=$3
IMAGE_SIZE=$4 INPUT_SHAPE=$4
RUNTIME=$5 OUTPUT_SHAPE=$5
TUNING_OR_NOT=${6:-0} RUNTIME=$6
TUNING_OR_NOT=${7:-0}
if [ x"$RUNTIME" = x"dsp" ]; then if [ x"$RUNTIME" = x"dsp" ]; then
DATA_TYPE="DT_UINT8" DATA_TYPE="DT_UINT8"
...@@ -87,8 +88,8 @@ build_and_run() ...@@ -87,8 +88,8 @@ build_and_run()
MACE_RUN_PARAMETER_PATH=${PHONE_DATA_DIR}/mace_run.config \ MACE_RUN_PARAMETER_PATH=${PHONE_DATA_DIR}/mace_run.config \
MACE_KERNEL_PATH=$KERNEL_DIR \ MACE_KERNEL_PATH=$KERNEL_DIR \
${PHONE_DATA_DIR}/mace_run \ ${PHONE_DATA_DIR}/mace_run \
--input_shape="1,${IMAGE_SIZE},${IMAGE_SIZE},3"\ --input_shape="${INPUT_SHAPE}"\
--output_shape="1,${IMAGE_SIZE},${IMAGE_SIZE},2"\ --output_shape="${OUTPUT_SHAPE}"\
--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} \
--device=${DEVICE_TYPE} \ --device=${DEVICE_TYPE} \
...@@ -99,7 +100,7 @@ echo "Step 1: Generate input data" ...@@ -99,7 +100,7 @@ echo "Step 1: Generate input data"
rm -rf ${MODEL_DIR}/${INPUT_FILE_NAME} rm -rf ${MODEL_DIR}/${INPUT_FILE_NAME}
python tools/validate.py --generate_data true \ python tools/validate.py --generate_data true \
--input_file=${MODEL_DIR}/${INPUT_FILE_NAME} \ --input_file=${MODEL_DIR}/${INPUT_FILE_NAME} \
--input_shape="${IMAGE_SIZE},${IMAGE_SIZE},3" || exit -1 --input_shape="${INPUT_SHAPE}" || exit -1
echo "Step 2: Convert tf model to mace model and optimize memory" echo "Step 2: Convert tf model to mace model and optimize memory"
bazel build //lib/python/tools:tf_converter || exit -1 bazel build //lib/python/tools:tf_converter || exit -1
...@@ -148,5 +149,5 @@ python tools/validate.py --model_file ${TF_MODEL_FILE_PATH} \ ...@@ -148,5 +149,5 @@ python tools/validate.py --model_file ${TF_MODEL_FILE_PATH} \
--mace_out_file ${MODEL_DIR}/${OUTPUT_FILE_NAME} \ --mace_out_file ${MODEL_DIR}/${OUTPUT_FILE_NAME} \
--input_node ${TF_INPUT_NODE} \ --input_node ${TF_INPUT_NODE} \
--output_node ${TF_OUTPUT_NODE} \ --output_node ${TF_OUTPUT_NODE} \
--input_shape "${IMAGE_SIZE},${IMAGE_SIZE},3" \ --input_shape "${INPUT_SHAPE}" \
--output_shape "1,${IMAGE_SIZE},${IMAGE_SIZE},2" --output_shape "${OUTPUT_SHAPE}"
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册