华北地区负责人:17340067106(毛经理)
华东地区负责人:17358670739(甘经理)
华南、华西地区负责人:19113907060(耿女士)
软件算法咨询:18982151213(刘先生)

联系我们
产品咨询

RK3588/RK3576国产 6TOPS 算力盒子部署 YOLOv5/v8/v9/v10 全流程实操分享

作者:万物纵横
发布时间:2026-06-04 09:07
阅读量:

主流 6TOPS 国产硬件:RK3588(INT8 6TOPS)、RK3576(INT8 6TOPS)工业边缘盒子,无风扇工业机身、Ubuntu20.04/22.04 系统、双千兆网口、MIPI/USB 摄像头接入,适配工地安全帽、工业缺陷、车辆识别等落地场景。


RK3588/RK3576国产 6TOPS 算力盒子部署 YOLOv5/v8/v9/v10 全流程实操分享(图1)


整体链路:PC 训练 PyTorch (.pt)→导出 ONNX→主机量化转硬件专属模型→盒子端 SDK 部署→图片 / USB 摄像头实时推理→业务二次开发。


一、前期软硬件清单


1. 硬件


1. 6TOPS 国产 AI 盒子(RK3588/RK3576,8GB LPDDR4 标配)


2. 调试 PC(Ubuntu20.04 x86_64,模型转换主机)


3. USB3.0 摄像头 / 工业 MIPI 相机、千兆网线、5V3A 电源


2. 软件工具


环节

工具

用途

模型训练

PyTorch+Ultralytics YOLOv8/v5

训练自定义数据集,输出 [best.pt](best.pt)

模型导出

onnxruntimeonnx-simplifier

pt→onnx、算子简化排错

模型量化

RKNN-Toolkit2(瑞芯微)

onnx→.rknnNPU 专用模型)

盒子推理

rknn_api-lite2OpenCV4.5+

ARM64 NPU 推理开发


二、阶段 1:PC 端 YOLO 模型训练 + PT 转 ONNX(Ubuntu 主机)


1. 环境搭建


# 新建虚拟环境

python3 -m venv yolo-env

source yolo-env/bin/activate

# 安装YOLO依赖

pip install ultralytics torch==2.0.1 onnx onnx-simplifier onnxruntime

# 拉取YOLO源码

git clone https://github.com/ultralytics/ultralytics.git

cd ultralytics


2. 模型训练(自定义数据集可选,新手用官方预训练权重)


# 预训练yolov8s.pt,640*640输入

yolo train data=coco128.yaml model=yolov8s.pt epochs=50 imgsz=640

# 训练完成在runs/train/weights/生成best.pt


[3.PT](3.PT) 导出 ONNX(关键避坑:固定尺寸、关闭动态轴,适配国产 NPU)


# 导出固定尺寸ONNX(opset17,国产NPU兼容性最优)

yolo export model=runs/train/weights/best.pt format=onnx imgsz=640 opset=17 dynamic=False simplify=True


输出:best.onnx;用 onnxruntime 校验 ONNX 有效性


import onnxruntime

sess=onnxruntime.InferenceSession("best.onnx")

print("输入节点:",[i.name for i in sess.get_inputs()])

print("输出节点:",[o.name for o in sess.get_outputs()])


报错处理:ONNX 算子不兼容→onnx-simplifier精简模型、移除无用算子。


三、阶段 2:RKNN-Toolkit2 量化:ONNX→RKNN(6TOPS NPU 专用模型,主机操作)


1. 安装 RKNN 转换工具(瑞芯微 6TOPS 芯片标配)


pip install rknn-toolkit2==1.6.0


2. 量化转换 Python 脚本(INT8 量化,6TOPS 最优平衡速度 & 精度)


from rknn.api import RKNN

# 初始化RKNN对象

rknn = RKNN(verbose=True)

# 1.配置预处理参数(YOLO固定BGR→RGB、归一化)

rknn.config(mean_values=[[0,0,0]], std_values=[[255,255,255]], target_platform="rk3588") #rk3576改target_platform="rk3576"

# 2.载入ONNX

rknn.load_onnx(model="best.onnx")

# 3.模型构建

rknn.build(do_quantization=True, dataset="./calib.txt") #calib.txt放20~50张校准图片路径

# 4.保存NPU模型

rknn.export_rknn("yolo6t.rknn")

rknn.release()


说明:do_quantization=True开启 INT8 量化,6TOPS 盒子 yolov8s 量化后推理 25~40FPS (640P);False 为 FP16,速度减半、精度更高。


输出:yolo6t.rknn,拷贝至 RK3588/3576 算力盒子。


