尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
瑞芯微RV1126BP/RV1126B NPU 模型部署指南:RKNN Model Zoo 全流程实战
瑞芯微 RKNPU 为边缘 AI 提供高效硬件加速能力而 RKNN Model Zoo 则是官方提供的一站式模型部署范例库可快速将主流深度学习模型部署到瑞芯微芯片。本次部署硬件基于易百纳鸿欧派R与G126-IPC-38E1. 安装虚拟机环境1、VMware安装步骤参考【易百纳】HongOU_PI_R1型开发板_V1.2\05.开发环境搭建\03.VMware安装指南.docx虚拟机路径【易百纳】G126BP-IPC-38E型IPC模组_V2.3\05.开发环境搭建\02.虚拟机\Ubuntu 22.04【易百纳】HongOU_PI_R1型开发板_V1.2\05.开发环境搭建\02.虚拟机\Ubuntu 22.042. Miniforge3安装2.1 安装Miniforge3指令脚本1更新系统包输入指令“sudo apt update”2下载安装Miniconda3管理虚拟环境sudo apt update wget -c https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-x86_64.sh安装Miniforge3环境2.2 安装Miniforge3安装引导执行安装命令后终端会弹出引导按照以下步骤操作不要改默认配置1根据以上指令安装好Miniforge3指令脚本后执行“bash Miniforge3-Linux-x86_64.sh”如图所示bash Miniforge3-Linux-x86_64.shMiniforge3 安装界面2按回车翻到协议末尾输入 yes 同意Miniforge3 协议确认与安装路径确认界面注意这里默认路径为 /home/你的用户名/miniconda3直接按 回车不要修改否则后续配置会出错。3最后会提示是否在终端启动时自动开启conda选择yes如果选择no会导致环境变量未配置后续需手动修复。Conda 初始化确认界面4最后安装完成后重开一个终端一定要重启终端否则会找不到conda命令并输入conda --version可以查看conda版本说明安装成功。conda --version查看 Conda 版本结果2.3 使用conda创建名称为 toolkit2 的 Python 3.8 环境1输入指令“conda create -n toolkit2 python3.8”创建名为toolkit2的python环境conda create -n toolkit2 python3.8创建 toolkit2 Python 环境过程2遇到Proceed确认步骤输入“y”Conda 环境创建确认界面3安装完成,后输入指令“conda activate toolkit2”激活 toolkit2 环境激活 toolkit2 环境toolkit2 环境创建完成提示3. RKNN-Toolkit2安装3.1 首先安装RKNN 相关仓库与编译工具提供方式方式一提供的资料中直接复制到虚拟机中进行解压# 下载 RKNN Model Zoo 仓库【易百纳】G126BP-IPC-38E型IPC模组_V2.1\09.进阶功能开发\01.Model_zoo移植\rknn_model_zoo.zip# 下载 RKNN-Toolkit2 仓库【易百纳】G126BP-IPC-38E型IPC模组_V2.1\09.进阶功能开发\01.Model_zoo移植\rknn-toolkit2.zip方式二通过Git指令拉取# 下载 RKNN-Toolkit2 仓库git clone https://github.com/airockchip/rknn-toolkit2.git --depth 1# 下载 RKNN Model Zoo 仓库git clone https://github.com/airockchip/rknn_model_zoo.git --depth 1编译工具路径【易百纳】G126BP-IPC-38E型IPC模组_V2.1\09.进阶功能开发\01.Model_zoo移植\gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu.tar.xz本文采用解压方式进行安装。3.2 安装 RKNN-Toolkit2在虚拟环境里安装RKNN-Tool2分两步先安装依赖再安装主包1安装依赖包pip install -r packages/x86_64/requirements_cp38-2.3.2.txt 注意这里有-r参数不加执行报错pip install -r packages/x86_64/requirements_cp38-2.3.2.txt安装 RKNN-Toolkit2 依赖包2安装RKNN-Toolkit2主包pip install packages/x86_64/rknn_toolkit2-2.3.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl安装 RKNN-Toolkit2 主包3验证RKNN输入指令查看输入“python” 输入“from rknn.api import RKNN” 运行没报错说明rknn安装成功验证 RKNN-Toolkit2 安装结果4. 模型转换本章将介绍如何快速在开发板上运行示例程序内容分为两个部分1RKNN Model Zoo 介绍RKNN Model Zoo 提供了示例代码旨在帮助用户快速在 Rockchip 的开发板上运行各种常用模型整个工程的目录结构如下rknn_model_zoo ├── 3rdparty # 第三方库 ├── datasets # 数据集 ├── examples # 示例代码 ├── utils # 常用方法如文件操作画图等 ├── build-android.sh # 用于目标为 Android 系统开发板的编译脚本 ├── build-linux.sh # 用于目标为Linux 系统开发板的编译脚本 └── ...其中examples 目录包括了一些常用模型的示例例如 MobileNet 和 YOLO 等。每个模型示例提供了Python 和 C/C 两个版本的示例代码本章节采用C/C的示例代码运行python环境需自己部署。以 YOLOv5 模型为例其目录结构如下rknn_model_zoo ├── examples │ └── yolov5 │ ├── cpp # C/C 版本的示例代码 │ ├── model # 模型、测试图片等文件 │ ├── python # 模型转换脚本和Python版本的示例代码 │ └── README.md └── ...2)RKNN C Demo 使用方法下面以 YOLOv5 模型为例介绍 RKNN C Demo 的使用方法。注不同的 RKNN C Demo 用法存在差异请按照各自目录下 README.md 中的步骤运行。进入 rknn_model_zoo/examples/yolov5/model 目录运行 download_model.sh 脚本该脚本将下载一个可用的YOLOv5 ONNX 模型并存放在当前 model 目录下参考命令如下# 进入 rknn_model_zoo/examples/yolov5/model 目录 cd Projects/rknn_model_zoo/examples/yolov5/model # 运行 download_model.sh 脚本下载 yolov5 onnx 模型 chmod x download_model.sh ./download_model.sh下载 YOLOv5 ONNX 模型进入 rknn_model_zoo/examples/yolov5/python 目录运行 convert.py 脚本该脚本将原始的 ONNX 模型转成RKNN 模型参考命令如下# 进入 rknn_model_zoo/examples/yolov5/python 目录 cd Projects/rknn_model_zoo/examples/yolov5/python # 运行 convert.py 脚本将原始的 ONNX 模型转成 RKNN 模型 python convert.py ../model/yolov5s_relu.onnx rv1126b i8 ../model/yolov5.rknONNX 模型转换为 RKNN 模型5. 运行 RKNN C Demo编译 YOLOV5完整运行一个 RKNN C Demo需要先将 C/C 源代码编译成可执行文件然后将可执行文件、模型文件、测试图片等相关文件推送到板端上最后在板端运行可执行文件。以 Linux 系统arm64架构的 rv1126b 平台为例需要使用 rknn_model_zoo 目录下的 build-linux.sh 脚本进行编译。在运行 build-linux.sh 脚本之前需要指定编译器的路径 GCC_COMPILER 为本地的 GCC 编译器路径。即在 build-linux.sh 脚本中需要加入以下命令32位系统同64位系统操作一样以下指令切换成32位工具链就可以了。# 添加到 build-linux.sh 脚本的开头位置即可 GCC_COMPILER/home/ebaina/Projects/gcc-linaro-6.3.1-2017.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf然后在 rknn_model_zoo 目录下运行 build-linux.sh 脚本参考命令如下如图所示# 进入 rknn_model_zoo 目录 cd Projects/rknn_model_zoo # 运行 build-linux.sh 脚本 # 用法:./build-linux.sh -t target -a arch -d build_demo_name [-b build_type] [-m] # -t : target (rk356x/rk3588) # 平台类型rk3568/rk3566 都统一为rk356x # -a : arch (aarch64/armhf) # 板端系统架构 # -d : demo name # 对应 examples 目录下子文件夹的名称如yolov5、mobilenet # -b : build_type(Debug/Release) # -m : enable address sanitizer, build_type need set to Debug chmod x build-linux.sh ./build-linux.sh -t rv1126b -a aarch64 -d yolov5编译 YOLOv5 RKNN C Demo编译完成后会在 rknn_model_zoo 目录下产生 install 文件夹 其中有编译好的可执行文件以及测试图片等相关文件。参考目录结构如下install ├── rv1126b_linux_armhf #rv1126b 平台 └── rknn_yolov5_demo ├── lib # 依赖库 ├── model # 存放模型、测试图片等文件 └── rknn_yolov5_demo # 可执行文件 # 进入 rknn_model_zoo 目录 cd Projects/rknn_model_zoo # 推送整个 rknn_yolov5_demo 文件夹到板端 # 注rknn_yolov5_demo 文件夹下有一个同名的可执行文件 rknn_yolov5_demo # 注使用不同的模型和平台时建议直接在 install 下找对应的路径 scp -r /home/ebaina/Projects/rknn_model_zoo/install/rv1126b_linux_aarch64/rknn_yolov5_demo root板子IP:/data/执行以下命令在板端运行可执行文件如图所示# 进入 rknn_yolov5_demo 目录 cd /data/rknn_yolov5_demo/ # 设置依赖库环境 export LD_LIBRARY_PATH./lib # 运行可执行文件 # 用法: ./rknn_yolov5_demo model_path input_path ./rknn_yolov5_demo model/yolov5.rknn model/bus.jpg板端运行图默认情况下输出图片保存路径为 rknn_yolov5_demo/out.png 可以通过adb工具从板端拉取到本地查看在本地计算机的终端中执行以下命令# 拉取到本地当前目录 adb pull /data/rknn_yolov5_demo/out.png Desktop\识别结果如下6. 功能验证本地预览与RTSP拉流测试本章节提供两种验证方式帮助客户快速确认模型在RV1126B平台上的实际推理效果方式一LCD本地预览摄像头采集图像 → NPU推理 → 识别结果直接绘制在LCD屏幕上显示。方式二RTSP网络拉流摄像头采集图像 → LCD显示原始画面无识别框 同时通过RTSP协议推送带识别结果的视频流供VLC等播放器远程查看。6.1 硬件连接J13排针接口连接EULER_40EXP_V1.0转接板MIPI0连接SC450AI摄像头如图所示。6.2 方式一操作步骤(1) 确保硬件已按2.3.1连接完毕开发板已上电启动。(2) 在开发板终端中执行以下命令cd /usr/bin #进入/usr/bin/路径下 ./yolo_npu_lcd_only -W 3840 -H 2160 -w 800 -h 1280 -a /etc/iqfiles -m /opt/model/RV1126B/yolov5s-640-640.rknn -S X补充最后-S 后面的参数XX代表mipi接口mipi0的接口X就填写0mipi接口X就填写1。(3) 命令执行后的效果如图所示6.3 方式二操作步骤(1) 确保开发板与PC处于同一局域网。(2) 在开发板终端中执行(3) 命令执行后的效果如图所示cd /usr/bin #进入/usr/bin/路径下 ./yolo_npu_rtsp_lcd -W 3840 -H 2160 -w 800 -h 1280 -a /etc/iqfiles -m /opt/model/RV1126B/yolov5s-640-640.rknn -S X补充最后-S 后面的参数XX代表mipi接口mipi0的接口X就填写0mipi接口X就填写1。
RELATED

