Jetson Orin NX 开发指南(5): 安装 OpenCV 4.6.0 并配置 CUDA 以支持 GPU 加速

这篇具有很好参考价值的文章主要介绍了Jetson Orin NX 开发指南(5): 安装 OpenCV 4.6.0 并配置 CUDA 以支持 GPU 加速。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、前言

Jetson 系列的开发板 CPU 性能不是很强,往往需要采用 GPU 加速的方式处理图像数据,因此本文主要介绍如何安装带有 GPU 加速的 OpenCV,其中 GPU 加速通过 CUDA 来实现。

参考博客

Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0-CSDN博客Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679Ubuntu 20.04 配置 VINS-Fusion-gpu + OpenCV 4.6.0https://blog.csdn.net/qq_44998513/article/details/131462679

二、安装 OpenCV 4.6.0

下载 opencv 源码,选择所需要的版本 opencv 4.6.0,相应的扩展 opencv_contrib 4.6.0,以及用于桥接 ROS 和 opencv 的 cv_bridge

Release OpenCV 4.6.0 · opencv/opencv · GitHub

Release 4.6.0 · opencv/opencv_contrib · GitHub

GitHub - ros-perception/vision_opencv at noetic

这里将 opencv 4.6.0 以及相应的扩展 opencv_contrib 4.6.0 下载到 ~/Documents 目录下,编译前现确定 opencv 的安装路径,我的安装路径是

CMAKE_INSTALL_PREFIX=/usr/local/

确定 Jetson Orin NX 的算力为 8.7,这个后面要用,参考

CUDA GPUs - Compute Capability | NVIDIA Developer

jetson 配置opencv cuda,Jetson Orin NX,OpenCV,CUDA,Jetson

安装cuda 可以参考上一期文章

Jetson Orin NX 开发指南(4): 安装 cuda 和 realsense_想要个小姑娘的博客-CSDN博客

如果需要安装其他版本的 cuda 与算力的匹配情况可以参考

支持CUDA运算的显卡算力表_cuda算力排行_听风三千里的博客-CSDN博客

https://en.wikipedia.org/wiki/CUDA#GPUs_supported

接下来,进入 opencv 4.6.0 文件夹

cd ~/Documents/opencv-4.6.0/
mkdir build && cd build

预编译 opencv 4.6.0 及其扩展模块 opencv_contrib-4.6.0,生成 Makefiles 文件

cmake -D CMAKE_BUILD_TYPE=RELEASE \
        -D CMAKE_INSTALL_PREFIX=/usr/local/ \
        -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-4.6.0/modules \
        -D WITH_CUDA=ON \
        -D CUDA_ARCH_BIN=8.7 \
        -D CUDA_ARCH_PTX="" \
        -D ENABLE_FAST_MATH=ON \
        -D CUDA_FAST_MATH=ON \
        -D WITH_CUBLAS=ON \
        -D WITH_LIBV4L=ON \
        -D WITH_GSTREAMER=ON \
        -D WITH_GSTREAMER_0_10=OFF \
        -D WITH_QT=ON \
        -D WITH_OPENGL=ON \
        -D CUDA_NVCC_FLAGS="--expt-relaxed-constexpr" \
        -D WITH_TBB=ON \
        ..

其中

CMAKE_INSTALL_PREFIX=/usr/local/ 为安装地址,

OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-4.6.0/modules 为扩展模块所在路径,

CUDA_ARCH_BIN=8.7 为 GPU 算力,

编译完成后如下所示

jetson 配置opencv cuda,Jetson Orin NX,OpenCV,CUDA,Jetson

 然后 make install 编译安装 opencv 4.6.0 及其扩展模块 opencv_contrib-4.6.0,电脑性能好的话可以多核编译 make -j8,如果出现兼容性错误的花建议用 make,速度慢一点,终端输入

sudo make install -j8

这里编译会很慢,耐心等待,只要一开始没有什么报错后面就不会报错。

