jetson nano默认:
Python 3.6.9
Opencv-python 4.1.1
一、配置CUDA环境变量
jetson nano默认已经安装了CUDA10.0,但是直接运行 nvcc -V是不会成功的,需要你把CUDA的路径写入环境变量中。
添加环境变量:
1、查看本机下cuda版本是10.2
root@innocent-nvdia:/home/innocent# ls /usr/local/cuda-10
cuda-10/ cuda-10.2/
2、添加临时环境变量
export PATH=$PATH:/usr/local/cuda-10.2/bin
echo $PATH
可以查看已添加成功;
2、添加永久环境变量
输入指令,编辑~/.bashrc文件,增加export PATH=$PATH:/usr/local/cuda-10.2/bin
语句。
vi ~/.bashrc
root@innocent-nvdia:/home/innocent# nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2021 NVIDIA Corporation
Built on Sun_Feb_28_22:34:44_PST_2021
Cuda compilation tools, release 10.2, V10.2.300
Build cuda_10.2_r440.TC440_70.29663091_0
二、搭建pytorch环境
1、输入python,按tab查看已安装的python版本(准备使用python3.6)
root@innocent-nvdia:/home/innocent# pyt
pytest python2 python2.7-config python3 python3.6m python-config
python python2.7 python2-config python3.6 python3m
2、安装pip
sudo apt-get install python3-pip
升级pip保证是最新版的:
pip3 install --upgrade pip
通过以下命令来判断是否已安装成功
pip3 --version # Python3.x 版本命令
//网上有如下安装方式,是通过脚本安装的:
https://www.runoob.com/w3cnote/python-pip-install-usage.html
sudo apt-get install -y python3-dev python3-testresources python3-setuptools
wget https://bootstrap.pypa.io/get-pip.py
sudo python3 get-pip.py
rm get-pip.py
3、更换pip源:
#临时改源为清华的源
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
#持久的设为默认源
pip install pip -U
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
#如果您到 pip 默认源的网络连接较差,临时使用镜像站来升级 pip
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U
因为是python3,所以要用pip3指令
4、安装Jetson Nano小工具jtop
老样子,需要使用pip3
pip3 install jetson-stats
使用左右按键或者鼠标,选择到5 ctrl还能控制风扇。
正好我也买了风扇,直接装上去是不转的,本来查的需要指令手动控制风扇占空比。貌似JTOP里的system能自动调整?有待用的时候再看。
直接输入指令修改风扇占空比:
echo 255 > /sys/devices/pwm-fan/target_pwm
或直接在JTOP界面下,选择5 ctrl,m为减,p为增加占空比,可以调整风扇转速。
5、安装pytorch
5.1 确认版本
Pytorch 和 JetPack需版本对应,jetpack在jetson nano安装镜像系统的时候已经在img里包含安装了
//网上说输入以下指令查看,结果还是没找到对应关系要怎么看。
cat /etc/nv_tegra_release
直接使用jtop,选择6 INFO,可以看到我的Jetpack是4.6【L4T 32.6.1】版本。JTOP真是好用,建议安装!
NVDIA官网中可以看到,这个jetpack版本可以安装pytorch 1.10.0,在官网上也可以直接下载whl文件(下载一直失败):
https://forums.developer.nvidia.com/t/pytorch-for-jetson-version-1-10-now-available/72048
5.2 下载pytorch
最后在网上找到了个torch-1.4.0-cp36-cp36m-linux_aarch64,传到nano里,然后pip3 install torch-1.4.0-cp36-cp36m-linux_aarch64
但是貌似import torch错误,好像不支持cuda版本,查了发现我需要安装pytorch1.5以上的。。。。
然后终于找到有大佬提供了不需要积分的Jetson Nano上pytorch 1.6.0 wheel安装包下载,感谢无私分享!!!!!
https://blog.csdn.net/lclfans1983/article/details/108239724
然后下载whl文件,传到nano。
直接运行 sudo pip3 install torch-1.6.0a0+b31f58d-cp36-cp36m-linux_aarch64.whl
进行安装
这里自动将之前安装的torch1.4.0卸载后,安装1.6.0成功。
查看已经安装的torch信息pip3 show torch
看网上提示还安装了如下,顺手也安装了= =
sudo apt-get install libopenblas-base libopenmpi-dev python3-pip
pip3 install Cython
5.3 下载并安装torchvison(因为安装的是pytorch1.6.0,对应安装torchvision 0.7.0)(torchvision 是PyTorch中专门用来处理图像的库)
参考https://elinux.org/Jetson_Zoo#PyTorch_.28Caffe2.29
sudo apt-get install libjpeg-dev zlib1g-dev
git clone --branch v0.7.0 https://gitee.com/zero-one-game/vision torchvision
cd torchvision
sudo python3 setup.py install
python3 setup.py install 时候失败了= =,还不知道啥原因。,。。。。
查网上说由于ffmpeg版本导致的问题;
还查到一种方法,是在编译之前,对setup.py文件进行一些修改,把if has_ffmpeg注释掉,改为if false
…注意python的语法,太恶心了。。。要tab对其= =,貌似主始啥的都要对齐。。。。
然后再次执行sudo python3 setup.py install,就能编译通过安装成功了。
5.4 完成后进入python3中import torch和import torchvision这两个能否引用。
python3
import torch
torch.__version__
python3
import torchvision
torchvision.__version__
6、vscode+远程SSH
朋友推荐的vscode,能通过SSH远程对JETSON nano进行开发。
在PC上安装VSCODE软件,下载remote ssh。
在vscode左侧选择“远程资源管理器”,add new,填写ssh 用户名@ip地址,中间提示安装了个什么插件,没仔细看,然后就连接上了。
这时候VSCODE显示的就是jetson nano中的文件了,选择其中一个文件夹作为工程文件夹即可。这样就能实现在PC端,通过VSCODE像本地开发一样开发nano中的代码了。
(待以后再学习时继续记录。)