RKNPU2 Yolo-v5 集成文档

news/2024/7/10 23:56:14 标签: YOLO

导出 rknn 模型的指南

请参考此链接:https://github.com/airockchip/rknn_model_zoo/tree/main/models/CV/object_detection/yolo

注意事项

  1. 使用的rknn-toolkit2版本需大于或等于1.4.0;
  2. 如果使用自己训练的模型,需要注意对齐后处理的参数,如锚点(anchor),否则会导致后处理分析错误;
  3. 官方网站和 rk 预训练模型都检测 80 种目标。如果自己训练模型,需要更改 include/postprocess.h 中的 OBJ_CLASS_NUM 和 NMS_THRESH、BOX_THRESH 等后处理参数。
  4. 演示需要支持 librga.so,请参考 https://github.com/airockchip/librga 进行编译和使用
  5. 由于硬件限制,演示模型默认将 yolov5 模型的后处理部分移至 cpu 实现。附带的模型均使用 ReLU 作为激活函数。与 silu 相比,精度稍低,但性能大幅提升。

Aarch64 Linux 演示

编译 && 构建

根据目标平台,修改 ‘build-android_<TARGET_PLATFORM>.sh’ 中的 ‘TOOL_CHAIN’ 路径。例如:

复制代码

export TOOL_CHAIN=~/opt/tool_chain/gcc-9.3.0-x86_64_aarch64-linux

然后运行脚本

复制代码

./build-linux_<TARGET_PLATFORM>.sh

将所有构建输出文件推送到主板

将 install/rknn_yolov5_demo_Linux 推送到主板:

  • 使用 scp 或其他不同的方法将 install/rknn_yolov5_demo_Linux 下的所有文件推送到 ‘/userdata’

运行

cd /userdata/rknn_yolov5_demo_Linux/

export LD_LIBRARY_PATH=./lib
./rknn_yolov5_demo model/<TARGET_PLATFORM>/yolov5s-640-640.rknn model/bus.jpg

注意:如果找不到 libra.so 文件,请尝试查找其位置并将其添加到 LD_LIBRARY_PATH 中。可以使用以下命令将其添加到 LD_LIBRARY_PATH 中:

export LD_LIBRARY_PATH=./lib:<LOCATION_LIBRGA.SO>

视频演示 demo

H264

./rknn_yolov5_video_demo model/<TARGET_PLATFORM>/yolov5s-640-640.rknn xxx.h264 264

通过ffmpeg将xxx.mp4转换为h264:

ffmpeg -i xxx.mp4 -vcodec h264 out.h264

H265

./rknn_yolov5_video_demo model/<TARGET_PLATFORM>/yolov5s-640-640.rknn xxx.hevc 265

通过ffmpeg将xxx.mp4转换为h265:

ffmpeg -i xxx.mp4 -vcodec hevc out.hevc

RTSP

./rknn_yolov5_video_demo model/<TARGET_PLATFORM>/yolov5s-640-640.rknn <RTSP_URL> 265

官方文档地址

官方文档地址


http://www.niftyadmin.cn/n/5363979.html

相关文章

10秒部署好 Serverless Web,我只告诉你一个人

谁还不知道Serverless&#xff1f; 上个月亚马逊云科技 re:Invent大会第一个演讲主题就是它。 每一个新技术概念的引入都伴随着生产力的提高&#xff0c;Serverless指的是一种构建和运行不需要服务器管理的应用程序的概念。 一个很有用的技术&#xff0c;这篇文章带你入门。…

笔记---中国剩余定理

全程学自y总 AcWing.204.表达整数的奇怪方式 给定 2 n 2n 2n 个整数 a a a1, a a a2,…, a a an 和 m m m1, m m m2,…, m m mn&#xff0c;求一个最小的非负整数 x x x&#xff0c;满足 ∀ i ∈ [ 1 , n ] , x ≡ m ∀i∈[1,n],x≡m ∀i∈[1,n],x≡mi ( m o d a (mod a (…

开源软件的未来

随着信息技术的不断发展和进步&#xff0c;开源软件已成为推动技术创新和行业变革的重要力量。在未来&#xff0c;开源软件将继续发挥其独特的作用&#xff0c;引领着整个IT行业的发展方向。 一、开源软件的重要性 开源软件是一种开放源代码的软件&#xff0c;其源代码可以被…

漏洞01-目录遍历漏洞/敏感信息泄露/URL重定向

目录遍历漏洞/敏感信息泄露/URL重定向 文章目录 目录遍历敏感信息泄露URL重定向 目录遍历 敏感信息泄露 于后台人员的疏忽或者不当的设计&#xff0c;导致不应该被前端用户看到的数据被轻易的访问到。 比如&#xff1a; ---通过访问url下的目录&#xff0c;可以直接列出目录下…

RPM与YUM

RPM RPM是Red Hat Package Manager的缩写&#xff0c;它是一种用于安装、卸载、升级和管理RPM包的工具。RPM使用一种数据库记录的方式来将软件安装到Linux系统&#xff0c;可以自动解决依赖性问题&#xff0c;并且提供了查询和校验等功能。 以下是使用rpm的基本操作&#xff…

Spring面试大全-基础知识01

1.什么是Spring Spring框架是用于构建企业级Java的开源框架&#xff0c;他通过依赖注入和IOC容器帮我我们管理对象&#xff1b;支持AOP&#xff0c;将非业务功能&#xff08;日志&#xff0c;事务等&#xff09;从我们业务代码中分离出来&#xff0c;提高了代码的可维护性&…

【Python小游戏】五子棋小游戏(完整代码)

文章目录 写在前面Tkinter简介五子棋小游戏游戏介绍程序设计运行结果注意事项写在后面写在前面 本期内容:基于tkinter开发一个五子棋小游戏 实验环境 python3.11及以上pycharmtkinterTkinter简介 Tkinter是Python中最常用的图形用户界面(GUI)库之一,用于创建窗口、对话框…

新加坡大带宽服务器优势特点

随着互联网技术的不断进步&#xff0c;大带宽服务器在满足高速数据传输需求方面发挥着越来越重要的作用。新加坡&#xff0c;作为全球互联网基础设施的重要枢纽&#xff0c;其大带宽服务器在全球范围内备受关注。本文将深入探讨新加坡大带宽服务器的优势特点&#xff0c;以及如…