ELF-RV112B RKNN模型加载与运行时初始化

2026-04-04 1697阅读

1. 实验目的

验证 .rknn 模型文件在 ELF-RV1126B 板端可被正确加载。

验证 init_runtime 初始化成功,说明 NPU 运行时与模型版本基本匹配。

保留最小化验证日志,为后续 YOLOv8目标检测部署做前置确认。

2.准备事项

1)准备一个可用的 .rknn模型文件,例如官方资料包中的 best.rknn。

2)建议在板端单独创建测试目录,避免模型文件路径混乱。

提示:如果你手头只有原始 ONNX / PyTorch模型,还没有转换成 .rknn文件,那么本实验暂时无法完成,需先在 PC侧完成模型转换。

步骤 2.1 创建测试目录并确认模型文件存在

mkdir -p ~/rknn_test

cd ~/rknn_test

ls -lh ./best.rknn

ELF-RV112B RKNN模型加载与运行时初始化

这里提前将官方资料包中的best.rknn复制到了rknn_test文件夹下。

预期现象:best.rknn文件存在,且文件大小明显大于 0。若文件不存在或大小异常,请先检查拷贝路径和模型文件完整性。

步骤 2.2 激活 Python虚拟环境(按你的实际路径调整,这里重新在rknn_test文件夹下配置了虚拟环境)

python3 -m venv elf-env

source elf-env/bin/activate

python3 –version

pip install rknn-toolkit-lite2==2.3.2 -i https://pypi.tuna.tsinghua.edu.cn/simple

ELF-RV112B RKNN模型加载与运行时初始化

步骤 2.3 编写最小化加载验证脚本 test_load_rknn.py

Vim test_load_rknn.py

from rknnlite.api import RKNNLite

rknn = RKNNLite()

ret = rknn.load_rknn('./best.rknn')

assert ret == 0, f'load_rknn failed: {ret}'

ret = rknn.init_runtime()

assert ret == 0, f'init_runtime failed: {ret}'

print('RKNN model load and runtime init success')

rknn.release()

步骤 2.4 运行最小化验证

sudo ./elf-env/bin/python3 test_load_rknn.py

ELF-RV112B RKNN模型加载与运行时初始化

预期现象:终端打印 RKNN model load and runtime init success。若能够稳定出现该信息,说明模型文件、Lite2 版本和板端运行时已基本匹配。