在 ubuntu18.04 上编译安装 opencv4.3.0 并启用 cuda。

废话不多说,先上安装成功后的截图
image.png

安装依赖

首先安装所需依赖,参考:Installing OpenCV from source on Ubuntu 18.04 machine

  1. ### first update and upgrade pre-install apt-get packages.
  2. sudo apt-get update
  3. sudo apt-get upgrade
  4. ### install developer tools
  5. sudo apt -y install build-essential checkinstall cmake pkg-config
  6. sudo apt -y install git gfortran
  7. ### install image I/O packages for loading various image file formats from disk
  8. sudo apt -y install libjpeg8-dev libpng-dev
  9. sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
  10. sudo apt install libjasper1 libjasper-dev
  11. ### GTK development library to build Graphical User Interfaces
  12. sudo apt -y install libgtk-3-dev libtbb-dev qt5-default
  13. ### Other dependcies
  14. sudo apt -y install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libdc1394-22-dev
  15. sudo apt -y install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
  16. sudo apt -y install libatlas-base-dev
  17. sudo apt -y install libfaac-dev libmp3lame-dev libtheora-dev
  18. sudo apt -y install libxvidcore-dev libx264-dev
  19. sudo apt -y install libopencore-amrnb-dev libopencore-amrwb-dev
  20. sudo apt -y install libgphoto2-dev libeigen3-dev libhdf5-dev doxygen x264 v4l-utils

获取源码

从 GitHub 上下载源码,如果下载太慢,可以用码云来加速: 一招搞定GitHub下载加速!

  1. mkdir opencv
  2. cd opencv
  3. ### downloading opencv and opencv_contrib packages from their GitHub repositories
  4. git clone https://github.com/opencv/opencv.git
  5. git clone https://github.com/opencv/opencv_contrib.git

编译安装

编译过程中要从 github 上下载文件,由于网络原因无法下载,参考:修改Hosts临时解决GitHub的raw.githubusercontent.com无法链接的问题

通过IPAddress.com首页,输入raw.githubusercontent.com查询到真实IP地址,编辑host文件

  1. sudo vi /etc/hosts
  2. 199.232.4.133 raw.githubusercontent.com

建立编译文件夹

cd opencv
mkdir build
cd build

开始编译(/usr/local 可以换成自己的路径)

cmake -D CMAKE_INSTALL_PREFIX=/usr/local -D CMAKE_BUILD_TYPE=Release -D OPENCV_GENERATE_PKGCONFIG=ON -D ENABLE_CXX11=1 -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib/modules -D OPENCV_ENABLE_NONFREE=True -D INSTALL_PYTHON_EXAMPLES=ON -D INSTALL_C_EXAMPLES=ON -D WITH_CUDA=ON -D WITH_TBB=ON -D ENABLE_FAST_MATH=1 -D WITH_OPENMP=ON -D WITH_CUFFT=ON -D WITH_CUBLAS=ON ..

cmake 编译后使用 make 编译

make -j8   # 8 是指同时使用的线程数,越大越快,使用 nproc 来查看当前电脑cpu 核心数

安装

make install

验证

安装后,配置路径,参考:【opencv】ubuntu安装opencv4.2.0(支持cuda加速)

配置库路径

#打开下列文件
sudo vi /etc/ld.so.conf.d/opencv.conf 

# 添加lib路径
 /usr/local/lib  # 安装到自定义路径则写   自定义路径/lib

# 更新
sudo ldconfig

配置 pkgconfig 路径

vi ~/.bashrc  # vi ~/.zshrc for zsh user

添加下面内容

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

命令行验证结果

pkg-config --modversion opencv4

成功
image.png