(十二)rk3568 NPU 中部署自己训练的模型,(1)使用yolov5训练自己的数据集-环境搭建部分

news2024/11/15 9:16:55

rk3568中带有0.8T算力的NPU,可以完成一些轻量级的图像识别任务。

本文向零基础人员介绍从windows中搭建训练环境,模型训练、模型转换到rknn模型部署到电路板上全部过程。
rk3568npu支持caffe、darknet、onnx、pytorch、tensorflow等多种框架。
本人使用的是pytorch框架的yolov5s算法训练的模型。yolov5在yolov3的基础上有很大提高,在保持准确率的情况下,模型更小,更适合轻量化的嵌入式产品部署。

1、下载和安装nvidia显卡驱动

下载对应你的英伟达显卡驱动。

NVIDIA 驱动下载:https://www.nvidia.cn/Download/index.aspx?lang=cn

2、下载CUDA

cuda下载链接:https://developer.nvidia.com/cuda-downloads?
target_os=Windows&target_arch=x86_64&target_version=10&target_type=exelocal

3、下载cuDNN
cudnn下载地址:https://developer.nvidia.com/cudnn

这个需要有账号。

以上三个都是按照自己的电脑显卡配置、以及操作系统来下载的,不可以随意下载。 

4、安装cuda
(1) 将cuda运行安装,建议默认路径

(2) 安装完成后设置环境变量

 计算机上点右键,打开属性->高级系统设置->环境变量,可以看到系统中多了CUDA_PATH和
CUDA_PATH_V10_2两个环境变量。
接下来,还要在系统中添加以下几个环境变量:
这是默认安装位置的路径: C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.2
CUDA_SDK_PATH = C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.2
CUDA_LIB_PATH = %CUDA_PATH%\lib\x64
CUDA_BIN_PATH = %CUDA_PATH%\bin
CUDA_SDK_BIN_PATH = %CUDA_SDK_PATH%\bin\win64
CUDA_SDK_LIB_PATH = %CUDA_SDK_PATH%\common\lib\x64

 在系统变量 Path 的末尾添加:
%CUDA_LIB_PATH%;%CUDA_BIN_PATH%;%CUDA_SDK_LIB_PATH%;%CUDA_SDK_BIN_PATH%;
再添加如下5条(默认安装路径):
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\lib\x64
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\include
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\extras\CUPTI\lib64
C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.2\bin\win64
C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.2\common\lib\x64

 注:与CUDA Samples相关的几个路径也可以不设置

5、安装cuDNN
复制cudnn文件
对于cudnn直接将其解开压缩包,然后需要将bin,include,lib中的文件复制粘贴到cuda的文件夹下
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2
注意:对整个文件夹bin,include,lib复制粘贴

7)CUDA安装测试
最后测试cuda是否配置成功:
打开CMD执行:nvcc -V
即可看到cuda的信息

说明配置成功

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/446993.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

springboot+vue企业人事人力资源管理系统java公司员工出差考勤办公OA系统

“简易云”是这个系统的名字 (6)系统管理:主要下拉分为角色管理、菜单管理; 角色管理:此页面可对角色进行增删改查操作,可修改不同角色的权限; 菜单管理:此页面可配置系统可展示的菜…

linux学习记录 和文件系统相关的命令

记录过程,会有错误,硬链接与软链接哪里可能没有说清楚 文件,目录操作命令 pwd 获取当前处于哪个目录当中,返回的是绝对路径 [rootlocalhost home]# pwd /homecd cd 相对/绝对路径 切换目录的,change directory .代表当前目录 …代表上一级…

【C++学习】类和对象--对象特性(1)

构造函数和析构函数 对象的初始化和清理是两个非常重要的安全问题 一个对象或变量没有初始状态,对其使用后果是未知的 使用完一个对象或变量,没有及时清理,也会造成一定的安全问题 C利用构造函数和析构函数解决上述问题,这两个函数…

排序 Comparable 和 Comparator 区别所在

在 Java 中,Comparable 和Comparator 都是用来元素排序的,但是本质不用。我们从几点开始分析。 1.字面含义 Comparable 中文翻译是”比较“,以 able 结尾 说明它具有某种能力。 Comparator 中文翻译是”比较器“,以 or 结尾 表明…

【C++ 二十】STL:遍历、查找、排序、拷贝和替换、算术生成、集合算法

STL:遍历、查找、排序、拷贝和替换、算术生成、集合算法 文章目录 STL:遍历、查找、排序、拷贝和替换、算术生成、集合算法前言1 常用遍历算法1.1 for_each1.2 transform 2 常用查找算法2.1 find2.2 find_if2.3 adjacent_find2.4 binary_search2.5 count…

室内人员定位系统源码,采用java语言+UWB定位技术开发

运用UWB定位技术开发的人员定位系统源码 文末获取联系 本套系统运用UWB定位技术开发的高精度人员定位系统,通过独特的射频处理,配合先进的位置算法,可以有效计算复杂环境下的人员与物品的活动信息。 系统提供位置实时显示、历史轨迹回放、人…

循序渐进,学会用pyecharts绘制瀑布图

