58 lines
1.6 KiB
Bash
58 lines
1.6 KiB
Bash
# python3 convert_yolov5_p6_rknn.py \
|
|
# --pt /data6/zhangw/yolov5/runs/train/YNDC_20251010_yolov5_optimize/weights/best.pt \
|
|
# --onnx /data6/zhangw/yolov5/runs/train/YNDC_20251010_yolov5_optimize/weights/yolov5s6_p6.onnx \
|
|
# --rknn /data6/zhangw/yolov5/runs/train/YNDC_20251010_yolov5_optimize/weights/yolov5s6_p6.rknn \
|
|
# --platform rk3576 \
|
|
# --img-size 640 \
|
|
# --classes 5
|
|
|
|
|
|
#!/bin/bash
|
|
set -e
|
|
|
|
# -------------------------------
|
|
# 路径配置
|
|
# -------------------------------
|
|
PT_PATH="/data6/zhangw/yolov5/runs/train/YNDC_20251010_yolov5_optimize/weights/best.pt"
|
|
ONNX_PATH="/data6/zhangw/yolov5/runs/train/YNDC_20251010_yolov5_optimize/weights/best.onnx"
|
|
RKNN_PATH="/data6/zhangw/Projects/output_rknn/yolov5_best.rknn"
|
|
IMG_SIZE=640
|
|
|
|
YOLOV5_RKNN_PY="/data6/zhangw/Projects/rknn_model_zoo/examples/yolov5/python/yolov5.py"
|
|
|
|
# -------------------------------
|
|
echo "====== Step 1: Export ONNX ======"
|
|
# -------------------------------
|
|
|
|
python export.py \
|
|
--weights $PT_PATH \
|
|
--include onnx \
|
|
--imgsz $IMG_SIZE \
|
|
--opset 12 \
|
|
--device cpu
|
|
|
|
echo "✔ ONNX 导出成功:$ONNX_PATH"
|
|
|
|
|
|
# -------------------------------
|
|
echo "====== Step 2: Simplify ONNX ======"
|
|
# -------------------------------
|
|
|
|
python -m onnxsim $ONNX_PATH $ONNX_PATH
|
|
|
|
echo "✔ ONNX 简化完成"
|
|
|
|
|
|
# -------------------------------
|
|
echo "====== Step 3: Convert to RKNN ======"
|
|
# -------------------------------
|
|
|
|
python3 $YOLOV5_RKNN_PY \
|
|
--model_path $ONNX_PATH \
|
|
--img_size $IMG_SIZE \
|
|
--rknn_out $RKNN_PATH \
|
|
--dataset /data6/zhangw/yolov5/data/coco128.yaml
|
|
|
|
echo "✔ RKNN 模型已生成:$RKNN_PATH"
|
|
echo "全部完成!"
|