使用SD卡安装即可。
sudo apt-get update
sudo apt-get install python3-pip
sudo vim ~/.bashrc
# 在最后面添加
export PATH=/etc/local/cuda-11/bin:$PAHT
export LD_LIBRARY_PATH=/etc/local/cuda-11/lib64:$LD_LIBRARY_PATH
#添加完成后,使用如下指令让其生效
source ~/.bashrc
#使用nvcc 查看是否添加成功
nvcc -V
# 使用鱼香肉丝 fishros.com 提供的方式进行安装
wget http://fishros.com/install -O fishros && . fishros
当前 jetpack 使用ubuntu系统为20.04,安装版本为rolling。
# 使用如下指令卸载ROS2,humble需换成自己的ROS2版本号
sudo apt remove ~nros-humble-* && sudo apt autoremove
6.1 安装环境依赖
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install python3-pip libopenblas-base libopenmpi-dev
pip3 install Cython
6.2 安装pytorch、torchvision
从上述链接中下载需要(与安装的Jetpack及cuda对应的版本)。
参考[Installation]模块进行安装
sudo apt-get install python3-pip libopenblas-base libopenmpi-dev libomp-dev
pip3 install Cython<3
# 安装自己下载的版本
pip3 install numpy torch-2.1.0a0+41361538.nv23.06-cp38-cp38-linux_aarch64.whl
$ sudo apt-get install libjpeg-dev zlib1g-dev libpython3-dev libopenblas-dev libavcodec-dev libavformat-dev libswscale-dev
# see below for version of torchvision to download
# 这里以安装的2.1为例,<version>为torchvision v0.16.1
$ git clone --branch v0.16.1 https://github.com/pytorch/vision torchvision
$ cd torchvision
$ export BUILD_VERSION=0.16.1 # where 0.x.0 is the torchvision version
$ python3 setup.py install --user
$ cd ../ # attempting to load torchvision from build dir will result in import error
$ pip install 'pillow<7' # always needed for Python 2.7, not needed torchvision v0.5.0+ with Python 3.6
import torch
import torchvision
print(torch.__version__)
print('CUDA available: ' + str(torch.cuda.is_available()))
print('cuDNN version: ' + str(torch.backends.cudnn.version()))
a = torch.cuda.FloatTensor(2).zero_()
print('Tensor a = ' + str(a))
b = torch.randn(2).cuda()
print('Tensor b = ' + str(b))
c = a + b
print('Tensor c = ' + str(c))
print(torchvision.__version__)
sudo jtop
# 按INFO对应的数字,能够查看环境信息
8.1 准备工作
# 确认gcc版本,版本为9.4.0,版本在8.x或9.x以上都没问题
gcc --version
8.2 安装CMake
此处安装版本为3.26.5,可以在Cmake官网下载,也可以点此链接下载CMake-3.26.5。
# 在.bashrc文件进行配置,在其末尾添加如下内容
export PATH=/home/liuqiang/cmake-3.8.2-Linux-86_64/bin:$PATH
source ~/.bashrc
cmake --version
8.3 卸载JetPack自带的OpenCV(这个版本不支持CUDA)
sudo apt-get purge libopencv*
8.4 安装、编译
在GitHub下载OpenCV以及OpenCV_contrib源码(两者版本要对应)
OpenCV:Releases-OpenCV
OpenCV_contrib:OpenCV_contrib
# 解压openCV
tar xzvf opencv-4.8.1.tar.gz
# 解压opencv_contrib-4.8.1,并将其移动至opencv-4.8.1,修改文件夹名称为opencv_contrib
tar xzvf opencv_contrib-4.8.1.tar
mv opencv_contrib-4.8.1 ./opencv-4.8.1/opencv_contrib
# 进入OpenCV
cd opencv-4.8.1
# 新建Build文件夹
mkdir build
# 安装依赖项,可根据需要自行增减
sudo apt-get install libgtk2.0-dev pkg-config libpng-dev libjpeg-dev libtiff-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev gstreamer1.0-plugins-base python3-dev python3-numpy python3-py
# 使用如下命令进行编译
#在build文件夹下执行
cd bulid
sudo cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local/ -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib/modules -D BUILD_opencv_legacy=ON -D BUILD_opencv_python3=ON -D BUILD_opencv_python2=OFF -D ENABLE_PRECOMPILED_HEADERS=OFF -D CUDA_ARCH_BIN='7.2' -D WITH_CUDA=1 -D WITH_V4L=ON -D WITH_QT=ON -D WITH_OPENGL=ON -D CUDA_FAST_MATH=1 -D WITH_CUBLAS=1 -D OPENCV_GENERATE_PKGCONFIG=1 -D WITH_GTK_2_X=ON ..
# 待cmake成功后
sudo make -j6 #-j6的前提是NX需配置成6核心
# 若make失败,根据提示问题进行修改,并 sudo make clean后再次进行make
# 待make成功后,打包安装opencv
sudo make install
# 若 import cv2 出现找不到cv2的情况(可能原因是在编译cv2时指定了python版本),可使用以下方式解决。(默认python版本是python3.8)
#在.so文件所在文件夹中执行
cd ./opencv-4.8.1/bulid/lib/python3/
sudo cp cv2.cpython-38-aarch64-linux-gnu.so /usr/local/lib/python3.8/
#进入目标文件夹
cd /usr/local/lib/python3.8/
#将.so文件重命名为cv2.so
sudo mv cv2.cpython-38-aarch64-linux-gnu.so cv2.so
OpenCV参考博客在Jetson Xavier NX上安装编译OpenCV完整流程+踩坑记录
lib/python3.8/
#将.so文件重命名为cv2.so
sudo mv cv2.cpython-38-aarch64-linux-gnu.so cv2.so
> OpenCV参考博客[在Jetson Xavier NX上安装编译OpenCV完整流程+踩坑记录](https://blog.csdn.net/Notabey/article/details/134286738)