RK3566上运行yolov5模型进行图像识别
一、简介
本文记录了依靠RK官网的文档,一步步搭建环境到最终在rk3566上把yolov5 模型跑起来。最终实现的效果如下:
在rk3566 板端运行如下app:
./rknn_yolov5_demo model/RK356X/yolov5s-640-640.rknn model/bus.jpg
其中yolov5s-640-640.rknn是模型文件,bus.jpg是输入给模型的图像数据
输入图像:

输出识别结果:

其中console输出如下
post process config: box_conf_threshold = 0.25, nms_threshold = 0.45
Read model/bus.jpg ...
img width = 640, img height = 640
Loading mode...
sdk version: 1.4.0 (a10f100eb@2022-09-09T09:07:14) driver version: 0.8.2
model input num: 1, output num: 3index=0, name=images, n_dims=4, dims=[1, 640, 640, 3], n_elems=1228800, size=1228800, fmt=NHWC, type=INT8, qnt_type=AFFINE, zp=-128, scale=0.003922index=0, name=334, n_dims=4, dims=[1, 255, 80, 80], n_elems=1632000, size=1632000, fmt=NCHW, type=INT8, qnt_type=AFFINE, zp=77, scale=0.080445index=1, name=353, n_dims=4, dims=[1, 255, 40, 40], n_elems=408000, size=408000, fmt=NCHW, type=INT8, qnt_type=AFFINE, zp=56, scale=0.080794index=2, name=372, n_dims=4, dims=[1, 255, 20, 20], n_elems=102000, size=102000, fmt=NCHW, type=INT8, qnt_type=AFFINE, zp=69, scale=0.081305
model is NHWC input fmt
model input height=640, width=640, channel=3
once run use 95.224000 ms
loadLabelName ./model/coco_80_labels_list.txt
person @ (114 235 212 527) 0.819099
person @ (210 242 284 509) 0.814970
person @ (479 235 561 520) 0.790311
bus @ (99 141 557 445) 0.693320
person @ (78 338 122 520) 0.404960
loop count = 10 , average run 91.414500 ms
下面简单记录实现过程
二、实现步骤
2.1、环境准备
参考官网的例子,最好使用python3.8?rknn_yolov5_demo 使用的glibc 库是2.29
2.2、编译app
参考官网的例子,rknn_yolov5_demo 使用的glibc 库是2.29
将install目录拷贝到windows
2.3、在板子运行
在windows 搭建tftp server(因为nfs server 一直出现各种问题,所以我只能使用tftp了,无奈)tftpd64 下载地址:https://bitbucket.org/phjounin/tftpd64/wiki/Download%20Tftpd64
运行tftp64,设置共享路径
linux 端自带一个tftp 软件,可以使用它从windows下载所需的文件,这里是一份tftp 下载的脚本
该脚本将windows 的文件下载到mnt/rknn 目录下
tftp -g -l /mnt/rknn/model/coco_80_labels_list.txt -r model/coco_80_labels_list.txt 192.168.8.101
tftp -g -l /mnt/rknn/lib/librga.so -r lib/librga.so 192.168.8.101
tftp -g -l /mnt/rknn/lib/librknnrt.so -r lib/librknnrt.so 192.168.8.101
tftp -g -l /mnt/rknn/model/RK356X/yolov5s-640-640.rknn -r model/RK356X/yolov5s-640-640.rknn 192.168.8.101
tftp -g -l /mnt/rknn/modelbus.jpg -r model/bus.jpg 192.168.8.101
tftp -g -l /mnt/rknn/rknn_yolov5_demo -r rknn_yolov5_demo 192.168.8.101相关文章:
RK3566上运行yolov5模型进行图像识别
一、简介 本文记录了依靠RK官网的文档,一步步搭建环境到最终在rk3566上把yolov5 模型跑起来。最终实现的效果如下: 在rk3566 板端运行如下app: ./rknn_yolov5_demo model/RK356X/yolov5s-640-640.rknn model/bus.jpg其中yolov5s-640-640.r…...
汽车标定技术(一):XCP概述
目录 1.汽车标定概述 2.XCP协议由来及版本介绍 3.XCP技术通览 3.1 XCP上下机通信模型 3.2 XCP指令集 3.2.1 XCP帧结构定义 3.2.2 标准指令集 3.2.3 标定指令集 3.2.4 页切换指令集 3.2.5 数据采集指令集 3.2.6 刷写指令集 3.3 ECU描述文件(A2L)概述 3.3.1 标定上位…...
短视频的运营方法
尊敬的用户们,你们好!今天我将为大家带来一篇关于短视频运营的专业文章。在当今互联网时代,短视频已经成为了一个重要的流量入口,掌握正确的运营方法对于企业的发展至关重要。接下来,我将通过以下几个方面为大家详细介…...
GitLab CI/CD 持续集成/部署 SpringBoot 项目
一、GitLab CI/CD 介绍 GitLab CI/CD(Continuous Integration/Continuous Deployment)是 GitLab 提供的一种持续集成和持续部署的解决方案。它可以自动化软件的构建、测试和部署过程,以便开发者更快地、更频繁地发布可靠的产品。 整体过程如…...
第二证券:政策效应逐步显现 A股修复行情有望持续演绎
上星期,A股商场延续企稳反弹的态势,上证指数震荡上涨0.43%;沪深两市日均成交额回升至8700亿元左右;北向资金近一个月初次转为周净买入5.57亿元。 安排观点一起认为,在稳增加、稳预期相关政策持续发力,上市…...
sql逻辑优化
1.分页 通常使用每页条数及第一页作为参数 开发接口 GetMapping("/querySystemList") public List<SystemAduit> querySystemList(RequestParam("keyword") String keyword,RequestParam(name "offset", defaultValue "0") i…...
【数据结构】树与二叉树(一):树(森林)的基本概念:父亲、儿子、兄弟、后裔、祖先、度、叶子结点、分支结点、结点的层数、路径、路径长度、结点的深度、树的深度
文章目录 5.1 树的基本概念5.1.1 树的定义树有序树、无序树 5.1.2 森林的定义5.1.3 树的术语1. 父亲(parent)、儿子(child)、兄弟(sibling)、后裔(descendant)、祖先(anc…...
2024 Android Framework学习大纲之基础理论篇
2024 Android Framework学习大纲之基础理论篇 受到当前经济影响,互联网越来越不景气了,因此Android App开发也是越来越不景气,中小型公司越来越偏向跨平台开发,比如Flutter,这样能节省成本,笔者也曾经是一名6年多工作经…...
【深度学习】Yolov8 区域计数
git:https://github.com/ultralytics/ultralytics/blob/main/examples/YOLOv8-Region-Counter/readme.md 很长时间没有做yolov的项目了,最近一看yolov8有一个区域计数的功能,不得不说很实用啊。 b站:https://www.bilibili.com/vid…...
Windows 系统服务器部署jar包时,推荐使用winsw,将jar包注册成服务,并设置开机启动。
一、其他方式不推荐的原因 1、Spring Boot生成的jar包,可以直接用java -jar运行,但是前提是需要登录用户,而且注销用户后会退出程序,所以不可用。 2、使用计划任务,写一个bat处理文件,里面写java -jar运行…...
npm 包管理
1. 命令 // 查看是否登录 npm who am i // 登录:输入用户名、密码、邮箱、一次性登录密码(邮箱接收) npm login // 创建 npm init // 快速创建 npm init -y // 发包 npm publish // 发包(开源) npm publish --access …...
力扣370周赛 -- 第三题(树形DP)
该题的方法,也有点背包的意思,如果一些不懂的朋友,可以从背包的角度去理解该树形DP 问题 题解主要在注释里 //该题是背包问题树形dp问题的结合版,在树上解决背包问题 //背包问题就是选或不选当前物品 //本题求的是最大分数 //先转…...
GPT学习笔记
百度的文心一言 阿里的通义千问 通过GPT能力,提升用户体验和产品力 GPT的出现是AI的iPhone时刻。2007年1月9日,第一代iPhone发布,开启移动互联网时代。新一轮的产业革命。 GPT模型发展时间线: Copilot - 副驾驶 应用…...
Apex的addError()显示的消息中实现换行
直接用‘<br/>’是无效的,因为addError默认不转义HTML符号,如果需要转义,应该将第二个参数escape设置为false。不过即使设置了也只对classic页面生效,lightning页面还是无法转义。 官方文档: 参考资料…...
STM32中微秒延时的实现方式
STM32中微秒延时的实现方式 0.前言一、裸机实现方式二、FreeRTOS实现方式三、定时器实现(通用)4、总结 0.前言 最近在STM32驱动移植过程中需要用到微秒延时来实现一些外设的时序,由于网上找到的驱动方法良莠不齐,笔者在实现时序过…...
2005-2021年全国各省家庭承包耕地面积和家庭承包耕地流转总面积数据(无缺失)
2005-2021年全国各省家庭承包耕地面积和家庭承包耕地流转总面积数据 1、时间:2005-2021年 2、来源:农村经营管理统计NB 3、指标:家庭承包经营耕地面积、家庭承包耕地流转总面积(单位:亩) 4、范围&#…...
【六、http】go的http的客户端重定向
一、http的重定向 重定向过程:客户浏览器发送http请求----》web服务器接受后发送302状态码响应及对应新的location给客户浏览器–》客户浏览器发现是302响应,则自动再发送一个新的http请求,请求url是新的location地址----》服务器根据此请求寻…...
AI:61-基于深度学习的草莓病害识别
🚀 本文选自专栏:AI领域专栏 从基础到实践,深入了解算法、案例和最新趋势。无论你是初学者还是经验丰富的数据科学家,通过案例和项目实践,掌握核心概念和实用技能。每篇案例都包含代码实例,详细讲解供大家学习。 📌📌📌在这个漫长的过程,中途遇到了不少问题,但是…...
idea文件比对
idea文件比对 1.项目内的文件比对2.项目间的文件比对3. 剪切板对比4. 版本历史(不同分支和不同commit)对比 1.项目内的文件比对 在项目中选择好需要比对的文件(类),然后选择Compare Files Mac下的快捷键是Commandd, 这样的比对像是git冲突解决一样 …...
重磅发布|美创科技新一代 数据安全管理平台(DSM Cloud)全新升级
重磅发布 新一代 数据安全管理平台(DSM Cloud) 美创科技新一代 数据安全管理平台(简称:DSM Cloud)全新升级,正式发布。 在业务上云飞速发展过程中,快速应对数据激增,同时有效保障数…...
MPNet:旋转机械轻量化故障诊断模型详解python代码复现
目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...
SciencePlots——绘制论文中的图片
文章目录 安装一、风格二、1 资源 安装 # 安装最新版 pip install githttps://github.com/garrettj403/SciencePlots.git# 安装稳定版 pip install SciencePlots一、风格 简单好用的深度学习论文绘图专用工具包–Science Plot 二、 1 资源 论文绘图神器来了:一行…...
【算法训练营Day07】字符串part1
文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接:344. 反转字符串 双指针法,两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...
Springcloud:Eureka 高可用集群搭建实战(服务注册与发现的底层原理与避坑指南)
引言:为什么 Eureka 依然是存量系统的核心? 尽管 Nacos 等新注册中心崛起,但金融、电力等保守行业仍有大量系统运行在 Eureka 上。理解其高可用设计与自我保护机制,是保障分布式系统稳定的必修课。本文将手把手带你搭建生产级 Eur…...
GitHub 趋势日报 (2025年06月08日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...
工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配
AI3D视觉的工业赋能者 迁移科技成立于2017年,作为行业领先的3D工业相机及视觉系统供应商,累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成,通过稳定、易用、高回报的AI3D视觉系统,为汽车、新能源、金属制造等行…...
【JVM面试篇】高频八股汇总——类加载和类加载器
目录 1. 讲一下类加载过程? 2. Java创建对象的过程? 3. 对象的生命周期? 4. 类加载器有哪些? 5. 双亲委派模型的作用(好处)? 6. 讲一下类的加载和双亲委派原则? 7. 双亲委派模…...
Webpack性能优化:构建速度与体积优化策略
一、构建速度优化 1、升级Webpack和Node.js 优化效果:Webpack 4比Webpack 3构建时间降低60%-98%。原因: V8引擎优化(for of替代forEach、Map/Set替代Object)。默认使用更快的md4哈希算法。AST直接从Loa…...
GO协程(Goroutine)问题总结
在使用Go语言来编写代码时,遇到的一些问题总结一下 [参考文档]:https://www.topgoer.com/%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B/goroutine.html 1. main()函数默认的Goroutine 场景再现: 今天在看到这个教程的时候,在自己的电…...
jmeter聚合报告中参数详解
sample、average、min、max、90%line、95%line,99%line、Error错误率、吞吐量Thoughput、KB/sec每秒传输的数据量 sample(样本数) 表示测试中发送的请求数量,即测试执行了多少次请求。 单位,以个或者次数表示。 示例:…...
