此文档将详细讲解如何在 Sirider S1 利用 NPU 硬件加速 YOLOPv2 多任务检测模型推理。
文档分为两部分:快速体验和详细教程。
radxa 提供一个开箱即用的 YOLOPv2 目标分类例子,旨在用户可以直接在 Sirider S1 使用“周易”NPU推理 YOLOPv2 模型,免去复杂的模型编译和执行代码编译,
这对想快速使用 “周易”NPU 而不想从头编译模型的用户是最佳的选择,如您对完整工作流程感兴趣可以参考 详细教程
运行模型推理
./aipu_yolopv2_test -m [mode] -i [your_input_image]
#Example: ./aipu_yolopv2_test -m yolopv2.bin -i test_0.jpg
参数介绍:
-m
: NPU模型文件-i
:输入图片路径要使用周易 Z2 NPU 部署目标模型,需要分三步走:模型转换,编译推理文件 和 应用层程序设计
Tips:
此过程在 x86 主机上完成,进行模型转换前,请根据 周易 NPU SDK 安装教程
安装周易SDK
并完成 配置 nn-compiler 环境
nn-compiler
可以将 TensorFlow、ONNX 等框架模型转换成可以在周易 NPU 进行硬件加速推理的模型文件
进入 siengine nn-compiler-user-case-example
目录
cd siengine/nn-compiler-user-case-example/yolopv2
(可选) 配置 build.cfg (开箱即用案例已提供)
vim ./build.cfg
构建 NPU 模型文件
aipubuild build.cfg
得到模型文件 yolopv2.bin
tip
如果找不到aipubuild
命令,请将其添加到环境变量:
export PATH=$PATH:/root/.local/bin
在使用周易 Z2 AIPU 推理前需要在 x86 主机进行交叉编译生成用于模型推理的可执行文件 yolopv2
,然后此文件及out/linux
下的文件拷贝到 Sirider S1 中。
使用编译好的可执行文件aipu_yolopv2_test
进行测试:
./aipu_yolopv2_test -m yolopv2.bin -i test_0.jpg