1

我正在尝试使用 OpenCV 多跟踪器,但找不到tracking.hpp. 我已经根据这些说明使用OpenCV-contrib模块构建了 OpenCV 。现在在 Visual Studio 中,我已经这样做了:

在此处输入图像描述

$OPENCV_DIR用户变量在哪里:

在此处输入图像描述

我也有;

  • 将路径添加C:\opencv\opencv4.2.0\opencv-4.2.0\build\install\x64\vc16\libLinker -> Gnereal -> Additional Library Directories.
  • 添加opencv_world420.libLinker -> Input -> Additional Dependencies

现在的问题是opencv.hpp并且tracking.hpp没有被检测到:

在此处输入图像描述

两者都opencv.hpp存在tracking.hppC:\opencv\opencv4.2.0\opencv-4.2.0\build\install\include\opencv2. 我应该怎么做才能让程序识别OpenCV-contrib模块?

4

1 回答 1

2

注意:这个答案主要是通过结合和扩展我和其他人的评论而形成的:

问题是您指定的“附加包含目录”与行中指定的标题名称之间存在“冲突” #include,因为您已指定文件夹“opencv2”两次

例如,该行:

#include <opencv2/tracking.hpp>

在每个定义的搜索路径中调用tracking.hpp子目录中查找文件。opencv2就您而言,这是在寻找:

OPENCV_DIR\include\opencv2\opencv2\tracking.hpp

…并且该文件(实际上是文件夹)不存在。

因此,只需将其指定为您的(单个)“附加包含目录:”

OPENCV_DIR\包括

…然后,当编译器“构造”标头的路径时,它将附加/opencv2/tracking.hpp到(每个)指定的搜索目录,并且能够找到:++ OPENCV_DIR\include,因为这将评估为:/opencv2/tracking.hpp

OPENCV_DIR\include\opencv2\tracking.hpp

于 2020-01-16T16:27:16.523 回答