Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

目次


Preparation


Please refer here for the environment construction procedure.

Convert


Convert the model.

Please change the parameter "setting.conf" of the argument according to the model to be converted.

$ cd /home/cvtool/conversion/caffe
$ ./caffe_conversion.sh setting.conf

The model after conversion is output to the following directory.

${OUTPUT_DIR}/${NET_NAME}/${PARSER_OPTION}/[model name]

Setting.conf


# Network Name
NET_NAME=mobilenetv1

# Path to Deploy Prototxt
DEPLOY_PROTOTXT=./sample/mobilenet_v1/mobilenet_deploy.prototxt

# Path to Directory for (Deploy) Caffe Models
MODEL_DIR=./sample/mobilenet_v1/models

# Path to Directory for DRA Images
DRA_IMAGE_DIR=../dra_img

# Path to Directory for Output Data
OUTPUT_DIR=./out

# Quantization Mode
#  FIX8  : Fixed-point  8bit
#  FIX16 : Fixed-point 16bit
#  MIX   : FIX8/FIX16 mixed
PARSER_OPTION=FIX8

# Input Data Format (0:NHWC, 1:NCHW)
IN_DATA_FORMAT=1

# Input Data Channel
IN_DATA_CHANNEL=3

# Input Data Width
IN_DATA_WIDTH=224

# Input Data Height
IN_DATA_HEIGHT=224

# Input Data Mean Vector or Name of .binaryproto
IN_MEAN=103.94,116.78,123.68

# Input Data Scale
# IN_SCALE=1/Scale
IN_SCALE=58.823529411

# RGB or BGR (0:RGB, 1:BGR)
IS_BGR=1

# Input Layer Name
IN_LAYER=data

# Output Layers Name
OUT_LAYER=mbox_loc,mbox_conf_flatten

#cavalry version
#if not specified -> ""
CAVALRY_VER="2.1.7"

# Unique preprocess
# if use im2bin -> NONE
# if use unique preprocess -> script path
PREPRO=NONE
PREPRO_ARG=""

# Input file data format
IN_DATA_FILEFORMAT=0,0,0,0

# Transpose indices(NONE:without transpose , 0,3,1,2:transpose (EX))
IN_DATA_TRANSPOSE=NONE
  • NET_NAME: The name of network.

    • Any name can be set.

  • DEPLOY_PROTOTXT: Path to deploy prototxt file

  • MODEL_DIR: Path to directory which includes caffemodel

    • All caffemodels under the directory are converted

  • DRA_IMAGE_DIR: Path to directory which includes image files for optimizing quantization

    • Please put the directory image files for training. Recommended number of image files is 100 to 200.

    • Available image file format is what OpenCV can handle, for example, JPEG, PNG and so on.

    • Any resolution is available.

  • OUTPUT_DIR: Path to directory which converted data will be put

  • PARSER_OPTION: Quantization mode

    • Select from FIX8/FIX16/MIX (FIX8/FIX16 mixed).

  • IN_DATA_CHANNEL: Number of input image channel for target model

  • N_DATA_WIDTH: Width of input image for target model

  • IN_DATA_HEIGHT: Height of input image for target model

  • IN_MEAN: Normalization parameter (mean) of input image

    • It can be set by numerical value or .binaryproto file

    • n case of setting by numerical value, do not put space between “,” as following.
      IN_MEAN=127.5,127.5,127.5

    • In case of setting by .binaryproto file, please set path to the file as following.
      IN_MEAN=./model/mean.binaryproto

  • IN_SCALE: Normalization parameter (scale) of input image

    • In case of setting different value for each channel, split values by “,”. Do not put space between “,”.

  • IS_BGR: Format of input image (RGB or BGR)

  • IN_LAYER: The name of input layer for target network

    • In the converted model, the name of input layer changes to “${IN_LAYER}_0” .
      Therefore, “_0” is needed to be added to the name of input layer, when the converted model will be run on AdamApp.

  • OUT_LAYER: The name of output layer for target network

    • If two or more layers exists, separate layers by “,”.

  • CAVALRY_VER: Version of cavalry to use

  • PREPRO: Path of preprocessing script (python script)

    • Refer to “/home/cvtool/ common/prepro.py” for how to create a script.

  • PREPRO_ARG: Argument of preprocessing script (python script)

  • IN_DATA_FILEFORMAT: Input data format

    • examples: uint8->0,0,0,0, float32->1,2,0,7, float16->1,1,0,4)

    • When the value of IN_DATA_FILEFORMAT changes from “0,0,0,0”, setting PREPRO is needed.

  • N_DATA_TRANSPOSE: Specify when performing TRANSPOSE on the input data

If input layer is not defined in deploy prototxt file, add the layer as following.

Convert sample model


Download sample model.

$ wget https://github.com/shicai/MobileNet-Caffe/blob/master/mobilenet.caffemodel
$ mv mobilenet.caffemodel sample/mobilenet_v1/models

Conver the model.

$ ./caffe_conversion.sh setting.conf

  • No labels