Jetson Xavier NX编译OpenCV(with cuda)

Jetson Xavier NX默认安装的OpenCV 4.5.4(不带cuda),因项目要求OpenCV使用cuda作加速,因此,须重新编译OpenCV。这里为了方便直接在目标机上面编译,避免复杂的环境及依赖。

1.下载OpenCV源代码

下载地址:

OpenCV · GitHub

我这里下载opencv-4.5.4,opencv_contrib-4.5.4,下载后并解压。

2.卸载原来的OpenCV

sudo apt-get purge libopencv* python-opencv 

查看是否卸载:

libs:

pkg-config opencv --libs

version:

pkg-config opencv --modversion

如果提示没有内容,说明已经卸载了。

3.安装依赖

sudo apt-get update
sudo apt-get install build-essential pkg-config
sudo apt-get install -y cmake libavcodec-dev libavformat-dev libavutil-dev \
    libglew-dev libgtk2.0-dev libgtk-3-dev libjpeg-dev libpng-dev libpostproc-dev \
    libswscale-dev libtbb-dev libtiff5-dev libv4l-dev libxvidcore-dev \
    libx264-dev qt5-default zlib1g-dev libgl1 libglvnd-dev pkg-config \
    libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev mesa-utils  
sudo apt-get install python2.7-dev python3-dev python-numpy python3-numpy

4.配置OpenCV

cd opencv-4.5.4
mkdir build
cd build

sudo cmake-gui

可以通过筛选功能,勾选cuda相关的选项

OPENCV_EXTRA_MODULES_PATH配置为opencv_contrib-4.5.4/modules

注意:这里因为要安装到Linux环境下,所以别忘了勾选“OPENCV_GENERATE_PKGCONFIG”

5.编译与安装

sudo make -j8
sudo make install

这里编译时间比较长,需要几个小时左右。

6.配置

1)配置链接库

sudo ldconifg -v

将OpenCV库添加到路径:

sudo vi /etc/ld.so.conf.d/opencv.conf

添加:

/usr/local/lib

配置生效:

sudo ldconfig

2)配置环境变量

sudo vi /etc/bash.bashrc

添加:

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH

配置生效:

source /etc/bash.bashrc

7.检查

libs:

pkg-config opencv --libs

version:

pkg-config opencv --modversion

有相应的输出内容即可。

也可以通过:

opencv_version

查询OpenCV版本。

猜你喜欢

转载自blog.csdn.net/propor/article/details/130057908