跳到主要内容

YOLOv8 多路识别

在 RK3588 NPU 上使用 YOLOv8 进行多路视频目标检测。

特性

  • 多路处理: 同时支持 9+ 路视频流
  • 3 核 NPU 加速: 充分利用 RK3588 的 3 个 NPU 核心
  • Pipeline 架构: 解码 → NPU 推理 → 后处理 → 显示
  • 实时显示: 网格显示,带帧率统计(视频帧率 + 推理帧率)
  • Letterbox 预处理: 保持宽高比,保证检测精度

安装方法

克隆项目仓库

Device
git clone https://github.com/ZIFENG278/RK3588-Multi-Stream-YOLOv8-Detection.git

安装依赖

提示

请在 python 虚拟环境 中安装相关依赖

Device
pip3 install rknn-toolkit-lite2 opencv-python

使用方法

基本运行(9 路,3 核)

提示

--video-dir 请指定包含视频文件的文件夹

Device
python3 main_rknn_pipeline.py --video-dir ./video

无显示模式(适合测试)

Device
python3 main_rknn_pipeline.py --video-dir ./video --no-display --max-frames 100

自定义参数

Device
python3 main_rknn_pipeline.py \
--num-streams 6 \
--num-cores 3 \
--model yolov8n-i8-3588.rknn \
--video-dir video \
--conf-threshold 0.5 \
--iou-threshold 0.45

命令行参数

参数默认值说明
--num-streams9视频流数量
--num-cores3NPU 核心数 (1-3)
--modelyolov8n-i8-3588.rknn模型文件路径
--video-dirvideo视频目录
--conf-threshold0.4置信度阈值
--iou-threshold0.45NMS IoU 阈值
--no-displayFalse禁用显示
--max-framesNone限制帧数

性能参考

测试条件

Device
python main_rknn_pipeline.py \
--num-streams 9 \
--num-cores 3 \
--model yolov8n-i8-3588.rknn \
--video-dir video \
--max-frames 1000
硬件内存视频数量NPU 核心模型量化方式帧数
ROCK5B+8GB93yolov8nINT81000

测试结果

阶段耗时 (avg ms)
解码2.24
预处理2.00
NPU 推理25.77
后处理15.66
绘制1.43
总计47.10

    您需要登录 GitHub 才能发表评论。如果您已登录,请忽略此消息。

    Radxa-docs © 2026 by Radxa Computer (Shenzhen) Co.,Ltd. is licensed under CC BY 4.0