四、阶段 3:国产 6TOPS 盒子 ARM64 环境部署(盒子 Ubuntu 系统)


1. 盒子基础环境配置(SSH 远程登录盒子)


# 更新源+安装依赖

sudo apt update && sudo apt install gcc g++ cmake libopencv-dev git python3-pip

# 安装ARM版RKNN-LITE推理库

pip install rknn-toolkit-lite2


2. 盒子 Python 极简推理(图片推理,快速验证 NPU 加速)


from rknn.api import RKNNLite

import cv2


rknn_lite = RKNNLite()

# 加载rknn模型到NPU,RK3588三核NPU全启用

ret = rknn_lite.load_rknn("yolo6t.rknn")

ret = rknn_lite.init_runtime(core_mask=RKNNLite.NPU_CORE_0_1_2) #6TOPS三NPU全开


# 读取图片预处理

img=cv2.imread("test.jpg")

img=cv2.resize(img,(640,640))

# NPU推理

output = rknn_lite.inference(inputs=[img])

# 后处理:解析检测框、置信度、类别(YOLO官方后处理代码)


rknn_lite.release()


实测性能(RK3588 6TOPS INT8):yolov8s-640 单帧**26\32ms,30FPS+**;yolov5s 可达 35FPS,CPU 推理仅 3\5FPS,NPU 加速提升 6~10 倍。


3.USB 摄像头实时视频流部署(工程落地)


依托 OpenCV 捕获 USB 摄像头,循环预处理→NPU 推理→画面画框输出,核心伪代码:


cap=cv2.VideoCapture(0) #0=USB摄像头

while cap.isOpened():

    ret,frame=cap.read()

    img=cv2.resize(frame,(640,640))

    pred=rknn_lite.inference([img])

    # 后处理绘制检测框

    cv2.imshow("6TOPS-YOLO",frame)

    cv2.waitKey(1)


五、阶段 4:C++ 工程编译部署(量产首选,速度优于 Python30%+)


1. 拉取瑞芯微官方 rknpu2 示例:git clone https://github.com/rockchip-linux/rknpu2


2. 进入examples/rknn_yolov8_demo,替换 demo 内model/yolov8.rknn为自制yolo6t.rknn


3. 本地 ARM 编译:


bash build-linux.sh

# 运行

export LD_LIBRARY_PATH=./lib:$LD_LIBRARY_PATH

./rknn_yolov8_demo model/yolo6t.rknn test.jpg


C++ 实测:yolov8s 640P18~22ms / 帧,45FPS+,工业视频流首选方案。


六、6TOPS 盒子优化实战(提速 & 保精度落地技巧)


1. NPU 调度优化:RK3588 三 NPU 全启用NPU_CORE_0_1_2,禁用单核运行,算力拉满 6TOPS;RK3576 同理三核全开。


2. 模型精简:YOLOn/s 轻量化模型优先部署,大分辨率 (1280) 拆分多图推理,避免内存溢出。


3. 量化优化:校准数据集≥30 张实景图,减少 INT8 量化精度损失;高精度场景采用 FP16 非量化。


4. 硬件解码:盒子内置 VPU 硬件 H.265 解码,多路 IPC 摄像头(4 路 1080P)走硬解,CPU 占用降低 70%。


七、高频踩坑避坑清单


1. ONNX 导出动态维度→NPU 转换失败:导出强制dynamic=False固定 640*640 尺寸。


2. rknn 加载报错、算子缺失:升级 RKNN-Toolkit2 至 1.6+,onnx-simplifier 简化模型。


3. 盒子运行找不到 rknn 库:export LD_LIBRARY_PATH=./lib临时指定库路径,写入 /etc/profile 永久配置。


4. 推理帧率低:确认core_mask开启全部 NPU 核心,未跑在 CPU。


八、落地应用场景


6TOPS 国产盒子适配:智慧工地安全帽 / 反光衣检测、产线零件缺陷检测、园区人车抓拍、充电桩烟火识别、车载边缘视觉,单盒可带 2~4 路 1080P 摄像头实时 AI 分析。

家具维修培训

- END -
分享:
留言 留言 试用申请
产品咨询 产品咨询 硬件设备咨询
华北地区负责人:17340067106(毛经理)
华东地区负责人:17358670739(甘经理)
华南、华西地区负责人:19113907060(耿女士)
技术咨询 技术咨询 软件算法咨询
18982151213(刘先生)
微信在线客服 微信在线客服 在线客服
返回官网顶部 返回官网顶部 回到顶部
关闭窗口
产品订购
  • *

  • *

  • *

  • *

  • *