增加配置环境脚本;修改netrans_cli脚本,支持传入多级目录;

修复export脚本导出float失败的问题
This commit is contained in:
xiahb 2025-04-08 15:07:25 +08:00
parent b569d174a3
commit 887695d55d
6 changed files with 52 additions and 20 deletions

31
config.sh Executable file
View File

@ -0,0 +1,31 @@
#!/bin/bash
# === 脚本目录 ===
CURRENT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
SCRIPT_DIR="$CURRENT_DIR/netrans_cli"
NETRANS_PATH="$CURRENT_DIR/netrans/bin"
# 定义要追加到 .bashrc 的环境变量
ENV_VARS=(
"export PATH=\"\$PATH:$SCRIPT_DIR\""
"export PATH=\"\$PATH:$NETRANS_PATH\""
"export NETRANS_PATH=\"$CURRENT_DIR/bin\""
)
# 扫描 .bashrc逐条添加不存在的变量
for LINE in "${ENV_VARS[@]}"; do
if grep -Fxq "$LINE" ~/.bashrc; then
echo "已存在:$LINE"
else
echo "$LINE" >> ~/.bashrc
echo "已添加:$LINE"
fi
done
echo ""
echo "所有变量已添加到 ~/.bashrc"
echo "请运行以下命令使其立即生效:"
echo ""
echo " source ~/.bashrc"
echo ""

View File

@ -14,8 +14,8 @@ DATASET=dataset.txt
VERIFT='FLASE' VERIFT='FLASE'
function export_network() function export_network()
{ {
NAME=$1 NAME=$(basename "$1")
pushd $NAME pushd $1
QUANTIZED=$2 QUANTIZED=$2
@ -57,7 +57,6 @@ function export_network()
--model-quantize ${NAME}_${quantization_type}.quantize \ --model-quantize ${NAME}_${quantization_type}.quantize \
--with-input-meta ${NAME}_inputmeta.yml\ --with-input-meta ${NAME}_inputmeta.yml\
--optimize 'VIP8000NANOQI_PLUS_PID0XB1'\ --optimize 'VIP8000NANOQI_PLUS_PID0XB1'\
#--optimize None\
--target-ide-project 'linux64' \ --target-ide-project 'linux64' \
--viv-sdk ${NETRANS_PATH}/pnna_sdk \ --viv-sdk ${NETRANS_PATH}/pnna_sdk \
--output-path ${generate_path}/${NAME}_${quantization_type}" --output-path ${generate_path}/${NAME}_${quantization_type}"
@ -83,6 +82,7 @@ function export_network()
--viv-sdk ${NETRANS_PATH}/pnna_sdk \ --viv-sdk ${NETRANS_PATH}/pnna_sdk \
--output-path ${generate_path}/${NAME}_${quantization_type}" --output-path ${generate_path}/${NAME}_${quantization_type}"
fi fi
echo $cmd
if [${VERIFY}='TRUE']; then if [${VERIFY}='TRUE']; then
echo $cmd echo $cmd
fi fi

View File

@ -1,4 +1,4 @@
#!/bin/sh #!/bin/bash
if [ -z "$NETRANS_PATH" ]; then if [ -z "$NETRANS_PATH" ]; then
echo "Need to set enviroment variable NETRANS_PATH" echo "Need to set enviroment variable NETRANS_PATH"
@ -20,9 +20,11 @@ netrans=$NETRANS_PATH/pnnacc
NAME=${1%/} NAME=$(basename "$1")
cd $NAME pushd $1
echo $(pwd)
$netrans generate \ $netrans generate \
inputmeta \ inputmeta \
--model ${NAME}.json \ --model ${NAME}.json \
--separated-database \ --separated-database
popd

View File

@ -165,22 +165,21 @@ function import_pytorch_network()
function import_network() function import_network()
{ {
NAME=$1 NAME=$(basename "$1")
pushd $NAME pushd $1
if [ -f ${NAME}.prototxt ]; then if [ -f ${NAME}.prototxt ]; then
import_caffe_network ${1%/} import_caffe_network ${NAME%/}
elif [ -f ${NAME}.pb ]; then elif [ -f ${NAME}.pb ]; then
import_tensorflow_network ${1%/} import_tensorflow_network ${NAME%/}
elif [ -f ${NAME}.onnx ]; then elif [ -f ${NAME}.onnx ]; then
import_onnx_network ${1%/} import_onnx_network ${NAME%/}
elif [ -f ${NAME}.tflite ]; then elif [ -f ${NAME}.tflite ]; then
import_tflite_network ${1%/} import_tflite_network ${NAME%/}
elif [ -f ${NAME}.weights ]; then elif [ -f ${NAME}.weights ]; then
import_darknet_network ${1%/} import_darknet_network ${NAME%/}
elif [ -f ${NAME}.pt ]; then elif [ -f ${NAME}.pt ]; then
import_pytorch_network ${1%/} import_pytorch_network ${NAME%/}
else else
echo "=========== can not find suitable model files ===========" echo "=========== can not find suitable model files ==========="
fi fi

View File

@ -13,8 +13,8 @@ DATASET=./dataset.txt
function inference_network() function inference_network()
{ {
NAME=$1 NAME=$(basename "$1")
pushd $NAME pushd $1
QUANTIZED=$2 QUANTIZED=$2
inf_path='./inf' inf_path='./inf'

View File

@ -13,8 +13,8 @@ DATASET=./dataset.txt
function quantize_network() function quantize_network()
{ {
NAME=$1 NAME=$(basename "$1")
pushd $NAME pushd $1
QUANTIZED=$2 QUANTIZED=$2