安装过程
根据参考资料所描述步骤,一步一步执行相关命令。主要是“二、 从源码安装 OpenCV”。
01.安装构建工具和所有的依赖软件包
执行 su root 命令切换到 root 用户,以 root 用户执行以下命令:
~$ 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-dev libopenexr-dev \
libgstreamer-plugins-base1.0-dev libgstreamer1.0-dev
相关说明
- 参考资料原文中是 libdc1394-22-dev,命令执行后报错 Unable to locate package libdc1394-22-dev。参考网上方案修改为 libdc1394-dev。
- 一般给root用户配置的命令提示符是#而不是$。由于#正好是shell脚本的注释符,此处为页面显示起见在文档内修改为$。
02.克隆所有的OpenCV 和 OpenCV contrib 源
~$ mkdir ~/opencv_build && cd ~/opencv_build
~/opencv_build$ git clone https://github.com/opencv/opencv.git
~/opencv_build$ git clone https://github.com/opencv/opencv_contrib.git
03.执行 cmake 命令配置 openCV 的构建
~/opencv_build$ cd ~/opencv_build/opencv
~/opencv_build$ mkdir -p build && cd build
~/opencv_build/opencv/build$ 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 \
-D WITH_GTK=ON ..
说明:
- 和参考资料相关,增加了 -D WITH_GTK=ON。按参考资料安装后,调用openCV会报错,从网上搜索说是要增加 -D WITH_GTK=ON 后重新编译安装。
4.执行 make 命令编译 openCV
~/opencv_build/opencv/build$ make -j3
说明:
- -j3是指同时执行3个job。根据参考资料先执行 nproc 命令,得到3,因而此处是 -j3。
- 第二次编译约耗时 3 小时左右。第一次编译似乎时间更长些。
- 没有试过不带参数的 make 耗时多久。
5.安装 openCV
~/opencv_build/opencv/build$ sudo make install
6.相关绑定和验证
~/opencv_build/opencv/build$ pkg-config --modversion opencv4
4.10.0
~/opencv_build/opencv/build$ python3 -c "import cv2; print(cv2.__version__)"
4.7.0