OpenCV:在 Linux 中安装

2024-01-10 10:36:40

构建核心模块

# 安装最低先决条件(以 Ubuntu 18.04 为参考)
sudo apt update && sudo apt install -y cmake g++ wget 解压缩
# 下载并解压源码
wget -O opencv.zip https://github.com/opencv/opencv/archive/4.x.zip
解压缩 OpenCV.zip
# 创建构建目录
mkdir -p 构建 && cd 构建
# 配置
cmake ../opencv-4.x
# 构建
cmake --构建。

使用 opencv_contrib 构建

# 安装最低先决条件(以 Ubuntu 18.04 为参考)
sudo apt update && sudo apt install -y cmake g++ wget 解压缩
# 下载并解压源码
wget -O opencv.zip https://github.com/opencv/opencv/archive/4.x.zip
wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.x.zip
解压缩 OpenCV.zip
解压opencv_contrib.zip
# 创建构建目录并切换到其中
mkdir -p 构建 && cd 构建
# 配置
cmake -DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib-4.x/模块 ../opencv-4.x
# 构建
cmake --构建。

详细流程

本部分提供了生成过程的更多详细信息,并介绍了替代方法和工具。有关一般安装详细信息,请参阅 OpenCV?安装概述教程,有关配置选项文档,请参阅?OpenCV 配置选项参考

安装编译器和构建工具

  • 要编译 OpenCV,您需要一个 C++ 编译器。通常是 G++/GCC 或 Clang/LLVM:
    • 安装 GCC...
      sudo apt 安装 -y g++
    • ...或叮当:
      sudo apt 安装 -y clang
  • OpenCV 使用 CMake 构建配置工具:
    sudo apt 安装 -y cmake
  • CMake 可以为不同的构建系统生成脚本,例如?makeninja
    • 安装 Make...
      sudo apt 安装 -y make
    • ...或忍者:
      sudo apt 安装 -y 忍者构建
  • 用于获取和解压缩源的安装工具:
    • wget?并解压缩...
      sudo apt 安装 -y wget 解压缩
    • ...或者?git
      sudo apt 安装 -y git

下载源代码

有两种方法可以获取 OpenCV 源代码:

  • 使用 Web 浏览器或任何下载工具 (~80-90Mb) 下载存储库的快照并解压缩...
    wget -O opencv.zip https://github.com/opencv/opencv/archive/4.x.zip
    解压缩 OpenCV.zip
    mv opencv-4.x opencv
  • ...或使用?git?将存储库克隆到本地计算机以获取完整的更改历史记录 (>470Mb):
    git clone https://github.com/opencv/opencv.git
    git -C opencv 签出 4.x

注意

其他分支、版本或提交的快照可以在?GitHub?和官方下载页面上找到。

配置和构建

  • 创建构建目录:
    mkdir -p 构建 && cd 构建
  • 配置 - 为首选构建系统生成构建脚本:
    • 对于制作...
      cmake ../opencv
    • ...或者对于忍者
      cmake -GNinja ../opencv
  • 构建 - 运行实际的编译过程:
    • 使用?make...
      制作 -j4
    • ...或者忍者
      忍者

注意

配置过程可以从 Internet 下载一些文件以满足库依赖关系,连接失败可能会导致某些模块或功能被关闭或行为不同。有关详细信息,请参阅 OpenCV?安装概述和 OpenCV?配置选项参考教程,以及完整的配置选项参考

如果在生成过程中遇到问题,请尝试清理或重新创建生成目录。配置中的更改(例如禁用依赖项、修改构建脚本或将源代码切换到另一个分支)处理得不好,并可能导致工作区损坏。

Make?可以并行运行多个编译进程,option 表示“同时运行 <NUM> 作业”。Ninja?将自动检测可用处理器内核的数量,并且不需要选项。-j<NUM>-j

检查生成结果

成功构建后,您将在目录中找到库,并在目录中找到可执行文件(测试、示例、应用程序):build/libbuild/bin

LS Bin (英语)
ls 库

CMake 包文件将位于构建根目录中:

ls OpenCVConfig*.cmake
ls OpenCVModules.cmake

安装

警告

安装过程仅将文件复制到预定义的位置,并执行少量修补。使用此方法进行安装不会将 opencv 集成到系统包注册表中,因此,例如,opencv 无法自动卸载。我们不建议普通用户进行系统范围的安装,因为可能与系统软件包发生冲突。

默认情况下,OpenCV 将安装到该目录中,所有文件将被复制到以下位置:/usr/local

  • /usr/local/bin- 可执行文件
  • /usr/local/lib- 库 (.so)
  • /usr/local/cmake/opencv4- CMake 包
  • /usr/local/include/opencv4-头
  • /usr/local/share/opencv4- 其他文件(例如XML格式的训练级联)

由于由 root 用户拥有,因此应使用提升的权限 ():/usr/localsudo

sudo make 安装

sudo ninja 安装

安装根目录可以通过配置参数进行更改,例如 安装到当前用户的本地目录。可以使用参数更改安装布局。

文章来源:https://blog.csdn.net/2301_81888214/article/details/135460294
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。