特殊的配置环境需求:

cuda-10.2、python 3.6.9、torch 1.7.0、torchversion 0.8.1,剩下的顺其自然即可(逃。

顺便说一句,里面的指令请一行一行仔细复制粘贴 orz

一、前置

关于如何刷机请参考 https://blog.csdn.net/qq_38679413/article/details/109398853https://www.weixiuzhan.cn/news/show-29589.html (第一个 blog 是原版设置了只有关注才能看,第二个是盗版文章233,它俩内容一样)

从 github.com 中下载 yolov5-master 汉化版。网址:https://github.com/wudashuo/yolov5

假设刷机完成了。

安装pip3

sudo apt-get install python3-pip

安装 jtop,这个可以查看设备状态并且可以打开风扇

sudo -H pip3 install -U jetson-stats

运行 jtop

sudo jtop

更新已安装的软件(这条也许可以用也许可以不用)

sudo apt-get upgrade

二、安装 requirements.txt

yolov5-master汉化:https://github.com/wudashuo/yolov5

yolov5-master 要求 Python \(\ge 3.8\),但是这里我们直接使用刷机后自带的 Python 3.6.9,原因是只能使用刷机后的 cuda 10.2,别的版本装了三天装不上,而 torch 只有较低版本如 1.7.0 才能与 cuda 10.2 匹配,Python 3.8 里找不到 torch 1.7.0,所以这里用 Python 3.6.9 完成。

更新 pip 并换源

pip3 install pip -U
pip3 config set global.index-url https://mirrors.aliyun.com/pypi/simple/

国内的其他源

豆瓣 https://pypi.doubanio.com/simple/
网易 https://mirrors.163.com/pypi/simple/
阿里云 https://mirrors.aliyun.com/pypi/simple/
腾讯云 https://mirrors.cloud.tencent.com/pypi/simple
清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/

在四周目的时候(刷了三次机),我使用了下面的指令,我不知道这条指令对于这个实验有没有影响,我觉得用不用随意吧。

sudo apt-get upgrade

安装 matplotlib,这里用 apt-get 安装一个低版本的,后面可以用别的指令更新成高版本,否则如果用 pip 直接安装会安装不上,不知道为啥。

sudo apt-get install python3-matplotlib

先把 torch 1.7.0 下载好了(例如从邮箱),安装 torch

下载地址:https://pan.baidu.com/s/1uunl1lLmR8mYSZYjL24QpA 提取码:1234

这个晚上重新下载的时候简直是飞一般的感觉,白天都被别人分走了网速,可恶!下载了两个小时!

cd 切到该文件夹下然后执行

pip3 install torch-1.7.0-cp36-cp36m-linux_aarch64.whl

如果失败请换源,我安装的时候阿里源、清华源都炸了233,最后切的豆瓣源才好使。

安装 torchvision:这里使用源码安装

git clone -b v0.8.1 https://github.com/pytorch/vision.git vision-0.8.1
sudo apt-get install libopenblas-dev
cd vision-0.8.1
sudo python3 setup.py install

剩下的可以直接

pip3 install -r requirements.txt

如果出现了重复下载多个 matplotlib 压缩包的情况,请停止,否则会非常之慢,三周目的时候它让我享受到从 3.3.2 下载到 2.0.0 的快感!并一个一个手动安装 requirements.txt 中的包,如果 pip3 无法安装,那么用 sudo apt-get python3-<package>,比如我在四周目的 seaborn 包就无法用 pip3 安装,那么就输入了 sudo apt-get python3-seaborn 然后最后再调用一次上面的指令,把之前安装的低版本的包都更新一遍。根据本人经验之谈,只要可以把低版本的安装上,那么更新非常容易。

附安装的 requirements.txt (其实就是把上面三个拉出来手动安装的 matplotlib、torch、torchvision 注释掉了而已),这里其实就是更新 matplotlib 的地方,虽然注释掉了,但是由于它似乎是 seaborn 的前置,所以可以更新。(反正我用注释掉的这个 txt 配上了环境)

# pip install -r requirements.txt

# base ----------------------------------------
# matplotlib>=3.2.2
numpy>=1.18.5
opencv-python>=4.1.2
Pillow
PyYAML>=5.3.1
scipy>=1.4.1
# torch>=1.7.0
# torchvision>=0.8.1
tqdm>=4.41.0 # logging -------------------------------------
tensorboard>=2.4.1
# wandb # plotting ------------------------------------
seaborn>=0.11.0
pandas # export --------------------------------------
# coremltools>=4.1
# onnx>=1.9.0
# scikit-learn==0.19.2 # for coreml quantization # extras --------------------------------------
# Cython # for pycocotools https://github.com/cocodataset/cocoapi/issues/172
# pycocotools>=2.0 # COCO mAP
thop # FLOPs computation

然后可能 PyYAML 包可能会出问题无法更新,那么使用

pip3 install --ignore-installed PyYAML

接着测试一下 Python 的 torch 包是否能够在 cuda 下工作。

python3
>>> import torch
>>> print(torch.cuda.is_available())

若为 True ,则可以工作。如果调用 import torch 返回了 illegal instruction (core dumped) 请退出 Python3 环境并在 bash 里输入

export OPENBLAS_CORETYPE=ARMV8

如果在上述的安装过程中出现了 permission denied 那么

sudo chmod 777 -R /usr/local #最后一个是文件夹,给他把读写执行的权限去掉

请谨慎使用!最后一个文件夹请一定不要写的很大,如憨憨的我写成了 sudo chmod 777 -R /,然后出现 sudo 都不能用的情况,只能重新刷机开启四周目。

三、使用 ip 摄像头连接并测试 detect.py

我这里使用华为的安卓手机,在浏览器上下载了 ip 摄像头(注:我是从小米应用商店里找到的)。最好连接 wifi,使用流量不知为何连不上。然后点击下方的 打开IP摄像头服务器 。然后把 RTSP 服务器 前面的勾打上。然后记住这一行的 rtsp 流地址,假如这一行是 RTSP:rtsp://10.5.99.99:8554/live ... ,那么在 yolov5-master 文件夹下运行(第一个 admin 是账户,第二个 admin 是密码)

python3 detect.py --source rtsp://admin:admin@10.5.99.99:8554/live

即可连接。详细的指令请去 github 上看 readme。

如果识别一张图片的速度 $ \ge 0.5 s$ ,那么很可能是使用 CPU 识别的。

如果识别一张图片的速度 $ \le 0.09 s$ ,那么是使用 GPU 识别的。

从刷机完成到测试 detect.py,在没有人跟我们抢网速的情况下,大约使用了 1 个小时多一点的时间就可以调好环境。加油!

NVIDIA Jetson AGX Xavier 从刷机之后到配置环境的更多相关文章

  1. Jetson AGX Xavier ROS下调用USB单目摄像头

    Jetson AGX Xavier安装的ROS是Melodic版本的,所以部署的时候用到的包都是Melodic的. 1. 查看USB摄像头 摄像头连接Xavier设备,调用命令查看. ls /dev/ ...

  2. google nexus5x 刷机抓包逆向环境配置(三)

    本文仅供学习交流使用,如侵立删! google nexus5x 刷机抓包逆向环境配置(三) 安装抓包证书(Fiddler.Charles) 操作环境 nexus5x kaliLinux win10 准 ...

  3. google nexus5x 刷机抓包逆向环境配置(一)

    本文仅供学习交流使用,如侵立删! google nexus5x 刷机抓包逆向环境配置(一) 操作环境 nexus5x kaliLinux win10 准备 官方工具包官方下载地址:https://dl ...

  4. Jetson AGX Xavier刷机

    1. 准备一台电脑做主机(host),运行Ubuntu系统,我用的是虚拟机,运行的是Ubuntu 18.04系统. 2. 主机更换apt-get源,参见https://www.cnblogs.com/ ...

  5. Jetson AGX Xavier安装TensorFlow

    参考https://docs.nvidia.com/deeplearning/frameworks/install-tf-jetson-platform/#prereqs 1. 安装系统包 sudo ...

  6. Jetson AGX Xavier更换apt-get源

    使用apt-get安装时,会很慢,更换了国内的源后,就可以解决这个问题了. 1. 备份sources.list文件 sudo cp /etc/apt/sources.list /etc/apt/sou ...

  7. Jetson AGX Xavier/Ubuntu更改pip3源

    pip3换源: 修改~/.pip/pip.conf,如果没有这个文件,就创建一个. 内容如下: [global]index-url = https://pypi.tuna.tsinghua.edu.c ...

  8. Jetson AGX Xavier/Ubuntu安装SSD

    参考 https://blog.csdn.net/xingdou520/article/details/84309155 1. 查看硬盘所有分区 sudo fdisk -lu 会找到/dev/nvme ...

  9. Jetson AGX Xavier/Ubuntu安装QT

    安装QT命令 sudo apt-get install qt5-default qtcreator -y 如果出现错误:unknow module webenginewidgets serialpor ...

  10. Jetson AGX Xavier/ubuntu查找文件

    用以下命令查找文件 sudo updatedb locate xxx #xxx是文件名 如果找不到命令,则需要安装mlocate sudo apt-get install mlocate

随机推荐

  1. WPF 加载诡异的字体无法布局

    如果在系统里面存在诡异的字体,同时自己的 WPF 中有一个控件尝试使用这个字体放在界面中,那么将会在界面布局过程炸了,整个控件或者整个界面布局都无法继续 本文本来是由吕水大大发布的,但是他没空写,于是 ...

  2. Git reset 的hard、soft、mixed参数对比

    目录 分区概念 1. --soft参数 2. --mixed参数 3. --hard参数 分区概念 先要清楚在本地,git会分三个区:工作区.暂存区.本地库. 当使用去做版本移动的时候,那么在使用[- ...

  3. 在Linux下想要删除一个目录需要怎样的权限

    场景一 在Home目录下创建一个目录dirtest,然后使用chmod 333 dirtest修改目录权限.这时候dirtest的权限为d-wx-wx-wx,如果执行rm -r dirtest可以进行 ...

  4. WEB服务与NGINX(18)- nginx rewrite功能详解

    目录 1. nginx的rewrite功能详解 1.1 rewrite功能概述 1.2 rewrite模块的常用指令 1.2.1 if指令 1.2.2 set指令 1.2.3 break指令 1.2. ...

  5. 仅1.0MB,开源压缩软件7-Zip

    首发微信公众号:SQL数据库运维 原文链接:https://mp.weixin.qq.com/s?__biz=MzI1NTQyNzg3MQ==&mid=2247485212&idx=1 ...

  6. 用poi-tl导出word报告-支持表格文字刷色、背景刷色、表格合并单元格

    官方教程地址:http://deepoove.com/poi-tl/ apache poi 入门示例教程:http://deepoove.com/poi-tl/apache-poi-guide.htm ...

  7. 谈谈 Spring 的过滤器和拦截器

    前言 我们在进行 Web 应用开发时,时常需要对请求进行拦截或处理,故 Spring 为我们提供了过滤器和拦截器来应对这种情况.那么两者之间有什么不同呢?本文将详细讲解两者的区别和对应的使用场景. ( ...

  8. Chrome 浏览器插件 V3 版本 Manifest.json 文件中 Action 的类型(Types)、方法(Methods)和事件(Events)的属性和参数解析

    一.类型(Types) 一.OpenPopupOptions 1. 属性 windowId: number 可选 打开操作弹出式窗口的窗口 ID.如果未指定,则默认为当前活动窗口. 二.TabDeta ...

  9. 使用 Amazon Cloud WAN 构建您的全球网络(内含免费套餐申请入口)

    前言 对 AWS 云技术感兴趣的朋友们,可以尝试申请免费套餐的 AWS 账户,提供了 100 余种可以使用免费套餐的 AWS 云服务. 国内区域账户:https://www.amazonaws.cn/ ...

  10. 记录一次对MQTT协议的渗透测试经历

    前言 由于工作需要,特意翻查了MQTT的相关漏洞,并一一学习复现,在此做以学习记录,没有恶意,如有抄袭,请私信作者删除. 技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站.服务器等 ...