Jetson Nano重装支持cuda和aruco库的opencv-4.1.1和opencv

Jetson Nano重装支持cuda和aruco库的opencv-4.1.1和opencv

码农世界 2024-05-23 前端 70 次浏览 0个评论

前言

在宇树四足机器狗开发过程中,可能会碰到无法调用aruco库实现二维码检测,这是因为没有安装opencv_contrib库,安装opencv_contrib库需要卸载现有的opencv,然后重新安装,本文就是记录这个过程,亲测有效。

测试环境:python3.6、jetpack4.5、opencv4.1.1

注意:jetson nano如果用了emmc作为系统盘的话,存储容量不能支撑完整个编译过程,需要在大于16g系统盘上编译安装(选择大容量ssd、sd卡等作为系统盘)

安装前需要先下载相关安装文件

链接:https://pan.baidu.com/s/1qjeADETquLnBruEFm0r5og?pwd=1n9z 
提取码:1n9z 

一、卸载系统中老版本opencv

打开终端逐行执行以下代码

sudo apt-get purge libopencv*
sudo apt autoremove
sudo apt-get update

二、安装依赖项

打开终端逐行执行以下代码

sudo apt-get install build-essential
sudo apt-get install libglew-dev libtiff5-dev zlib1g-dev libjpeg-dev libavcodec-dev libavformat-dev libavutil-dev libpostproc-dev libswscale-dev libeigen3-dev libtbb-dev libgtk2.0-dev pkg-config libpng-dev
sudo apt-get install libatlas-base-dev gfortran
sudo apt update

三、编译安装

把百度网盘中下载的opencv4文件夹放到Jetson Nano的home目录下,然后打开终端执行以下命令

cd opencv4/opencv-4.1.1
mkdir build
cd build
cmake \

cmake \后会跳出让你输入指令,复制以下内容过去

-DCMAKE_BUILD_TYPE=Release \
-DBUILD_PNG=ON \
-DBUILD_TIFF=ON \
-DBUILD_TBB=ON \
-DBUILD_JPEG=ON \
-DBUILD_JASPER=OFF \
-DBUILD_ZLIB=OFF \
-DBUILD_EXAMPLES=OFF \
-DBUILD_opencv_java=OFF \
-DBUILD_opencv_python2=ON \
-DBUILD_opencv_python3=ON \
-DENABLE_PRECOMPILED_HEADERS=OFF \
-DWITH_OPENCL=ON \
-DWITH_OPENMP=ON \
-DWITH_FFMPEG=ON \
-DWITH_GSTREAMER=ON \
-DWITH_GSTREAMER_0_10=ON \
-DWITH_CUDA=ON \
-DWITH_GTK=ON \
-DWITH_VTK=ON \
-DWITH_TBB=ON \
-DWITH_1394=OFF \
-DWITH_OPENEXR=OFF \
-DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-10.2 \
-DCUDA_ARCH_BIN=5.3 \
-DCUDA_ARCH_PTX="" \
-DINSTALL_C_EXAMPLES=ON \
-DOPENCV_ENABLE_NONFREE=ON \
-DINSTALL_TESTS=OFF \
-DOPENCV_EXTRA_MODULES_PATH=/home/此位置根据实际情况填写/opencv4/opencv_contrib-4.1.1/modules \
..

注意以下几个参数

#(1)DOPENCV_EXTRA_MODULES_PATH要改成opencv_contrib-4.1.1的对应地址
#(2)DCUDA_ARCH_BIN要改成对应数值,查看方法如下:
cd /usr/local/cuda/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery

参数复制过去后回车开始执行cmake

都结束后进行 make,然后等待(事先调整 CPU 性能模式打开尽量多的核心)

执行以下指令

sudo make -j4 #卡100%可能是内存爆了,改j1试一试,编译遇见卡不动就重启,重新编译

结束后

sudo make install

四、测试

逐行输入以下指令

python3
import cv2
cv2.__version__
import cv2
import cv2.aruco as aruco
print("Aruco module is available")

总结

以上就是基于Jetson Nano的opencv-4.1.1和opencv_contrib-4.1.1版本的编译安装。

转载请注明来自码农世界,本文标题:《Jetson Nano重装支持cuda和aruco库的opencv-4.1.1和opencv》

百度分享代码,如果开启HTTPS请参考李洋个人博客
每一天,每一秒,你所做的决定都会改变你的人生!

发表评论

快捷回复:

评论列表 (暂无评论,70人围观)参与讨论

还没有评论,来说两句吧...

Top