我正在尝试调试一个令人沮丧的问题,即我无法在 OpenCV 中加载视频文件。一个建议是放弃OpenCV 预建库,而是在与失败项目相同的机器上构建 OpenCV。
这就是我现在想要做的。
在有关如何在 Microsoft Visual Studio 中使用 OpenCV 构建应用程序的 OpenCV 快速入门中,一个重要步骤是通过打开项目的属性页,将附加的包含目录添加到项目属性表中,导航到Configuration Properties -> C/C++ -> General -> Additional Include Directories
. 建议使用预构建的发行版添加目录C:\OpenCV2.4.6\build\include
,并且在该目录中确实有子目录opencv
和opencv2
. 我的项目(如大多数 OpenCV 项目)需要的文件之一是highgui.hpp
来自该行
#include "opencv2/highgui/highgui.hpp"
在预构建的 OpenCV 发行版highgui.hpp
中C:\OpenCV2.4.6\build\include\opencv2\highgui
,由于附加的包含目录,因此在编译时可以正确获取。
在我的机器上使用 CMake 生成并使用 Visual Studio 2012 构建了最新版本的 OpenCV(尽管可能不成功),但我找不到highgui.hpp
. 它不在C:\Users\timregan\Documents\GitHub\opencv\build\include
(实际上没有子目录opencv
也不opencv2
在那里)。它位于 C:\opencv-2.4\modules\highgui\include\opencv2\highgui。
为了在我的机器上正确生成,我省略了哪些步骤、标志等?为什么在我生成并构建 OpenCV 之后,opencv
和opencv2
子目录完全丢失了?C:\Users\timregan\Documents\GitHub\opencv\build\include
(注意,我在 Windows 8 机器上使用 CMake 2.8.12 和 Visual Studio 2012。)