Nvidia jetson nano 部署yolov5_技术文档

news2024/10/2 3:22:41

Nvidia jetson nano 部署yolov5_技术文档

每天一句小姜格言:我行,我不是一般人儿

部署开始:

1、通过FileZilla,将window文件传输至jetson nano 上的nano文件夹下。

FileZilla

2、查看cuda

我买的jetson nano是带有配置好的镜像。系统配置如下
系统配置

查看cuda指令
nvcc -V

可能会报错, nvcc:command not found

解决办法:

cd /usr/local/cuda/bin
vi ~/.bashrc
#添加代码,保存并退出
export PATH=“/usr/local/cuda/bin/usr/local/cuda/bin:$PATH”
source ~/.bashrc

再次运行 nvcc -V,应该就可以出结果了

3、配置环境

我的 yolov5 文件夹路径 /home/nano/yolov5/
在yolov5文件夹下,执行以下操作:
#安装requirement.txt文件里的依赖包
sudo pip install -r requirement.txt

#如果不能直接安装的话,就一个一个安装
sudo pip install xxx

环境安装后,python3 detect.py可以运行

but but but 不是GPU加载,而是CPU,这是由于torch的版本不对,yolov5中torch>=1.7.0,所以换成高版本的就可以了

这里真的要科普一下,arm架构和x86架构

(1)本质区别:X86使用CISC(Complex Instruction Set Computer,复杂指令集计算机),ARM使用RISC(Reduced Instruction Set Computer,精简指令集计算机),ARM英文全称Advanced RISC Machine。

(2)各自追求:X86追求性能最优,缺点是功耗大,不节能(和ARM对比);ARM追求低功耗(节能),缺点是采用精简指令集,导致编译器处理复杂,因此性能相对X86差。

(3)应用领域:X86主要是PC机(Intel、AMD),X86服务器;ARM主要是应用于移动设备(手机、平板电脑等嵌入式领域)。

(4)典型代表:X86结构主要是Intel、AMD等PC电脑;ARM主要是移动终端,IBM的Power PC。
源自:

【架构知多少】谈谈X86架构与ARM架构区别
针对arm架构的jetson ,nvidia官网有对应的torch 文件,需要翻墙,挺难下载的,官网地址

我下载的版本是torch-1.8.0

接着是torchvision-0.9.0,直接使用指令安装

我的安装代码

#这里注意一下,zlib1g-dev这个包,可能会出现 Unable to locate package zlib1g-dev
#出现这个报错,先看看你的字母写错没有,第一个是字母 l ,第二个是数字 1

$ sudo apt-get install libjpeg-dev zlib1g-dev libpython3-dev libavcodec-dev libavformat-dev libswscale-dev

$ git clone --branch v0.9.0 https://github.com/pytorch/vision torchvision # see below for version of torchvision to download

$ cd torchvision

$ export BUILD_VERSION=0.x.0 # where 0.x.0 is the torchvision version

$ python3 setup.py install --user

$ cd …/

$ pip install ‘pillow<7’

安装torchvision这个包可能还会出现另一个报错

OSError: libmpi_cxx.so.20: cannot open shared object file: No such file or directory

解决办法,登录https://pkgs.org/网址,搜索libmpi_cxx.so.20

在这里插入图片描述

一直往下滑,直到找到 Install How to

在这里插入图片描述

sudo apt-get update
sudo apt-get install libopenmpi2

4、运行程序-成功

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

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

相关文章

[数据结构]:16-归并排序(顺序表指针实现形式)(C语言实现)

目录 前言 已完成内容 归并排序实现 01-开发环境 02-文件布局 03-代码 01-主函数 02-头文件 03-PSeqListFunction.cpp 04-SortFunction.cpp 结语 前言 此专栏包含408考研数据结构全部内容&#xff0c;除其中使用到C引用外&#xff0c;全为C语言代码。使用C引用主要是…

