当前位置: 首页 > news >正文

从零开始:在RK3588上运行RKNN版YOLOv5目标检测(保姆级教程)

从零开始:在RK3588上运行RKNN版YOLOv5目标检测(保姆级教程)

RK3588作为Rockchip新一代旗舰级SoC,其内置的NPU模块为边缘计算场景提供了强大的AI推理能力。本教程将手把手带您完成YOLOv5目标检测模型在RK3588开发板上的完整部署流程,涵盖环境配置、交叉编译、模型部署等关键环节,特别针对实际开发中容易遇到的ADB连接、文件传输等问题提供解决方案。

1. 开发环境搭建

1.1 硬件准备清单

  • RK3588开发板:建议使用官方Demo板或Firefly系列开发板
  • Linux主机:推荐Ubuntu 18.04/20.04 LTS系统
  • 连接设备
    • USB Type-C数据线(用于ADB调试)
    • 网线(可选,用于网络传输)
    • HDMI线(用于显示输出)

1.2 基础软件环境配置

首先在Linux主机上安装必要的开发工具:

sudo apt update sudo apt install -y git adb sshpass

验证ADB连接状态:

adb devices

注意:若设备未识别,需检查开发板的USB调试模式是否开启

2. RKNN工具链部署

2.1 获取RKNPU2开发套件

git clone --depth=1 https://github.com/rockchip-linux/rknpu2.git cd rknpu2

2.2 安装交叉编译工具链

针对RK3588的aarch64架构,需要安装特定版本的交叉编译器:

sudo apt install gcc-9-aarch64-linux-gnu g++-9-aarch64-linux-gnu

验证编译器版本:

aarch64-linux-gnu-gcc-9 --version

3. YOLOv5 Demo编译

3.1 准备编译环境

进入YOLOv5示例目录:

cd examples/rknn_yolov5_demo

修改编译脚本build-linux_RK3588.sh关键参数:

export TOOL_CHAIN=/usr/bin/aarch64-linux-gnu- export CC=${GCC_COMPILER}-gcc-9 export CXX=${GCC_COMPILER}-g++-9

3.2 执行交叉编译

./build-linux_RK3588.sh

成功编译后会在install/rknn_yolov5_demo_Linux目录生成以下文件:

  • rknn_yolov5_demo:可执行文件
  • librknnrt.so:RKNN运行时库
  • yolov5s-640-640.rknn:预编译模型

4. 开发板部署实战

4.1 开发板目录准备

通过ADB连接开发板并创建运行目录:

adb shell "mkdir -p /data/rknn_yolov5"

4.2 文件传输关键步骤

使用ADB推送编译产物到开发板:

adb push install/rknn_yolov5_demo_Linux/rknn_yolov5_demo /data/rknn_yolov5/ adb push install/rknn_yolov5_demo_Linux/model/RK3588/yolov5s-640-640.rknn /data/rknn_yolov5/ adb push install/rknn_yolov5_demo_Linux/model/coco_80_labels_list.txt /data/rknn_yolov5/ adb push install/rknn_yolov5_demo_Linux/model/bus.jpg /data/rknn_yolov5/

传输进度检查技巧:

adb shell "ls -lh /data/rknn_yolov5"

5. 模型运行与性能测试

5.1 执行目标检测

在开发板终端运行:

cd /data/rknn_yolov5 ./rknn_yolov5_demo yolov5s-640-640.rknn bus.jpg

典型输出解析:

person @ (114 235 212 527) 0.819099 # 检测到行人,置信度81.9% bus @ (99 141 557 445) 0.693320 # 检测到公交车,置信度69.3% average run 34.551800 ms # 平均推理耗时34.55ms

5.2 性能优化建议

优化方向具体措施预期效果提升
模型量化使用INT8量化替代FP322-3倍速度提升
输入分辨率调整根据场景需求降低输入尺寸减少计算量
多线程推理启用RKNN的异步推理接口提高吞吐量

6. 常见问题排查

6.1 ADB连接失败解决方案

  • 现象adb devices显示空列表
  • 排查步骤
    1. 检查开发板USB调试模式
    2. 重新插拔USB线缆
    3. 重启ADB服务:adb kill-server && adb start-server

