NVIDIA Jetson Orin NX安装 OpenCV 和 cv_bridge

 Jetson开发板自带的OpenCV不支持CUDA加速,所以本文将阐述如何在Jetson平台上安装并配置支持CUDA加速的OpenCV。

笔者在Jetson平台上,仅安装OpenCV可能会导致在编译和运行部分ROS(机器人操作系统)包时遇到警告和错误,主要原因可能是缺少了cv_bridge这一组件。cv_bridge是ROS中用于在OpenCV图像和ROS图像消息之间进行转换的库。

一 OpenCV 安装

1.下载 opencv 源码,选择所需要的版本 opencv,相应的扩展 opencv_contrib,opencv下载地址opencv_contrib下载地址

2.本文以opencv 4.9.0 版本为例,将 opencv 4.9.0 以及相应的扩展 opencv_contrib 4.9.0 下载到“ ~/Documents ”目录下,编译前确定 opencv 的安装路径,本文的安装路径是

CMAKE_INSTALL_PREFIX=/usr/local/

3.用jtop命令,确定 Jetson Orin NX 的算力为 8.7。INFO页面查看CUDA Arch BIN

jtop

4.进入安装文件路径

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

编译OpenCV时需要用外网安装一些依赖,这里下载一个代理工具 proxychains执行以下命令:

sudo apt-get install  proxychains

5.预编译 opencv 4.9.0 及其扩展模块 opencv_contrib-4.9.0,生成 Makefiles 文件。其中注意CMAKE_INSTALL_PREFIX , OPENCV_EXTRA_MODULES_PATH ,CUDA_ARCH_BIN

proxychains cmake -D CMAKE_BUILD_TYPE=RELEASE \
        -D CMAKE_INSTALL_PREFIX=/usr/local/ \
        -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-4.9.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 \
        ..

6.安装,注意cpu核数,推荐-j4

sudo make install -j4

7.查看是否安装成功:在jtop的INFO页面查看。

二 安装 cv_bridge 库

cv_bridge是在ROS图像消息和OpenCV图像之间进行转换的一个功能包,很多功能包都需要。

1.下载对应版本的 cv_bridge

git clone https://github.com/ros-perception/vision_opencv.git -b ${ROS_DISTRO}

2.进入 cv_bridge 目录,修改 CMakeLists.txt 文件中的 OpenCV 对应的版本号(选做)

3.编译的时候指定安装路径 ( ROS 安装的目录下:/opt/ros/${ROS_DISTRO} )

cd vision_opencv/cv_bridge
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=/opt/ros/${ROS_DISTRO} ..
sudo make install

三 参考

Jetson Orin NX 开发指南(5)

ROS 中 cv_bridge 与 OpenCV 版本不匹配问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值