当前位置: 首页 > news >正文

Jetson Xavier NX安装CUDA加速的OpenCV

我们使用SDKManager刷机完成后,使用jtop查看,发现OpenCV 是不带CUDA加速的,因此,我们需要安装CUDA加速的OpenCV,这样后续在使用的时候速度会快很多。
在这里插入图片描述

首先我们先卸载默认OpenCV

sudo apt purge libopencv* -y
sudo apt autoremove
sudo apt update
sudo apt upgrade

然后我们安装我们需要的一些依赖

Generic tools

sudo apt install build-essential cmake pkg-config unzip yasm git checkinstall 

Image I/O libs

sudo apt install libjpeg-dev libpng-dev libtiff-dev 

Video/Audio Libs - FFMPEG, GSTREAMER, x264 and so on

sudo apt install libavcodec-dev libavformat-dev libswscale-dev libavresample-dev
sudo apt install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
sudo apt install libxvidcore-dev x264 libx264-dev libfaac-dev libmp3lame-dev libtheora-dev 
sudo apt install libfaac-dev libmp3lame-dev libvorbis-dev

OpenCore - Adaptive Multi Rate Narrow Band(AMRNB) and Wide Band(AMRWB) speech codec

sudo apt install libopencore-amrnb-dev libopencore-amrwb-dev

Cameras programming interface libs

sudo apt-get install libdc1394-22 libdc1394-22-dev libxine2-dev libv4l-dev v4l-utils
cd /usr/include/linux
sudo ln -s -f ../libv4l1-videodev.h videodev.h
cd ~

GTK lib for the graphical user functionalites coming from OpenCV highghui module

sudo apt-get install libgtk-3-dev

Python libraries for python3

sudo apt-get install python3-dev python3-pip
sudo -H pip3 install -U pip numpy
sudo apt install python3-testresources

Parallelism library C++ for CPU

sudo apt-get install libtbb-dev

Optimization libraries for OpenCV

sudo apt-get install libatlas-base-dev gfortran

Optional libraries

sudo apt-get install libprotobuf-dev protobuf-compiler
sudo apt-get install libgoogle-glog-dev libgflags-dev
sudo apt-get install libgphoto2-dev libeigen3-dev libhdf5-dev doxygen

接着我们下载OpenCV并解压

cd ~/Downloads  #Cuda11需要较新版本的OpenCV
wget -O opencv.zip https://github.com/opencv/opencv/archive/refs/tags/4.5.4.zip
wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/refs/tags/4.5.4.zip
unzip opencv.zip
unzip opencv_contrib.zip

接着进行Cmake一下

cd opencv-4.5.4/
mkdir build && cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local \
-D BUILD_opencv_python2=1 -D BUILD_opencv_python3=1 -D WITH_FFMPEG=1 \
-D CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-11.4 \  #修改为自己的cuda路径
-D WITH_TBB=ON -D ENABLE_FAST_MATH=1 -D CUDA_FAST_MATH=1 -D WITH_CUBLAS=1 \
-D WITH_CUDA=ON -D BUILD_opencv_cudacodec=OFF -D WITH_CUDNN=ON \
-D OPENCV_DNN_CUDA=ON \
-D CUDA_ARCH_BIN=8.7 \
-D WITH_V4L=ON -D WITH_QT=OFF -D WITH_OPENGL=ON -D WITH_GSTREAMER=ON \
-D OPENCV_GENERATE_PKGCONFIG=ON -D OPENCV_PC_FILE_NAME=opencv.pc \
-D OPENCV_ENABLE_NONFREE=ON \
	#修改为自己的opencv_contrib下载路径
-D OPENCV_EXTRA_MODULES_PATH=/home/jetson/Downloads/opencv_contrib-4.5.4/modules \ 
-D INSTALL_PYTHON_EXAMPLES=OFF -D INSTALL_C_EXAMPLES=OFF -D BUILD_EXAMPLES=OFF ..

接着我们开始编译

nproc  #查看设备核心数
make -j$(nproc) #-j4编译时间约为 1~3 小时
sudo make install #安装

请添加图片描述

编译完成不报错即代表编译完成

在这里插入图片描述

安装完成不报错即代表安装完成

查看

最后,使用jtop 查看是否安装完成
在这里插入图片描述
完结撒花!

相关文章:

  • Java LeetCode 热题 100 回顾33
  • 硬件基础(4):(6)高精度ADC设计中模拟地与数字地的划分与连接
  • Xilinx ZYNQ FSBL解读:LoadBootImage()
  • 使用苹果M芯片打包Docker Image无法在amd64环境下运行
  • MyBatis Plus 在 Java 项目中的高效使用
  • 【图片批量转换合并PDF】多个文件夹的图片以文件夹为单位批量合并成一个PDF,基于wpf的实现方案
  • 【js逆向】CN man basketball player data
  • 智慧照明奇点已至,塔能科技如何开启升维之战
  • CPU 负载 和 CPU利用率 的区别
  • 结构参数相关性分析
  • 接口自动化入门 —— Http的请求头,请求体,响应码解析!
  • Manus联创澄清:我们并未使用MCP技术
  • 领域驱动设计(DDD)与MVC架构:理念对比与架构选择
  • matlab慕课学习3.2+3.3
  • 【学习方法】技术开发者的提问智慧:如何高效获得解答?
  • Web组态软件功能与应用介绍
  • 复试难度,西电卓越工程师学院(杭研院)考研录取情况
  • Spring MVC中的Controller加载控制与Bean加载控制详解
  • 日夜间模式切换
  • 批量删除多个 Excel 文件中的宏
  • 如何建立公司网站招标/seo名词解释
  • 专门做网站的公司/广西南宁做网站的公司
  • 网站源码使用/上海网站推广排名公司
  • css div网站/加速游戏流畅的软件
  • 北京医疗网站建设/免费建站的网站哪个好
  • 每日新闻简报今天/什么是seo如何进行seo