我需要创建一个示例视频来可视化HaarCascade如何在OpenCV上运行(代码不起作用)

时间:2018-01-23 13:11:14

标签: visual-studio opencv computer-vision opencv3.1

你好吗?

我正在尝试创建这样的视频: https://youtu.be/L0JkjIwz2II

或者像这样: https://youtu.be/hPCTwxF0qf4

我正在努力让这段代码正常工作: https://github.com/Tubeliar/HAARCascadeVisualization

我在Windows 10上使用Visual Studio 2017。 我已正确添加了include目录和库目录。 我创建它作为控制台应用程序。 我添加了#include" stdafx.h"在主文件的开头。

这是Microsoft Visual Studio向我显示的错误:

First image of errors

Second image of errors

你可以帮我解决这个问题吗? 为了使这项工作正常,我应该知道什么?

谢谢大家, 安德烈

1 个答案:

答案 0 :(得分:0)

正如已经注意到的那些错误确实是链接器错误。如果编译器没有抱怨这意味着你已经包含了正确设置的路径,那么你就赢了一半。

对于链接器错误,您可以尝试以下方法:

  • 确保您的* .lib文件是为您构建自己的项目的同一目标构建的。
    • 如果您使用NuGet,那么您可以查看项目的/ packages文件夹。浏览到/ packages / [package name] / build / native / lib / [architecture] /。在那里你会找到像v120或v140这样的文件夹。对于Visual Studio 2017,他们需要是v141。如果它们丢失了,那么你可以告诉VS定位旧平台(项目属性 - > general - > platform toolset)
    • 如果您自己构建了这些库,那么您是否可以针对不同的平台进行类似的操作?尝试再次构建OpenCV库并确保将目标设置为v141(或您想要使用的任何内容)。
  • 确保链接器可以找到您的库。如果您正在使用NuGet,则此步骤不是必需的,但如果您自己构建了库,或者您下载了预构建的库,那么请进入项目设置并执行以下操作:
    • 转到VC ++目录 - >库目录,编辑该值并确保包含* .lib文件的文件夹在那里。
    • 转到链接器 - >输入 - >其他依赖项,编辑它并放入所有* .lib文件。只是他们的名字,而不是完整的路径在你的情况下,你只需将opencv_world331d.lib放在那里。

请注意,每个配置都需要执行上述任何设置。通常,x86和x64架构与调试或发布配置相结合。如果您切换其中任何一项,则必须再次检查上述步骤。这是一个麻烦,所以你最好定义一个属性表,然后你可以在每次执行OpenCV项目时重用它。 OpenCV 2.4's documentation中有一个教程,有些人已经premade ones