重要的下载资源链接放在前面:
jetpack4.5资源
主要内容记录在了自己的石墨文档里,自己习惯性地修改起来比较快,可能后续小修小改在那边更新。这里就做一个csdn的拷贝造福各位。
https://shimo.im/docs/R13j8xWzZ5h4NVk5/《xavier配置环境流程记录》
目录
重要:
流程:
亮机:
硬盘挂载(非必需):
apt换源:
语言环境:
安装nomachine:
安装jtop:
安装cuda/cudnn/tensorrt:
安装archiconda:
安装numpy/cv2/matplotlib库:
安装torch/torchvision:
pycuda:
tensorrt和yolov5的模型转换(onnx):
最终效果:
参考文章:
连网线、电源线。显示屏通过hdmi线连接(双typec线无法显示)。鼠标键盘的usb接口通过自带的typec-usb拓展槽连接。
除了大块的xavier本体,小块的是摄像机配件。找本体和摄像机配件的相应圆圈和槽可以确定位置,然后装上。
按电源键即可点亮。
这部分不是我操作的,给个参考链接吧
NVIDIA Xavier AGX固态硬盘的安装以及/home的扩展挂载_啊哈ㄚ的博客-CSDN博客
xavier自带系统为ubuntu18,源中相应代号为bionic(例,ubuntu 20代号为focal)
通常情况清华源效果最好。
换源方法ubuntu通用,网上找,不赘述。
内容:
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main restricted universe multiverse
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main universe restricted
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main universe restricted
修改之后,sudo apt update进行名单更新(可以upgrade一次,但不必要)
推荐关掉自动upgrade,否则每次开机都会尝试软件更新(unattend upgrade),耗费时间【通过图形界面的“软件与更新”,设置相应更新选项/或者参考中级篇——ubuntu系统关闭unattended upgrades无人值守更新功能_玩转智能机器人的博客-CSDN博客_unattended upgrade,进入终端,sudo dpkg-reconfigure unattended-upgrades,选择 否-keep*****,然后reboot重启】
pip/pip3同样换清华源,网上自行搜寻。
点击图形界面中的语言支持,将菜单和窗口的语言设置为中文。设置完毕后,默认文件夹名称为中文,如“下载”代替“download”,终端操作不方便,推荐按照Ubuntu更改主目录文件名为英文 - 知乎进行修改。
默认输入法只有纯英文,在图形界面中寻找语言支持界面并修改(由于我的亮机途中重装了图形界面,和原始界面用的可能不是同一个,不一定有参考价值。我是在图形页面的输入法页面直接安装了pinyin输入法使用,网上看到的大多数是安装谷歌拼音输入法)
直接前往nomachine官网,选择download for arm。下载之后,进入终端,找到文件所在位置,sudo dpkg -i nomachine_[version]_arm64.deb进行安装。
安装成功之后,xavier本体的键鼠就可以不再使用了,通过远程操作即可(远程机也需要同样安装nomachine)。
nomachine操作和直接操作仍然有部分区别,如ctrl+alt+t不能唤出新终端,会进入nomachine自己的界面,但总体来说够用。
终端输入jtop,看是否安装。
无,则使用pip安装:sudo pip install jetson-stats【如无法安装,应该是系统只带了python2,先apt install python3.6,然后pip改pip3】
安装之后,输入jtop进入界面,选择左下方5号ctrl页面,将boot选项调为e(enable),将jetson_clocks调整为running,控制开机后风扇启动
注:jetson_clocks为强制性能最大化选项,会提高耗电,不过装机过程没必要省电。
在jetson页面中选择左下方6号info界面,查看cuda与cudnn、tensortrt是否安装,有则跳过下一步。
官方方法是通过Jetson 下载中心 | NVIDIA Developer下载sdkmanager,装在一台ubuntu机上,然后连接ubuntu机与xavier,使用sdkmanager下载相应文件。实际操作中又要装win-ubuntu虚拟机,装完了usb-typec线连接xavier和机子还没识别出来。
网上的一种错误方法是apt-get install cuda-toolkit,实际上无论哪一个apt源都会显示此软件包不存在
实际解决方法是直接去网上找百度网盘里别人从adkmanager下载好的资源(找到的是jetpack4.5的,实际机子是jetpack4.6的,但是可以用)(已保存到自己的百度云账号链接:百度网盘 请输入提取码,此外也上传了torch和torchvision的两个whl文件,是python3.6的)参考xavier nx 安裝cuda, cudnn, tensorrt, opencv, 中文輸入法 - wangaolin - 博客园,选择文件下载(cuda一个,cudnn三个,tensortrt一个)、远程传输至xavier、进行安装、移动和添加path。
然后回到jtop查看info页面,检查是否安装并检测到。
去github搜索archiconda,选择Archiconda3-0.2.3-Linux-aarch64.sh下载,远程传输到xavier,然后sh Archiconda3-0.2.3-Linux-aarch64.sh安装(后续可以把这个文件删掉)(安装时好像会修改~/.bashrc文件,可以在普通用户和root用户下都跑一次,保险起见)。
创建conda环境:
conda create -n six python==3.6【先apt装python3.6,3.7、3.8的应该也可以,不推荐3.9往上】
首次激活conda时,如conda activate six失败,使用source activate six【应该是路径没有设置进去,需要重启或者source指令,或者先source ~/.bashrc】
后续所有文件在conda环境下安装,不影响原有环境。
conda不需要换源。【尝试换清华源时反而影响使用。conda-forge可以考虑】
(更新)conda实在链接不上还原,选择北外源成功
conda config --add channels Index of /anaconda/pkgs/free/ | 北京外国语大学开源软件镜像站 | BFSU Open Source Mirror
conda config --add channels Index of /anaconda/pkgs/main/ | 北京外国语大学开源软件镜像站 | BFSU Open Source Mirror
conda config --add channels Error
conda config --add channels Index of /anaconda/cloud/msys2/ | 北京外国语大学开源软件镜像站 | BFSU Open Source Mirror
conda config --set show_channel_urls yes
conda config --add channels Index of /anaconda/cloud/pytorch/ | 北京外国语大学开源软件镜像站 | BFSU Open Source Mirror
另外在channels下面加一个remote_read_timeout_secs: 2000能加长超时时间,注意taml格式
正常pip install opencv_python(或者下一步安装torch/torchvision中,使用参考2中指令,也有),然后
gedit ~/.bashrc
底部加入如下语句:export OPENBLAS_CORETYPE=ARMV8
点击保存
source ~/.bashrc
之后测试import numpy(不加这一句,会在import numpy时出现非法指令,核心已转储语句)
matplotlib(3.3.4)可能跳一堆红字,要求你下载Download The FreeType Project from SourceForge.net,照做就是,然后在/home/new/archiconda3/envs/six下面建一个build文件夹,把freetype解压进去,再重新运行一次
参考1:Installing PyTorch for Jetson Platform :: NVIDIA Deep Learning Frameworks Documentation【nvidia官方,但是使用torch==1.12.0,在cpu版torch==1.12.0测试yolov5时出现了兼容问题,不如参考2中选择多样】
参考2:xavier安装torch-gpu_这个名字真好听的博客-CSDN博客_安装torch-gpu【其中的文件可以靠自己的机子下载,也可以在xavier上下载(修改参考1中export TORCH_INSTALL为新的下载网址)】
参考3:Jetson AGX Xavier安装torch、torchvision且成功运行yolov5算法_围白的尾巴的博客-CSDN博客_jetson xavier安装torchvision【详细,torch==1.7.1】
torchvision建议直接去github下载,pytorch/vision库,使用git clone太慢了
在进行torchvision编译时可能遇到报错Command '['which', 'x86_64-conda_cos6-linux-gnu-c++']' returned non-zero exit status 1,解决方法是:conda install gxx_linux-64
pip 安装
大片红字报错xlocale.h不存在
参考在jetson上安装pycuda时可能遇见的报错及解决方案 - 知乎 (zhihu.com)
把pycuda降级到2019.1.2使用
tensorrt相应文件也在百度网盘链接里(见安装cuda/cudnn那一块儿),在直接装那个名字以tensorrt开头的deb包之前还需要装依赖,一起下下来然后dkpg安装就行。文件和安装顺序参考NX边缘盒环境安装 - 知乎 (zhihu.com)
使用yolov5自带的模型转换需要装onnx作为tensorrt模型转换的中介,直接装onnx的时候可能红字报错,这个时候尝试
sudo apt-get install libprotobuf-dev protobuf-compiler
pip install pybind11
根据onnx官方建议,从源码编译protobuf吧onnx/onnx:机器学习互操作性的开放标准 (github.com),也可以apt安装protobuf,但是怎么加cmake参数我不会使用
装完onnx【onnx-simplifier没装,有个metadata名称对不上的问题,后面看可能也不是必要的】直接跑yolov5的export,会提示ONNX: export failure: cannot import name 'builder'。这个时候参考python - 导入错误:无法从“google.protobuf.internal”导入名称“生成器” - 堆栈溢出 (stackoverflow.com)
sudo find ~/environment -name builder.py找出builder文件在哪里【我的在/home/new/environment/protobuf-21.9/python/google/protobuf/internal/builder.py】,搬到/home/new/archiconda3/envs/six/lib/python3.6/site-packages/google/protobuf【和参考文章不同的是,这里是conda six环境下面的lib】,然后在跑export就没问题了!
export.py转换yolov5s.pt
cpu跑yolov5s.pt
gpu跑yolov5s.pt
gpu跑yolov5s.engine【tensorrt加速】
胎儿式保姆级教程:Jetson Xavier NX镜像烧录、开机配置、中文配置、风扇设置、远程桌面配置、文件传输配置、pycharm安装环境配置、QQ安装:胎儿式保姆级教程:Jetson Xavier NX镜像烧录、开机配置、中文配置、风扇设置、远程桌面、文件传输配置、pycharm安装环境配置,QQ,opencv(cuda编译),torch(GPU)._Wanto-Fly的博客-CSDN博客
xavier安装torch-gpu:xavier安装torch-gpu_这个名字真好听的博客-CSDN博客_安装torch-gpu
Jetson AGX Xavier系列:https://blog.csdn.net/qq_40691868/category_11366043.html
Jetson AGX Xavier刷机+安装opencv+使用TensorRT加速推理yolo全过程+心路历程:Jetson AGX Xavier刷机+安装opencv+使用TensorRT加速推理yolo全过程+心路历程_SoulGuide的博客-CSDN博客_xavier 推理