【嵌入式AI挑战营 】-04-RKNN推理基础知识介绍说明
[复制链接]
前段时间一直没有推进,主要是和自己的知识面有关系,因为自己对于AI这一块的东西了解的太少了,然后后面发现对于RK1106的wiki页面有不少的知识,这里我就搬过来和大家一起来分享一下,也算是对于自己学习的一个交代。
具体的教程连接如下:
LuckFox 教程连接: 连接
1. RKNPU 简介
NPU(Nerual Processing Unit)是一种专门用于加速神经网络计算的处理器。为了满足人工智能的需求,瑞芯微逐渐将NPU集成到其处理器中,这种内置于瑞芯微处理器的NPU被称为RKNPU。LuckFox Pico 系列开发板了搭载瑞芯微 RV1103/RV1106 芯片,内置瑞芯微自研第4代NPU。该NPU具有高运算精度,支持int4、int8、int16混合量化。其中,int8算力为0.5TOPs,int4算力可达1.0TOPs。RKNPU4.0被划分为RKNPU2,因此要使用RKNPU2的SDK和工具套件。
RKNN-Toolkit2 工具在 PC 平台上提供 C 或 Python 接口,简化模型的部署和运行。用户可以通过该工具轻松完成以下功能:模型转换、量化、推理、性能和内存评估、量化精度分析以及模型加密。RKNN 软件栈可以帮助用户快速的将 AI 模型部署到 Rockchip 芯片。整体的框架如下:
为了使用 RKNPU,用户需要首先在计算机上运行 RKNN-Toolkit2 工具,将训练好的模型转换为 RKNN 格式模型,之后使用 RKNN C API 或 Python API 在开发板上进行部署。本节介绍用户如何快速在Luckfox Pico系列板子上使用 RKNN Toolkit2 和 RKNPU2 工具转换 yolo5s.onnx 模型为 yolov5s.rknn 模型并进行板端推理。
sudo apt-get update
sudo apt-get install python3 python3-dev python3-pip
sudo apt-get install libxslt1-dev zlib1g zlib1g-dev libglib2.0-0 libsm6 libgl1-mesa-glx libprotobuf-dev gcc
4 安装RKNN-ToolKit2依赖包
pip3 install -r rknn-toolkit2/packages/requirements_cpxx-1.6.0.txt
# such as:
pip3 install -r rknn-toolkit2/packages/requirements_cp310-1.6.0.txt
5.安装RKNN-ToolKit2
pip3 install rknn-toolkit2/packages/rknn_toolkit2-x.x.x+xxxxxxxx-cpxx-cpxx-linux_x86_64.whl
# such as:
pip3 install rknn-toolkit2/packages/rknn_toolkit2-1.6.0+81f21f4d-cp310-cp310-linux_x86_64.whl
包名格式为:rknn_toolkit2-{版本号}+{commit 号}-cp{Python 版本}-cp{Python 版本}-linux_x86_64.whl,根据不同的Python版本,选择安装对应的安装包:
具体的详细的安装步骤,可以直接按照原厂的连接去搭建,这里就只做介绍,毕竟也是原厂搬过来的。
|