Ubuntu20.04安装OpenCV官方教程(C++&&Python接口)

Python安装方式

sudo apt update
sudo apt install libopencv-dev python3-opencv

导入cv2模块并打印版本

python3 -c "import cv2; print(cv2.__version__)"

输出

4.2.0

从源码安装OpenCV

安装构建工具和所有的依赖软件包:

    sudo apt install build-essential cmake git pkg-config libgtk-3-dev \
    libavcodec-dev libavformat-dev libswscale-dev libv4l-dev \
    libxvidcore-dev libx264-dev libjpeg-dev libpng-dev libtiff-dev \
    gfortran openexr libatlas-base-dev python3-dev python3-numpy \
    libtbb2 libtbb-dev libdc1394-22-dev libopenexr-dev \
    libgstreamer-plugins-base1.0-dev libgstreamer1.0-dev

克隆OpenCV和OpenCV contrib源(速度慢可以用代理)

新建文件夹名称为opencv_build,不然可能报错

mkdir ~/opencv_build && cd ~/opencv_build
git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git

进入opencv文件夹并新建build文件夹并切入

cd ~/opencv_build/opencv
mkdir -p build && cd build

使用 CMake 命令配置 OpenCV 构建(PATH 设置为自己的目录)

cmake -D CMAKE_BUILD_TYPE=RELEASE \
    -D CMAKE_INSTALL_PREFIX=/usr/local \
    -D INSTALL_C_EXAMPLES=ON \
    -D INSTALL_PYTHON_EXAMPLES=ON \
    -D OPENCV_GENERATE_PKGCONFIG=ON \
    -D OPENCV_EXTRA_MODULES_PATH=~/opencv_build/opencv_contrib/modules \
    -D BUILD_EXAMPLES=ON ..

输出将会如下,则成功

-- Configuring done
-- Generating done
-- Build files have been written to: /home/vagrant/opencv_build/opencv/build

开始编译

make -j16

根据你的处理器修改-f值。如果你不知道你的处理器核心数,你可以输入nproc找到。

报错处理

  • 出现报错fatal error: boostdesc_bgm.i: 没有那个文件或目录的解决方法。
  • 编译OpenCV提示opencv_contrib缺少boostdesc_bgm.i等文件的解决方法。
    需要将test_detectors_invariance.impl.hpp复制到opencv_contrib/modules/xfeatures2d/test/

安装

sudo make install

查看版本

pkg-config --modversion opencv4

参考

本文参考博客:
https://cloud.tencent.com/developer/article/1657529
https://blog.csdn.net/qq_45488453/article/details/110289423

总结

Python方式安装简单,推荐使用源码编译的方式安装,这样更加灵活一些。如果在下载源码的过程中速度太慢,可以使用ss。
如果大家有什么问题,欢迎大家留言交流。

你可能感兴趣的:(Ubuntu20.04安装OpenCV官方教程(C++&&Python接口))