相关推荐

三次谐波峰值F类功放设计:原理、实现与效率优化实践

三次谐波峰值F类功放设计:原理、实现与效率优化实践

1. 项目概述:为什么是三次谐波峰值F类功放? 在射频功率放大器的世界里,效率永远是工程师们追逐的圣杯。无论是基站、卫星通信,还是我们口袋里的手机,功放的效率直接决定了设备的续航、散热和整体性能。传统的AB类、B类…

📅 2026/8/24 10:17:50
JS逆向App Store评论API:高效爬取与动态网页数据获取实战

JS逆向App Store评论API:高效爬取与动态网页数据获取实战

1. 项目缘起:为什么需要从App Store爬取评论? 做移动应用开发或者产品运营的朋友,应该都体会过每天手动刷新App Store Connect后台,查看那寥寥几条用户评论的焦虑感。苹果官方的后台功能有限,评论导出不便,…

📅 2026/8/24 10:17:50
TTS-Backup终极指南:三步保护你的桌游模拟器珍贵数据

TTS-Backup终极指南:三步保护你的桌游模拟器珍贵数据

TTS-Backup终极指南:三步保护你的桌游模拟器珍贵数据 【免费下载链接】tts-backup Backup Tabletop Simulator saves and assets into comprehensive Zip files. 项目地址: https://gitcode.com/gh_mirrors/tt/tts-backup 你是否曾在电脑崩溃或误操作后&…