6.2 模型运行报错处理

当出现Load RKNN model failed错误时:

  1. 确认模型路径是否正确
  2. 检查librknnrt.so版本是否匹配
  3. 验证模型是否针对RK3588平台编译

7. 进阶开发指南

7.1 自定义模型部署

  1. 将PyTorch版YOLOv5模型导出为ONNX格式
  2. 使用RKNN-Toolkit2进行模型转换:
from rknn.api import RKNN rknn = RKNN() rknn.config(target_platform='rk3588') rknn.load_onnx(model='yolov5s.onnx') rknn.build(do_quantization=True) rknn.export_rknn('yolov5s.rknn')

7.2 实时摄像头推理

修改Demo代码实现USB摄像头采集:

cv::VideoCapture cap(0); while(true) { cap >> frame; // 执行推理 inference(frame); }

实际部署中发现,RK3588的NPU在640x640分辨率下可以稳定达到30FPS以上的处理性能,完全满足实时检测需求。建议首次运行时先使用静态图片验证流程,再逐步过渡到视频流处理

http://www.jsqmd.com/news/610069/

相关文章:

  • STM32duino双VL6180X ToF传感器驱动库深度解析
  • 单片机SFR访问原理与C语言实现方法
  • 【算法日记】Day 9 动态规划专题——最长递增子序列问题及扩展
  • I2C总线原理与应用实战指南
  • YOLO11 改进 - 特征融合 | MSAA多尺度注意力聚合模块, 多尺度卷积融合与双通道注意力机制
  • 视频处理效率提升方案:基于JianYingApi的自动化剪辑实践指南
  • 嵌入式C语言设计模式实践:观察者与责任链模式
  • 2026年上海房产纠纷处理,这五位律师的专业服务值得您关注 - 2026年企业推荐榜
  • YOLOv11 改进 - 注意力机制 | ShuffleAttn序列洗牌注意力,解决多向序列建模中的通道异构与信息不对齐问题
  • 桥梁支座选型指南:2026年如何甄别重庆实力厂家? - 2026年企业推荐榜
  • Intex Spa嵌入式信号桥接库spaiot-lib技术解析
  • 从PyTorch到FPGA:手把手教你将MobileNetV2模型部署到Zynq平台(附完整代码)
  • 2026淘宝客服外包哪家好:杭州京东客服外包/杭州天猫客服外包/杭州小红书客服外包/杭州快手客服外包/选择指南 - 优质品牌商家
  • ID12RFID库详解:嵌入式125kHz RFID读卡实践指南
  • 从《节奏医生》到你的游戏:拆解Koreographer Pro版如何实现高级音频集成(Wwise/FMOD)
  • 再次革新 .NET 的构建和发布方式(三)鲜
  • 嵌入式DSP库:面向实时系统的定点信号处理基础设施
  • 【typst-rs】info.rs文件
  • CANoe故障注入秘籍:用TestDisableMsg模拟总线异常的真实案例
  • GF-2卫星影像融合实战:ENVI与ArcGIS效果对比(附NNDiffuse参数详解)
  • 技术迭代与供应链韧性:2026年5050灯珠核心服务商五强解析 - 2026年企业推荐榜
  • 嵌入式系统软件抗干扰技术实战解析
  • ChatBI赋能企业智能决策:奥威BI在零售与制造领域的创新实践
  • 从CPython源码级剖析Python 3.14 JIT编译器:如何用traceback.print_jit_stats()定位热点函数并实现亚毫秒级响应
  • 阻抗匹配原理与实战:射频电路设计核心技能
  • RemoteIR库:NCS36510超低功耗红外解码驱动
  • 2026围墙护栏服务商五强发布:谁在定义行业新标准? - 2026年企业推荐榜
  • 品牌运营必看:如何用小红书API监控竞品动态(含免费工具推荐)
  • IAR嵌入式工程多节点配置与管理详解
  • 2026年河北一体化泵站选购指南:五大优质生产厂家深度测评与推荐 - 2026年企业推荐榜