jetson 配置opencv cuda,Jetson Orin NX,OpenCV,CUDA,Jetson

经过漫长的等待,最后编译安装完成后如上所示,最后可以打开 jtop 查看带 GPU 加速的 OpenCV 是否已经安装完成,终端输入

jtop

jetson 配置opencv cuda,Jetson Orin NX,OpenCV,CUDA,Jetson

点击最下反的 7 INFO 我们发现 OpenCV: 4.6.0 with CUDA: YES 表示以及安装成功!

三、配置 cv_bridge 功能包

因为 opencv 的数据和 ROS 的数据需要转化,因此需要通过 cv_bridge 这个桥接工具,接下来我们介绍怎么自己下载安装并配置一个自己的 cv_bridge 功能包。

首先,创建一个 ROS 的工作空间

mkdir -p ~/catkin_pkg/src/
cd ~/catkin_pkg/src/

然后,下载对应版本的源码,因为是 JetPack 5.1.2 对应 Ubuntu 20.04 因此下载 noetic 版本

GitHub - ros-perception/vision_opencv at noetic

终端输入

git clone https://github.com/ros-perception/vision_opencv.git -b noetic

下载完成后因为我们只需要 cv_bridge,所以只需保留 cv_bridge 文件夹,将其放在 ~/catkin_pkg/src/ 目录下,然后修改一下 cv_bridge 的配置文件,终端输入

cd ~/catkin_pkg/src/cv_bridge/
gedit ./CMakeLists.txt

添加自己安装的 带有 GPU 加速的 OpenCV 的 build 文件的路径

include("~/Documents/opencv-4.6.0/build/OpenCVConfig.cmake")

 添加在 CMakeLists.txt 文件的如下位置,

jetson 配置opencv cuda,Jetson Orin NX,OpenCV,CUDA,Jetson

保存后编译该功能包,终端输入

cd ~/catkin_pkg/
catkin_make

如下结果表明编译成功

jetson 配置opencv cuda,Jetson Orin NX,OpenCV,CUDA,Jetson

编译完成后将其路径添加到 ~/.bashrc 文件中,并刷新环境变量

echo "source ~/catkin_pkg/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc

至此,自己的 cv_bridge 功能包就制作完成了,如果需要使用别的版本的 OpenCV,只需将 cv_bridge 中 include("~/Documents/opencv-4.6.0/build/OpenCVConfig.cmake") 修改为相应的路径。文章来源地址https://www.toymoban.com/news/detail-764808.html