循序渐进,学会用pyecharts绘制瀑布图 瀑布图简介 瀑布图(Waterfall Plot)是由麦肯锡顾问公司所独创的图表类型,因为形似瀑布流水而称之为瀑布图。 瀑布图采用绝对值与相对值结合的方式,适用于表达多个特定数值之间的数量变化关系。当用户想…

本地Nacos设置脚本命令启动

一、起因: 每次启动都要找到位置写一遍命令费劲。 1、可设置开机启动 2、可设置脚本自动 二、配置脚本: 1、这是我nacos的位置 用bat命令启动一个cmd命令行,然后在里面执行两天命令。 ①命令一:打开指定路径 ②命令二&#xf…

Java图书借阅管理系统详细设计和实现

基于JavaSpringHtml的图书借阅管理系统详细设计和实现 博主介绍:5年java开发经验,专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域 作者主页 超级帅帅吴 Java毕设项目精品实战案例《500套》 欢迎点赞 收藏 ⭐留言 文末获取源…

cmd连接本地mysql数据库和远程服务器mysql数据库

1.在cmd窗口里连接本地的mysql数据库 打开运行窗口,输入cmd,确定 windowsr 或在左下角windows图标处鼠标右键,点击运行按钮打开运行窗口 格式: mysql -u用户名 -p密码 mysql -uroot -p123456 成功进入mysql 2. 在cmd窗口里连接远…

尚硅谷_宋红康_第17章_反射机制

第17章_反射机制 本章专题与脉络 1. 反射(Reflection)的概念 1.1 反射的出现背景 Java程序中,所有的对象都有两种类型:编译时类型和运行时类型,而很多时候对象的编译时类型和运行时类型不一致。 Object obj new String(“hello”); obj.ge…

Django使用Celery异步发送邮件

Django使用Celery异步发送邮件 前言邮箱配置Django项目发送邮件配置邮件服务器Django发送邮件模块 Celery概述工作模式安装Celery Celery的基本使用创建config.py配置文件创建Celery实例并加载配置定义任务启动Celery服务提交任务异常 Celery发送邮件创建config.py配置文件创建…

机器学习 day05(多元线性回归,向量化,及向量化高效的原理)

1. 单个特征(变量)的线性回归模型 房子的价格仅由房子的大小决定,如图: 2. 多个特征(变量)的线性回归模型 房子的价格由房子的大小,房子有多少个卧室,房子有几层,房子…

2023年,逆势拿到大厂Offer,我怎么做?|原创

关于面试,做一些经验分享。 过年时候默默给自己定下了3个目标。第一个就是2023要换一份喜欢的工作。没想到在4月就提前实现了这个目标。 是一个我很看好的大厂,期待的岗位、看好的方向,薪资涨幅也比较给力。最近这段时间没空发文章&#xff0…

MySql中,join 语句怎么优化?

既然每次从驱动表取数据比较耗时,那我们每次从驱动表取一批数据放到内存中,然后对这一批数据进行匹配操作。这批数据匹配完毕,再从驱动表中取一批数据放到内存中,直到驱动表的数据全都匹配完毕 批量取数据能减少很多IO操作&#…

二十三、高级网络技术及应用——BFD解析

文章目录 前言一、BFD 简介1、概述:2、作用: 二、静态路由调用 BFD1、配置静态 BFD2、配置动态 BFD 三、OSPF联动BFD四、BFD 单臂回声(one arm echo) 前言 BFD:Bidirectional Forwarding Detection,双向转…

奇舞周刊第490期:WebAssembly 多语言/宿主环境中的使用

记得点击文章末尾的“ 阅读原文 ”查看哟~ 下面先一起看下本期周刊 摘要 吧~ 奇舞精选 ■ ■ ■ WebAssembly 多语言/宿主环境中的使用 WebAssembly (WASM) 的一个优势就是能够支持将不同语言编译成 WASM 代码,然后在不同的宿主环境中运行。这样就可以在不同的宿主环…

【WSN定位】基于多通信半径和跳距加权优化的Dvhop定位算法【Matlab代码#15】

文章目录 1. 原始Dvhop定位算法2. 多通信半径3. 加权跳距4. 部分代码展示5. 仿真结果展示6. 资源获取 1. 原始Dvhop定位算法 可参考Dvhop定位算法 2. 多通信半径 设网络通信半径为 R R R,将锚节点与邻居节点间分为 m m m级,网络中各信标节点与其邻居节…

Nuxt3用nginx部署到二级目录

有的时候我们需要把我们写的Nuxt3项目部署到域名的二级目录,例如:https://abc.xx.com/abc/目录下。主要就是用nginx进行配置代理转发来实现的,这样可以实现我们同一个域名下可以部署多个Nuxt3独立的项目,只不过端口不同。使用ngin…

Node【Global全局对象】之【Buffer】

文章目录 🌟前言🌟Buffer🌟Buffer介绍🌟Buffer对象:类似于数组,其元素是16进制的两位数。🌟什么时候用Buffer🌟Buffer的转换🌟Buffer使用🌟创建Buffer&#x…