OpenCV(Open source Computer Vision Library)是一套关于计算机视觉的开放源代码的API函数库,绑定了C++,Python和Java,并支持所有主要操作系统。它可以利用多核处理的优势,并具有GPU加速功能以实现实时操作。
OpenCV具有广泛的应用,包括医学图像分析,拼接街景图像,监视视频,检测和识别人脸,跟踪运动对象,提取3D模型等等。
本文介绍如何在Ubuntu 20.04上安装OpenCV。选择最适合您的安装方法。要从源代码安装最新稳定版本的OpenCV,请从本教程向下滚动到“源代码安装OpenCV”部分。
从Ubuntu仓库安装OpenCV
可从默认的Ubuntu 20.04仓库安装OpenCV。要安装它,请运行:
- linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt install libopencv-dev python3-opencv
上面的命令将安装运行OpenCV所需的所有软件包。
通过导入cv2模块并打印OpenCV版本来验证安装:
- linuxmi@linuxmi:~/www.linuxmi.com$ python3 -c "import cv2; print(cv2.__version__)"
在撰写本文时,仓库中的版本为4.2:
输出:
- 4.2.0
从源代码安装OpenCV
从源代码构建OpenCV库可以使您拥有最新的可用版本。它将针对您的特定系统进行优化,并且您将完全控制构建选项。这是安装OpenCV的推荐方法。
执行以下步骤从源代码安装最新的OpenCV版本:
安装构建工具和依赖项:
- linuxmi@linuxmi:~/www.linuxmi.com$ 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仓库:
- mkdir ~/opencv_build && cd ~/opencv_build
- git clone https://github.com/opencv/opencv.git
- git clone https://github.com/opencv/opencv_contrib.git
在撰写本文时,github仓库中的默认版本为4.3.0。如果要安装旧版本的OpenCV,请在cd上同时打开opencv和opencv_contrib目录,然后运行git checkout <opencv-version>
下载完成后,创建一个临时构建目录,并导航至该目录:
- cd ~/opencv_build/opencv
- mkdir -p build && cd build
使用CMake设置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 ..
输出将如下所示:
- -- Configuring done
- -- Generating done
- -- Build files have been written to: /home/vagrant/opencv_build/opencv/build
开始编译过程:
- make -j8
根据您的处理器修改-j标志。如果您不知道处理器的内核数,可以通过键入nproc找到它。
编译可能要花费几分钟或更长时间,具体取决于您的系统配置。
使用以下方法安装OpenCV:
- sudo make install
要验证安装,请键入以下命令,您将看到OpenCV版本。
C++绑定:
- pkg-config --modversion opencv4
输出
- 4.2.0
Python绑定:
- python3 -c "import cv2; print(cv2.__version__)"
输出
- 4.3.0-dev
总结
我们向您展示了两种在Ubuntu 20.04计算机上安装OpenCV的方法。您选择的方法取决于您的需求和偏好。尽管从Ubuntu存储库中安装打包版本更容易,但是从源代码构建OpenCV给了你更多的灵活性,并且它应该是你安装OpenCV的第一选择。