嵌入式开发:CIA保护跨连接设备的嵌入式数据

在嵌入式开发中&#xff0c;ITTIA SDL保护数据并确保嵌入式系统的开发安全。嵌入式系统中的数据管理安全威胁是什么?ITTIA如何解决这个问题?嵌入式系统和企业系统的数据管理理想情况下遵循相同的安全威胁。有三个主要的基本原则或目标被称为CIA&#xff1a;保密性&#xff1a…

【FATE联邦学习】standalone版Fateboard修改配置

背景&做法 很多其他程序&#xff08;比如vscode的code server&#xff09;也会使用这个 127 0 0 1:8080 socket进行通信&#xff0c;这样就没办法远程用vscode去开发了&#xff0c;所以需要修改下Fateboard的socket配置。官方文档中也给出了如何修改配置 The default data…

代码随想录--数组--滑动窗口解决最长/短子数组题型

注意题目是说找连续数组的和>s的最小长度&#xff0c;是“和”&#xff0c;不然都不知道题目在说什么。 http://【拿下滑动窗口&#xff01; | LeetCode 209 长度最小的子数组】 https://www.bilibili.com/video/BV1tZ4y1q7XE/?share_sourcecopy_web 看一下暴力算法&…

android 卡顿、ANR优化(1)屏幕刷新机制

前言&#xff1a; 本文通过阅读各种文章和源码总结出来的&#xff0c;如有不对&#xff0c;还望指出 目录 正文 基础概念 视觉暂留 逐行扫描 帧 CPU/GPU/Surface&#xff1a; 帧率、刷新率、画面撕裂 画面撕裂 Android屏幕刷新机制的演变 单缓存&#xff08;And…

限流算法详解

限流是我们经常会碰到的东西&#xff0c;顾名思义就是限制流量。它能保证我们的系统不会被突然的流量打爆&#xff0c;保证系统的稳定运行。像我们生活中&#xff0c;地铁就会有很多护栏&#xff0c;弯弯绕绕的&#xff0c;这个就是一种限流。像我们抢茅台&#xff0c;肯定大部…

案例17-环境混用带来的影响

目录一、背景介绍背景事故二、思路&方案三、过程四、总结nginx做转发fastdfs&#xff08;文件上传下载&#xff09;五、升华一、背景介绍 本篇博客主要介绍开发中项目使用依赖项环境闭一只带来的恶劣影响&#xff0c;在错误中成长进步。 背景 本公司另外一个产品开发God…

爱因斯坦求和约定 含代码einsum

目录 一、简介 1.哑标 2.自由标 二、torch实现 1.计算迹 2.取矩阵对角线 3.计算外积 4.batch矩阵乘法 5.带有子列表和省略号 一、简介 爱因斯坦求和约定(Einstein summation convention)是一种标记的约定, 又称为爱因斯坦标记法(Einstein notation), 可以基于一些约定…

position:absolute详解

position:absolute详解 日常开发中&#xff0c;经常会涉及元素的定位&#xff0c;我们都知道&#xff0c;绝对定位相对于最近position不为static的父级元素来定位&#xff0c;但其中定位的位置还是有细微的差别的。 绝对定位根据left和top属性来规定绝对定位元素的位置。 基…

2023年前端面试题集锦

2023年又是行情惨淡的一年&#xff0c;为此我从 「枇杷村IT面试宝典」小程序里收集了一些题目&#xff0c;更多题目可以扫下方二维码查看 现做个总结如下&#xff1a; 1. 在JavaScript中, 0 -0的结果是什么&#xff1f; 结果为true&#xff01; 严格等于比较的是值和类型&…

tcpdump写文件-w文件大小为0字节问题处理

一同事找来&#xff0c;说用tcpdump在一台linux服务器上抓包写文件&#xff0c;文件大小为0&#xff0c;不知道是什么原因造成&#xff0c;让协助解决。 自己登陆服务器试了一下&#xff0c;发现问题确实如此 不用-w&#xff0c;让打印在平面上&#xff0c;发现正常 以为权限不…

