5 progname=$(basename "${BASH_SOURCE[0]}")
12 echo "Usage: $progname [options] modelfile"
13 echo "Convert modelfile (either tflite or circle) to nnpackage."
16 echo " -h show this help"
17 echo " -o set nnpackage output directory (default=$outdir)"
18 echo " -p set nnpackage output name (default=[modelfile name])"
19 echo " -c provide configuration file"
22 echo " $progname add.tflite => create nnpackage 'add' in $outdir/"
23 echo " $progname -o out add.tflite => create nnpackage 'add' in out/"
24 echo " $progname -o out -p addpkg add.tflite => create nnpackage 'addpkg' in out/"
25 echo " $progname -c add.cfg add.tflite => create nnpackage 'add' with add.cfg"
30 echo "For help, type $progname -h"
34 while getopts "ho:p:c:" OPTION; do
39 c) config_src=$OPTARG;;
47 echo "error: wrong argument (no argument or too many arguments)."
48 echo "For help, type $progname -h"
52 modelfile=$(basename "$1")
54 if [[ "$modelfile" != *.* ]]; then
55 echo "error: modelfile does not have extension."
56 echo "Please provide extension so that $progname can identify what type of model you use."
61 echo "error: "$1" does not exist."
65 if [ -z "$name" ]; then
68 extension=${modelfile##*.}
70 echo "Generating nnpackage "$name" in "$outdir""
71 mkdir -p "$outdir"/"$name"/metadata
73 if [ -s "$config_src" ]; then
74 config=$(basename "$config_src")
75 cp "$config_src" "$outdir/$name/metadata/$config"
78 cat > "$outdir"/"$name"/metadata/MANIFEST <<-EOF
80 "major-version" : "1",
81 "minor-version" : "1",
82 "patch-version" : "0",
83 "configs" : [ "$config" ],
84 "models" : [ "$modelfile" ],
85 "model-types" : [ "$extension" ]
88 cp "$1" "$outdir"/"$name"