易百纳玄武S3_vi_yolo_venc示例部署指南

易百纳玄武S3_vi_yolo_venc示例部署指南 易百纳技术社区 2026-11-04 09:22:07 99

硬件平台:易百纳玄武S3

易百纳社区

简介

本文主要介绍vi_yolo_venc示例在Ebaina玄武S3边缘计算AI终端上的部署与运行验证方法。该示例基于Rockit多媒体框架,完成摄像头(VI)采集→RKNN3(RK182X)目标检测→检测框叠加→视频编码(VENC)→RTSP推流的完整链路,PC端使用VLC即可直接拉流查看带检测框的实时画面。

示例功能:

  • 通过VI(视频输入)通道采集摄像头画面,默认分辨率1920x1080、像素格式NV12(RK_FMT_YUV420SP);
  • 使用RKNN3(RK182X)运行YOLO检测模型,检测结果同时给出目标框、类别与置信度;
  • 置信度阈值(conf_threshold,默认0.45)与NMS阈值(nms_threshold,默认0.25)可通过config.json调整;
  • 编码默认H.264(VBR,1200~1500kbps,GOP 60,帧率30fps),也支持H.265;
  • 程序内置RTSP服务(端口固定554),拉流地址为rtsp://<开发板IP>/live/0;
  • 可选参数支持调整采集分辨率、摄像头通道、编码类型,并把裸码流保存到文件。

整体流程分为四步:

  1. 在x86编译服务器上交叉编译示例,生成install/目录;
  2. 将编译产物install/bin/vi_yolo_venc推送到板端/userdata;
  3. 将yolov8目录(模型文件与配置文件)推送到板端/userdata/models;
  4. 接好摄像头后在板端运行程序,PC端用VLC打开RTSP流验证检测效果。

环境准备

项目说明
编译环境x86_64 Linux 编译服务器
SDKRK182X SDK(网盘资料:【易百纳】玄武S3边缘计算AI终端_V2.0中的rk182x_ai_release.tar.gz)
交叉编译工具链aarch64-buildroot-linux-gnu,由--host参数指定
目标板Ebaina玄武S3边缘计算AI终端(Debian 13,RK3588+RK182X)
摄像头与板端ISP接口匹配的摄像头模组(运行前需接好)
模型yolov8(从<【易百纳】RK182X_模型文件>网盘资料获取)
PC端播放器VLC

编译构建

编译步骤

进入SDK中示例源码目录<RK182X SDK>/examples/vi_yolo_venc,执行编译脚本:

cd <RK182X SDK>/examples/vi_yolo_venc
./build_buildroot.sh \
  --host /<rockchip_linux6.12_release所在文件路径>/rockchip_linux6.12_release/buildroot/output/latest/host \
  --arch aarch64

说明:

  • --host为必选参数,指向buildroot输出的host目录,脚本据此生成toolchain.cmake(指定aarch64-buildroot-linux-gnu-gcc/g++编译器与对应sysroot);
  • --arch为可选参数,取值aarch64或arm,本例为aarch64;
  • 脚本会先删除旧的build/目录,再执行cmake与make install,安装路径为示例目录下的install/;

编译输出

编译成功后生成install/目录,结构如下:

vi_yolo_venc/
├── build/
│   └── vi_yolo_venc          //编译中间产物
└── install/
    └── bin/
        └── vi_yolo_venc      //板端运行的可执行程序
该示例以动态链接方式引用多媒体库librockit.so、RKNN3运行时库librknn3_api.so与RGA,RTSP库librtsp.a为静态链接,因此install/目录下只有可执行程序,不含lib/目录,相关运行库由板端系统镜像提供。

部署到开发板

推送可执行程序

将编译后的install/bin/vi_yolo_venc拷贝到板端,在Windows终端执行:

adb push <install\bin\vi_yolo_venc>  /userdata

易百纳社区

部署模型文件与配置文件

程序固定读取/userdata/models/yolov8/config.json,需要将yolov8目录整体拷贝到板端/userdata/models目录下:

adb push <yolov8实际路径>  /userdata/models

部署完成后板端目录结构示意:

/userdata/
├── vi_yolo_venc                 //可执行程序
└── models/
    └── yolov8/
        ├── config.json          //模型与阈值配置文件
        ├── yolov8*.rknn         //RKNN3模型
        ├── yolov8*.weight       //模型权重
        └── detect_classes.txt   //检测类别标签

板端运行与效果验证

运行应用程序

运行前需要接好摄像头,然后在板端执行(程序无必须的命令行参数):

cd /userdata
chmod +x ./vi_yolo_venc    //添加可执行权限
./vi_yolo_venc             //启动应用程序

PC端拉流验证

查看开发板IP地址,例如192.168.1.168:

ifconfig

在PC端打开VLC,通过媒体→打开网络串流输入RTSP地址,或直接使用命令行播放:

rtsp流地址为:rtsp://<开发板IP>/live/0,本例为rtsp://192.168.1.168/live/0(请替换为你板端的实际IP地址)。

易百纳社区

打开后即可看到摄像头实时画面,检测框与目标位置同步刷新。

可选参数

程序支持以下命令行参数(均非必选):

参数说明
-wVI采集宽度,默认1920
-hVI采集高度,默认1080
-I摄像头通道号(chn id),默认0
-c编码输出帧数,默认-1(不限帧数)
-e编码类型,取值h264、h265、mjpeg,默认h264
-o裸码流输出文件路径,默认NULL(不保存)
RTSP推流仅支持H.264与H.265,使用-e mjpeg时程序会直接退出。

常见问题

  1. 提示找不到config.json或模型加载失败:确认yolov8目录已推送到板端/userdata/models下,且config.json中的model_path、weight_path、label_path与板端实际文件路径完全一致。
  2. PC端拉不到RTSP流:依次确认板端程序处于运行状态、PC与板端在同一网段、拉流地址中的IP与实际ifconfig结果一致;若编码类型为mjpeg则不支持RTSP,需改回h264或h265。
  3. 交叉编译报找不到编译器或头文件:确认--host指向的buildroot host目录正确且工具链完整(该目录下应存在bin/aarch64-buildroot-linux-gnu-gcc与aarch64-buildroot-linux-gnu/sysroot)。


声明:本文内容由易百纳平台入驻作者撰写,文章观点仅代表作者本人,不代表易百纳立场。如有内容侵权或者其他问题,请联系本站进行删除。
红包 点赞 收藏 评论 打赏
评论
0个
内容存在敏感词
手气红包
    易百纳技术社区暂无数据
相关专栏
置顶时间设置
结束时间
删除原因
  • 广告/SPAM
  • 恶意灌水
  • 违规内容
  • 文不对题
  • 重复发帖
打赏作者
易百纳技术社区
易百纳技术社区
您的支持将鼓励我继续创作!
打赏金额:
¥1易百纳技术社区
¥5易百纳技术社区
¥10易百纳技术社区
¥50易百纳技术社区
¥100易百纳技术社区
支付方式:
微信支付
支付宝支付
易百纳技术社区微信支付
易百纳技术社区
打赏成功!

感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~

举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

审核成功

发布时间设置
发布时间:
是否关联周任务-专栏模块

审核失败

失败原因
备注
拼手气红包 红包规则
祝福语
恭喜发财,大吉大利!
红包金额
元
红包最小金额不能低于5元
红包数量
个
红包数量范围10~50个
余额支付
当前余额:
可前往问答、专栏板块获取收益 去获取
取 消 确 定

小包子的红包

恭喜发财,大吉大利

开

已领取20/40,共1.6元 红包规则

    易百纳技术社区