Debian

如何在 Debian 10 中安装 OpenCV

luobo · 1月15日 · 2020年 · ·

文章前言

OpenCV(开源计算机视觉库)是一个开源计算机视觉库,并具有C++,Python和Java的绑定。 它可用于广泛的应用程序,包括医学图像分析,拼接街景图像,监视视频,检测和识别人脸,跟踪运动对象,提取3D模型等。

OpenCV可以利用多核处理的优势,并具有GPU加速功能以进行实时操作。

本教程显示了如何在Debian 10 Buster上安装OpenCV。 对于大多数人而言,在Debian上安装OpenCV的最简单方法是使用apt软件包管理工具进行安装。 如果要从源代码安装OpenCV的最新稳定版本,请从本教程的“源代码”部分向下滚动到“安装OpenCV”。

选择最适合您的安装选项之一

从Debian存储库安装OpenCV

可从标准Debian存储库中获得OpenCV Python模块。 在撰写本文时,标准Debian存储库包括过时的OpenCV 3.2版。

要安装OpenCV Python模块,请输入:

sudo apt update
sudo apt install python3-opencv

上面的命令将安装运行OpenCV所需的所有软件包。

要验证安装,请导入cv2模块并打印OpenCV版本:

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

输出:

3.2.0

如果要使用Python 2绑定安装OpenCV,请安装python-opencv软件包。

从源代码安装OpenCV

从源代码构建OpenCV库是安装OpenCV的推荐方法。 它将针对您的特定系统进行优化,并且您将完全控制构建选项。

要从源代码安装最新的OpenCV版本,请执行以下步骤:

0-1. 安装必需和可选的依赖项:

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

0-2. 使用以下命令克隆OpenCV和OpenCV贡献存储库:

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.2.0。 如果要安装旧版本的OpenCV,请在cd上同时打开opencvopencv_contrib目录,然后运行git checkout <opencv-version>

0-3. 下载完成后,创建一个临时构建目录,并导航至该目录:

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

使用CMake设置OpenCV构建:

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 ..

CMake构建系统完成后,您将看到类似以下内容:

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

0-4. 开始编译过程:

make -j2

根据您的处理器修改-j标志。 如果您不知道处理器的内核数量,可以通过键入nproc找到它。

编译可能要花费几分钟或更长时间,具体取决于您的系统配置。 完成后,您将看到类似以下的内容:

...
[100%] Linking CXX executable ../../bin/example_tutorial_imgcodecs_imwrite
[100%] Built target example_tutorial_goodFeaturesToTrack_Demo
[100%] Built target example_tutorial_imgcodecs_imwrite

0-5. 通过键入以下命令安装OpenCV:

sudo make install
...
-- Installing: /usr/local/share/opencv4/samples/python/video_threaded.py
-- Installing: /usr/local/share/opencv4/samples/python/video_v4l2.py
-- Installing: /usr/local/share/opencv4/samples/python/watershed.py

0-6. 要检查OpenCV是否已成功安装,请输入以下命令,您应该会看到OpenCV版本:

pkg-config --modversion opencv4
4.2.0
python3 -c "import cv2; print(cv2.__version__)"
4.2.0-dev

结论

我们向您展示了在Debian 10上安装OpenCV的两种不同方法。您选择的方法取决于您的要求和偏好。 尽管从Ubuntu存储库安装打包版本更容易,但是从源代码构建OpenCV可以为您提供更大的灵活性,并且它应该是安装OpenCV时的首选。

如果您有任何疑问或反馈,请在下面发表评论。

0 条回应