您可以在所选路径检查安装,如下所示。
mkdir /c/库cd /c/库
#!/bin/bash -emyRepo=$(pwd)CMAKE_GENERATOR_OPTIONS=-G“Visual Studio 16 2019”#CMAKE_GENERATOR_OPTIONS=-G“Visual Studio 15 2017 Win64”#CMAKE_GENERATOR_OPTIONS=(-G“Visual Studio 16 2019” -A x64) # CMake 3.14+ 是必需的如果 [ ! -d “$myRepo/opencv” ];然后echo “克隆 opencv”git clone https://github.com/opencv/opencv.git还光盘opencvgit pull --rebasecd ..fi如果 [ ! -d “$myRepo/opencv_contrib” ];然后Echo “克隆opencv_contrib”git clone https://github.com/opencv/opencv_contrib.git还光盘opencv_contribgit pull --rebasecd ..fi存储库 = opencvmkdir -p build_opencv推build_opencvCMAKE_OPTIONS=(-DBUILD_PERF_TESTS:BOOL=OFF -DBUILD_TESTS:BOOL=OFF -DBUILD_DOCS:BOOL=OFF -DWITH_CUDA:BOOL=OFF -DBUILD_EXAMPLES:BOOL=OFF -DINSTALL_CREATE_DISTRIB=ON)设置 -xcmake “${CMAKE_GENERATOR_OPTIONS[@]}”: “${CMAKE_OPTIONS[@]}”, -DOPENCV_EXTRA_MODULES_PATH=“$myRepo”/opencv_contrib/modules -DCMAKE_INSTALL_PREFIX=“$myRepo/install/$RepoSource”, “$myRepo/$RepoSource”echo “************************* $Source_DIR -->调试”cmake --构建。--config 调试echo “************************* $Source_DIR -->发布”cmake --构建。--config 发布cmake --构建。--target install --config 发布cmake --构建。--target install --config 调试啪
-DCMAKE_INSTALL_PREFIX=“$myRepo/安装/$RepoSource”
CMAKE_OPTIONS=(-DBUILD_PERF_TESTS:BOOL=OFF -DBUILD_TESTS:BOOL=OFF -DBUILD_DOCS:BOOL=OFF -DBUILD_EXAMPLES:BOOL=OFF)
./installOCV.sh
如果您正在构建自己的库,则可以从我们的?Git 存储库中获取源文件。
从头开始构建 OpenCV 库需要事先安装几个工具:
OpenCV 可能有多种风格。有一个“核心”部分可以独立工作。尽管如此,还是有一些工具,由第三方制作的库,它们提供的服务是OpenCV可以利用的。这些将在许多方面提高其能力。为了使用其中任何一个,您需要在系统上下载并安装它们。
2.7.{x}
现在,我们将介绍完整构建(使用上述所有框架、工具和库)要遵循的步骤。如果您不需要对其中一些的支持,则可以自由地跳过此部分。
D:/OpenCV
D:/OpenCV
2.7
对于英特尔线程构建模块 (TBB),请下载源文件并将其解压缩到系统上的目录中。例如,让有 .对于安装英特尔集成性能基元 (IPP),情况是一样的。为了提取档案,我建议使用?7-Zip?应用程序。D:/OpenCV/dep
D:/OpenCV/dep
对于Qt框架,您需要自己构建二进制文件(除非您使用带有32位编译器的Microsoft Visual Studio 2008)。为此,请转到Qt下载页面。下载源文件(不是安装程序!!):
将其解压缩到一个漂亮且简短的命名目录中,例如 .然后你需要构建它。使用“开始”菜单搜索启动 Visual Studio 命令提示符 (2010)(或浏览“开始”菜单“所有程序”> Microsoft Visual Studio 2010“>”Visual Studio 工具“>”Visual?Studio?命令提示符 (2010)“)。D:/OpenCV/dep/qt/
现在导航到提取的文件夹,然后使用此控制台窗口进入其中。您应该有一个包含?Install、Make?等文件的文件夹。使用?dir?命令列出当前目录中的文件。到达此目录后,输入以下命令:
完成此操作大约需要 10-20 分钟。然后输入下一个命令,这将花费更长的时间(很容易花费超过一个小时):
在此之后,在 Windows 7 上使用以下命令设置 Qt 环境变量:
此外,使用?PathEditor?将生成的二进制文件路径添加到系统路径中。在我们的例子中,这是 .D:/OpenCV/dep/qt/qt-everywhere-opensource-src-4.7.3/bin
注意
如果您计划进行Qt应用程序开发,此时还可以安装Qt Visual Studio插件。在此之后,您可以在不使用Qt Creator的情况下制作和构建Qt应用程序。一切都很好地集成到 Visual Studio 中。
现在启动?CMake (cmake-gui)。您可以再次在开始菜单搜索中输入它,也可以从所有程序 –> CMake 2.8 –> CMake (cmake-gui) 中获取它。首先,选择 OpenCV 库 (1) 的源文件的目录。然后,指定一个目录,您将在其中构建 OpenCV 的二进制文件 (2)。
按“配置”按钮指定要使用的编译器(和?IDE)。请注意,您可以在不同的编译器之间进行选择以创建 64 位或 32 位库。选择您在应用程序开发中使用的那个。
CMake 将启动,并根据您的系统变量尝试自动定位尽可能多的包。您可以在 WITH –> WITH_X 菜单点(其中?X?是包缩写)中修改要用于生成的包。以下是您可以打开或关闭的当前软件包列表:
选择要使用的所有包,然后再次按“配置”按钮。为了更轻松地概述生成选项,请确保二进制目录选择下的“分组”选项处于打开状态。对于某些包,CMake 可能无法找到所有必需的文件或目录。在这种情况下,CMake 将在其输出窗口(位于 GUI 底部)中抛出错误,并将其字段值设置为未找到常量。例如:
对于这些,您需要手动设置查询的目录或文件路径。在此之后,再次按下“配置”按钮,查看您输入的值是否被接受。执行此操作,直到所有条目都正确,并且您在 GUI 的字段/值或输出部分看不到错误。现在我想强调一个你一定会喜欢的选项:ENABLE –> ENABLE_SOLUTION_FOLDERS。OpenCV 将创建多个项目,转动此选项将确保它们被归类在解决方案资源管理器的目录中。如果你问我,这是一个必须具备的功能。
此外,您需要选择要构建的 OpenCV 部分。
再次按下“配置”按钮,确保未报告任何错误。如果是这种情况,您可以通过按“生成”按钮来告诉 CMake 创建项目文件。进入构建目录,打开创建的OpenCV解决方案。根据您选择的上述选项的数量,解决方案可能包含相当多的项目,因此在启动时要对 IDE 持宽容态度。现在,您需要同时生成?Release?和?Debug?二进制文件。使用 IDE 上的下拉菜单,在为其中一个生成后更改为另一个。
最后,您可以观察到 bin 目录下构建的二进制文件:
对于文档,您需要在 HTML 文档的?doxygen?项目上显式发出 build 命令。它会召唤?Doxygen?来完成所有艰苦的工作。您可以在 .build/doc/doxygen/html
若要将头文件和二进制文件(将在自己的项目期间使用)收集到单独的目录中(类似于预构建二进制文件的交付方式),需要显式生成?Install?项目。
这将在?Build?one 中创建一个?Install?目录,将所有构建的二进制文件收集到一个位置。只有在生成?Release?和?Debug?版本后,才使用此选项。
要测试您的构建,只需进入 or 目录并启动几个应用程序,例如轮廓 .exe。如果他们跑了,你就完成了。否则,肯定出了什么大问题。在这种情况下,您应该在我们的问答论坛上与我们联系。如果一切正常,轮廓.exe输出应类似于下图(如果在Qt支持下构建):Build/bin/Debug
Build/bin/Release
注意
如果您使用 GPU 模块(CUDA 库),请确保同时升级到 GPU 的最新驱动程序。包含 nvcuda.dll 中(或找不到)无效条目的错误消息主要是由旧的视频卡驱动程序引起的。若要测试 GPU(如果已构建),请运行?performance_gpu.exe?示例应用程序。
首先,我们设置一个环境变量,使我们的工作更轻松。这将保存我们在项目中使用的 OpenCV 库的构建目录。启动命令窗口并输入:
setx OpenCV_DIR D:\OpenCV\build\x64\vc14(建议用于 Visual Studio 2015 - 64 位 Windows)setx OpenCV_DIR D:\OpenCV\build\x86\vc14(建议用于 Visual Studio 2015 - 32 位 Windows)setx OpenCV_DIR D:\OpenCV\build\x64\vc15(建议用于 Visual Studio 2017 - 64 位 Windows)setx OpenCV_DIR D:\OpenCV\build\x86\vc15(建议用于 Visual Studio 2017 - 32 位 Windows)setx OpenCV_DIR D:\OpenCV\build\x64\vc16(建议用于 Visual Studio 2019 - 64 位 Windows)setx OpenCV_DIR D:\OpenCV\build\x86\vc16(建议用于 Visual Studio 2019 - 32 位 Windows)
在这里,目录是您拥有 OpenCV 二进制文件(提取或构建)的地方。您可以有不同的平台(例如 x64 而不是 x86)或编译器类型,因此请替换适当的值。其中,您应该有两个名为?lib?和?bin?的文件夹。
如果你构建了静态库,那么你就完成了。否则,您需要将?bin?文件夹路径添加到系统路径中。这是因为您将以 *“动态链接 库“*(也称为?DLL)。其中存储了 OpenCV 库包含的所有算法和信息。在运行时,操作系统将仅按需加载它们。但是,要做到这一点,操作系统需要知道它们在哪里。系统?PATH?包含可在其中找到 DLL 的文件夹列表。将 OpenCV 库路径添加到此路径,如果他需要 OpenCV 二进制文件,操作系统将知道在哪里查找。否则,您需要将使用的 DLL 复制到应用程序可执行文件 (exe) 旁边,以便操作系统找到它,如果您从事许多项目,这是非常不愉快的。为此,请再次启动?PathEditor?并添加以下新条目(在应用程序中单击鼠标右键以显示菜单):
将其保存到注册表中,您就完成了。如果您更改了构建目录的位置,或者想要使用不同的构建来试用您的应用程序,您需要做的就是通过命令窗口中的?setx?命令更新 OPENCV_DIR 变量。