您现在的位置是:首页 >技术杂谈 >jetson orin nx模组刷机及环境配置(二)网站首页技术杂谈

jetson orin nx模组刷机及环境配置(二)

Facias 2023-05-22 00:00:03
简介jetson orin nx模组刷机及环境配置(二)

jetson orin nx安装pytorch、opencv

前言

前篇文章把系统和一些环境配好了,接下来可以根据自己的需求配置一些其他的包。由于项目需要,本人配了pytorch,opencv with cuda,在此继续记录一下。

1.pytorch

由于开发板是aarch64架构,如果直接用pytorch官网上的命令的话,会出现包找不到的错误,如果直接pip install torch的话倒是可以安装成功,只不过是cpu的版本。本人在此处踩了很多坑,最后还是按照nvidia官网的步骤配好了。

首先先下载一下Anaconda3吧,这个很简单。或者可以下载Archiconda3。接着创建一个conda环境,装好python(我的是3.8)。

我是按照nvidia官方的指示安装的,非常简单:

1.首先安装一些依赖:

sudo apt-get -y update; 
sudo apt-get -y install autoconf bc build-essential g++-8 gcc-8 clang-8 lld-8 gettext-base gfortran-8 iputils-ping libbz2-dev libc++-dev libcgal-dev libffi-dev libfreetype6-dev libhdf5-dev libjpeg-dev liblzma-dev libncurses5-dev libncursesw5-dev libpng-dev libreadline-dev libssl-dev libsqlite3-dev libxml2-dev libxslt-dev locales moreutils openssl python-openssl rsync scons python3-pip libopenblas-dev;

2.接着导入命令:

export TORCH_INSTALL=https://developer.download.nvidia.cn/compute/redist/jp/v51/pytorch/torch-1.14.0a0+44dac51c.nv23.02-cp38-cp38-linux_aarch64.whl

可以安装指定版本:

https://developer.download.nvidia.com/compute/redist/jp/v$JP_VERSION/pytorch/$PYT_VERSION

3.安装pytorch:

python3 -m pip install --upgrade pip; python3 -m pip install aiohttp numpy=='1.19.4' scipy=='1.5.3' export "LD_LIBRARY_PATH=/usr/lib/llvm-8/lib:$LD_LIBRARY_PATH"; python3 -m pip install --upgrade protobuf; python3 -m pip install --no-cache $TORCH_INSTALL

大功告成,这样安装的pytorch是可以使用gpu的。

2.tensorrt

这里其实二次刷机的时候是安装好的,但是需要有个注意的地方:

conda下import tensorrt是会报错的,conda环境下的python是打不开tensorrt的!!!

我是把anaconda从环境变量中去除才看到tensorrt的,另外在终端输入python是python2,也打不开,要输入python3:

3.opencv with cuda

二次刷机后的opencv是没有cuda的版本,要先给卸载了:

sudo apt purge libopencv-dev libopencv-python libopencv-samples libopencv*

接着安装一些依赖:

sudo apt install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev 
python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libdc1394-22-dev python3-pip python3-numpy

从源码进行安装:

VERSION=4.4.0 #可更换版本
git clone https://github.com/opencv/opencv.git -b $VERSION --depth 1

进入安装目录进行编译:

cd opencv
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE 
-D CMAKE_INSTALL_PREFIX=/usr/local 
-D OPENCV_GENERATE_PKGCONFIG=ON 
-D BUILD_EXAMPLES=OFF 
-D INSTALL_PYTHON_EXAMPLES=OFF 
-D INSTALL_C_EXAMPLES=OFF 
-D PYTHON_EXECUTABLE=$(which python2) 
-D BUILD_opencv_python2=OFF 
-D PYTHON3_EXECUTABLE=$(which python3) 
-D PYTHON3_INCLUDE_DIR=$(python3 -c "from distutils.sysconfig import get_python_inc; print(get_python_inc())") 
-D PYTHON3_PACKAGES_PATH=$(python3 -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())") 
-D WITH_CUDA=ON 
 ..

不出意外的话应该会出意外,报错:CUDA: OpenCV requires enabled ‘cudev‘ module from ‘opencv_contrib‘

解决方法为,先安装opencv_contrib:

VERSION=4.4.0
git clone https://github.com/opencv/opencv_contrib.git -b $VERSION --depth 1

安装好后进入该文件夹,将opencv_contrib中的modules中的cudev文件夹复制到opencv/modules里。然后再按上述命令进行编译,应该就没问题了。

编译好后:

make -j8

要等一段时间,再:

sudo make install
sudo ldconfig

大功告成,jtop命令可以看到(我下载的4.7.0版本):

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。