到了这里,关于Jetson Orin NX 开发指南(5): 安装 OpenCV 4.6.0 并配置 CUDA 以支持 GPU 加速的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Jetson Orin NX上手使用(Linux系统的配置&Jetpack的烧录&镜像的备份恢复)

    长文预警 本篇为完整过程记录 有特定需求可以跳转对应位置查看 先介绍手上拿到的orin nx模块:Jetson Orin NX 16GB 100TOPS的算力听起来顶呱呱 摸过一些jetson系列套件的我拿到手自信开搞……然后就自闭了 他好像跟以前的不是一个路子啊(以前摸过的有nano nx tx1 tx2) 遂上网搜索

    2024年02月09日
    浏览(24)
  • 【在英伟达nvidia的jetson-orin-nx和PC电脑ubuntu20.04上-装配ESP32开发调试环境-基础测试】

    最近在使用一直在调试ESP32,作为新手,也有很多不懂的地方,一点点慢慢学,开始是装的win环境,后来又尝试了jetson-orin-nx和ubuntu上,在Linux 下开发都习惯使用命令行,但是在Windows下习惯使用软件点,而调试esp32的话,还是建议使用命令行形式。 当然说得有点远了,本次主要

    2024年02月08日
    浏览(18)
  • Android开发配置OpenCV环境详细指南

    Android开发配置OpenCV环境详细指南 在进行Android开发时,我们经常需要使用图像处理库来实现各种功能。其中,OpenCV是一个强大且广泛应用的开源计算机视觉库。本文将详细介绍如何在Android开发环境中配置OpenCV,并附带相应的源代码和说明。 步骤一:下载OpenCV库文件 首先,我

    2024年02月08日
    浏览(24)
  • Nvidia Jetson Orin 开发板配置开发环境

    参考文档:(官方)https://developer.nvidia.com/embedded/learn/get-started-jetson-agx-orin-devkit Check your L4T version first to see if you have a unit flashed with older version of the BSP. You may get something like this, # R34 (release), REVISION: 1.0, GCID: 30102743, BOARD: t186ref, EABI: aarch64, DATE: Wed Apr 6 19:11:41 UTC 2022, and this show

    2024年02月07日
    浏览(24)
  • ubuntu22.04@Jetson Orin Nano之OpenCV安装

    昨天用Jetson跑demo程序发现帧率很慢(只有10FPS左右),按照视频文件怎么说应该有30FPS。但是为什么jetson orin nano跑不起来呢??? dnn_object_detection_embedded_device 想着,估计是GPU没有跑起来,正好凑着调试了下板子,记录、整理下资料。 从现象上看,OpenCV运行的时候没有跑GPU,从

    2024年02月21日
    浏览(25)
  • 胎儿式保姆级教程:Jetson Xavier NX镜像烧录、开机配置、中文配置、风扇设置、远程桌面、文件传输配置、pycharm安装环境配置,QQ,opencv(cuda编译),torch(GPU).

    一、使用的硬件:nx板子、原装充电器、有线鼠标(USB)、有线键盘(USB)、有线摄像头(USB)、7寸触摸显示屏、20寸大显示屏(显示屏有一个就可以,大屏幕更加方便)、SD卡(128G,用64g也可以)、读卡器、笔记本电脑(Win-11)、WIFI网络环境 二、软件:SDFormatter(v4)、Win32DiskImager(2.0)、VNC-

    2024年02月07日
    浏览(29)
  • PyCharm 开发环境搭建指南:安装、配置及基础使用教程

    数据来源 Pycharm集成开发工具(DE),是当下全球Pthn开发者, 使用最频繁的工具软件 。 绝大多数的 Python程序,都是在 Pycharm工具内完成的开发。 Pycharm工具下载 首先,我们先下载并安装它:打开网站:下载PyCharm:JetBrains为专业开发者提供的Python IDE  迅雷下载: https://download.

    2024年04月17日
    浏览(40)
  • Jetson Xavier NX 上查看CUDA、Cudnn、Tensorrt、Opencv的版本及配置信息

    以上功能都可以通过jtop实现,下面是如何安装jtop: 启动后界面如下,可以查看到开发板资源使用情况,接着 点击info 如果安装成功,可以查看到 CUDA、cuDNN、opencv和TensorRT等版本信息 注意!如果是Jetpack5.0.0以上版本可能会看不到很多信息,因为稳定版本不支持,需要安装最新

    2024年02月15日
    浏览(50)
  • 【PC电脑windows环境下-[jetson-orin-NX]Linux环境下-下载工具esptool工具使用-相关细节-简单样例-实际操作】

    硬件信息:开发板 ESP32-S3-DevKitM-1(EPS32-S3-wroom-1模块) 其它硬件:一个usb-type-c连接线。 软件环境:ESP-IDF 5.0 PowerShell 、vscode ESP32对自己来说还是比较新的,最近也是刚刚接触,这里对自己使用ESP32进行简单说明。 博文链接:【在英伟达nvidia的jetson-orin-nx和PC电脑ubuntu20.04上-装

    2024年02月05日
    浏览(35)
  • C#,OpenCV开发指南(01)

    在VS中,通过其工具中自带的扩展包就安装了,不需要像C++中用opencv那样,还要配置属性。 安装步骤:工具——》Nuget包管理器——》管理解决方案的Nuget包。直接搜索opencvsharp。

    2024年02月14日
    浏览(21)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包