【问题标题】:How can I install/configure OpenCV3.2.0 with C++, Visual Studio 2017?如何使用 C++、Visual Studio 2017 安装/配置 OpenCV3.2.0?
【发布时间】:2017-05-04 15:16:45
【问题描述】:

我想在 Visual Studio 2017 中使用 OpenCV 来做 c++ 程序。

为此,我关注了Setting Up OpenCV in Visual Studio 视频。在那,他说 vc14 应该设置为 VS2015 的环境变量。 VS2017 没有 vc16。那么我该如何为VS2017做呢?如果我要使用VS2017,是否需要对视频指令进行任何其他更改?

【问题讨论】:

  • 嗯,你是在用 cmake 生成代码吗?
  • @ΦXocę웃Пepeúpaツ 不,我只是按照视频中的说明进行操作。
  • 与其听从 YouTube 上随机陌生人的建议,不如听从 OpenCV 文档中的说明?
  • @BoundaryImposition OpenCV documentation 已过时。我想要VS2017,但文档是关于VS2012的。
  • 等一下……我在写如何

标签: c++ visual-studio opencv visual-studio-2017


【解决方案1】:

由于官方 OpenCV 教程中的文档已经过时,我建议:

  1. 使用完整的编译器获取VS-2017,例如:

  2. 获取最新的CMake(卸载旧版本)

  3. 从 github 获取 sourceCode herehere 并将它们放在 C:/openCV 文件夹中,在那里也创建一个 BUILD 文件夹

  4. 打开Cmake,选择opencv主文件夹...在build中写下build目录如下:

  1. 点击configure,选择visual studio 15 2017,选择“use default native compilers”,然后点击“finish”...

6.1 现在你应该会看到 cmake 完成它的工作了 :)

  1. 一旦配置完成,设置opencv额外模块路径并再次点击配置,完成后点击生成! :)

  2. 生成完成后点击“打开项目”,这将在visual studio中打开一个名为“opencv”的巨大项目,现在你可以关闭cmake,我们不再需要了。

  3. 现在,当解决方案准备就绪时,请确保您处于“调试”conf 中并右键单击“ALL_BUILD”,然后在构建成功更改为“发布”后“构建”(这可能需要一段时间) " 配置并右键单击“ALL_BUILD”,然后再次“构建”。

  4. 现在,请确保您处于“调试”配置中并右键单击“安装”,然后在构建成功后单击“构建”(可能需要一段时间)更改为“发布”配置并右键单击在“安装”上,然后再次“构建”。

【讨论】:

  • 我刚刚遇到了太多来自 3rd 方库的错误,并尝试使用 PCL(点云库)进行制作。所以回到 Visual Studio 2015,因为我开始学习了。 stackoverflow.com/questions/43902133/…
  • 不得不对这两个答案投反对票,我按照说明花了 40 分钟,但没有人知道要包含的内容的名称/路径,现在我的 IDE 充满了“未找到”错误消息,我们包括什么?! (即 #include 或 "" 或 opencv 或 opencv2 ....???)
  • 链接并包含\include-path 的路径怎么样?我必须这样做吗?因为在VS中我得到错误“E1696:无法打开源文件“opencv2/opencv.hpp”“
  • 如果在第 5 步中使用 CUDA 安装,请选择 x64
  • 按照步骤操作,一切正常。然后,运行一个需要opencv的程序,报错:docs.microsoft.com/en-us/cpp/error-messages/compiler-errors-1/…"cannot open include file 'opencv2/opencv.hpp':no such file or directory"
【解决方案2】:

已接受答案的附加提示 - 如果您收到如下错误:

无效的转义序列\o

当您复制和粘贴文件系统路径时,请确保使用正斜杠 (/) 而不是反斜杠,所以

C:\openCV\opencv_contrib-3.2.0\modules

必须

C:/openCV/opencv_contrib-3.2.0/modules

相反。否则,您将得到转义序列\o 不存在的错误。

【讨论】:

    【解决方案3】:

    以前的帖子很完美。 VS 2017 有库版本 VS141。

    只是前一个的扩展。

    8 步。 cmake 后在 build 文件夹中生成 Opencv.sln。在 VS 2017 中打开这个项目

    我是先用方法,只是DEBUG x64版本

    输出如下所示

    调试后,再次切换到发布并构建整个解决方案。 32 位版本相同。您的最终解决方案位于构建文件夹下的安装位置。使用 contrib libs 整个过程在 I7 上花费了将近 30 分钟。只需用CMAKE摇晃直到零缺陷,包括FFMPEG、Contrib等路径。 VS 2017 中的最终版本。

    您可以在我的博客Here 上找到构建库的整个方法和安装

    【讨论】:

    • 我不知道为什么我在调试中找不到 x64 选项,就像您在博客中提到的这一步一样:“首先选择调试,x64 版本,如图所示,在整个上单击鼠标右键解决方案并点击图片上的构建解决方案。”
    • 嗨@globalex。我可以用VS2017成功构建opencv。我的项目编译完美。但 videocapture 在调试模式下无法正常工作。在发布模式下,一切正常。
    • 不得不对这两个答案投反对票,我按照说明花了 40 分钟,但没有人知道要包含的内容的名称/路径,现在我的 IDE 充满了“未找到”错误消息,我们包括什么?! (即 #include 或 "" 或 opencv 或 opencv2 ....???)
    • @aero。我们如何才能涵盖您在此步骤中的所有错误?它有效.. Tim Hsu,您需要使用 ffmpeg 构建 opencv 才能让视频捕获工作.. 还取决于捕获什么和平台。但总的来说 FFMPEG
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-09-25
    • 1970-01-01
    • 1970-01-01
    • 2018-02-09
    • 2018-02-01
    • 2018-08-18
    • 2017-10-15
    相关资源
    最近更新 更多