虹科案例 | 如何可持续的对变压器进行温度监控?

为了延长变压器的使用寿命&#xff0c;需要一个测量系统来监测内部整个绕组区域的温度。它必须明确温度升高发生的位置及其强度。您可以在此处了解为什么会这样以及如何在实践中实施? PART 1 变压器多点测温问题 变压器的工作温度越高&#xff0c;使用寿命越短。这里主要存在…

C++核心知识(五)—— 继承和派生

1. 继承概述1.1 为什么需要继承网页类 class IndexPage{ public://网页头部void Header(){cout << "网页头部!" << endl;}//网页左侧菜单void LeftNavigation(){cout << "左侧导航菜单!" << endl;}//网页主体部分void MainBody(){…

[SQL Statements] 基本的SQL知识 之DDL针对表结构和表空间的基本操作

[SQL Statements] 基本的SQL知识 之DDL针对表结构和表空间的基本操作 什么是数据库的表以及表空间 在MySQL中&#xff0c;一个数据库可以包含多个表&#xff0c;每个表是由若干个列&#xff08;column&#xff09;和行&#xff08;row&#xff09;组成的。表是存储数据的基本…

2023年clang12编译问题与解决的记录

最近编译clang12以及尝试基于clang开发一个C的静态代码分析工具&#xff0c;如下是遇到的环境相关的编译问题与解决方案。在此做个记录&#xff0c;同时供可能会遇到同样问题的同学参考 环境说明 注&#xff1a;如下是最终编译成功的环境 clang分支&#xff1a; branch : a…

HTTP 请求头中的 Remote_Addr,X-Forwarded-For,X-Real-IP | Spring Cloud 13

一、$remote_addr 表示发出请求的客户端主机的 IP 地址&#xff0c;但它的值不是由客户端提供的&#xff0c;而是Nginx与客户端进行TCP连接过程中&#xff0c;获得的客户端的真实地址 IP 地址&#xff0c;REMOTE_ADDR 无法伪造&#xff0c;因为建立 TCP 连接需要三次握手&…

Java学习教程,Java基础教程(从入门到精通)

Java 是一门面向对象编程语言&#xff0c;不仅吸收了 C 语言的各种优点&#xff0c;还摒弃了 C 里难以理解的多继承、指针等概念。Java 不但可以用来开发网站后台、PC 客户端和 Android APP&#xff0c;还在数据分析、网络爬虫、云计算领域大显身手。 从学术的角度讲&#xff…

VR全景云展厅,实现7*24小时的线上宣传能力!

数字化时代&#xff0c;虚拟现实技术的应用越来越广泛&#xff0c;其中VR全景云展厅是一种新兴的展示方式&#xff0c;具有独特的展示优势。随着VR技术的不断发展&#xff0c;越来越多的企业、机构和个人开始使用VR全景云展厅来展示他们的产品和服务。一、展厅营销痛点1、实地到…

内网渗透-基础环境

解决依赖&#xff0c;scope安装 打开要给cmd powershell 打开远程 Set-ExecutionPolicy RemoteSigned -scope CurrentUser; 我试了好多装这东西还是得科学上网&#xff0c;不然不好用 iwr -useb get.scoop.sh | iex 查看下载过的软件 安装sudo 安装git 这里一定要配置bu…

105.第十九章 MySQL数据库 -- MySQL半同步复制、复制过滤器、复制的问题和解决方案(十五)

6.1.6 半同步复制 Mysql的主从复制它的复制机制我们称为所谓的异步复制,这里面提到了一个概念异步,那什么叫异步复制呢,所谓异步复制实际上说白了就是在用户发请求到数据库做一些修改的时候,那我们在前面讲过主从复制,如果我们有一个主节点,另外带若干个从节点,假设有2个…