📅 2026/9/20 6:05:59
MORE NEWS

更多资讯

📰

Kornia 迁移指南:LocalFeatureMatcher 不再匹配零值 LAF 填充槽,mask0/mask1 正式生效

计算机视觉人工智能深度学习图像处理 【免费下载链接】kornia 🐍 Geometric Computer Vision Library for Spatial AI 项目地址: https://gitcode.com/gh_mirrors/ko/kornia 点击查看 免费下载 本篇迁移指南聚焦 Kornia 特征匹配管线中 LocalFeatureMat…

📰

3个避坑指南:扫描全能王官网技术原理从入门到精通

3个避坑指南:扫描全能王官网技术原理从入门到精通 面对满屏红色的 StackTrace,你是不是脑子嗡的一声,完全不知道从哪行代码看起?这种报错一堆看不懂的感觉,是无数开发者从新手走向老手的必经关卡。很多初学者在接触类似扫描全能王官网这样的…

📰

BCD码原理与工业实战:嵌入式系统中的确定性数字表达

1. 为什么今天还要学BCD码——一个被低估的“数字翻译官”很多人第一次听说BCD码,是在单片机实验课上看到数码管突然亮起一串“0100 0011 0101”,老师说:“这是435的BCD表示。”台下一片茫然:明明二进制就能表示一切,为…

📰

伏安特性与电源外特性测量:从内接外接到数据处理全解析

做过这个实验的同学应该都有同感:电路元件伏安特性的测绘及电源外特性的测量,看起来就是把电压表电流表接上去读数据,但真正动手之后才发现,光是一个“电流表内接还是外接”就能让你数据偏到怀疑人生。这篇内容我会把整个实验从原…

📰

集装箱类型与尺寸全解析:外贸装柜选型避坑指南

做外贸第一年,我最怕客户突然问一句“这个柜子能装多少”。不是不会算,而是很多人把集装箱想得太简单了——铁皮箱子嘛,长宽高一乘不就是体积?实际跑几次装柜现场你就知道,集装箱的类型、尺寸和内径数据里全是门道。选…

📰

手机连打印机保姆级教程:3步搞定API变更痛点

手机连打印机保姆级教程:3步搞定API变更痛点 版本升级后 API 全变了?别慌,这份保姆级教程带你避坑。 很多人卡在蓝牙协议和权限配置上,浪费半天时间。 今天直接上干货,对比主流方案,代码全给你。 方案定位:谁在统治手机打印领域…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