C++ 无法打开源文件 "opencv2/tracking.hpp"

C++ cannot open source file "opencv2/tracking.hpp"

我正在尝试使用 OpenCV 多跟踪器,但找不到 tracking.hpp。我已经使用基于 these instructionsOpenCV-contrib 模块构建了 OpenCV。现在在Visual Studio,我做了这个:

其中 $OPENCV_DIR 是用户变量:

我也有;

现在的问题是未检测到 opencv.hpptracking.hpp:

opencv.hpptracking.hpp 都存在于 C:\opencv\opencv4.2.0\opencv-4.2.0\build\install\include\opencv2 中。我应该怎么做才能让程序识别 OpenCV-contrib 模块?

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

问题是 'conflict' 在您指定的 "Additional Include Directories" 和 #include 行中 header(s) 的指定名称之间,因为您指定了文件夹,"opencv2"两次

例如,行:

#include <opencv2/tracking.hpp>

在每个已定义的搜索路径中的名为 opencv2sub-directory 中查找文件 tracking.hpp。在您的情况下,这是在寻找:

OPENCV_DIR\include\opencv2\opencv2\tracking.hpp

…那个文件(实际上是文件夹)不存在。

所以,只需将此指定为您的(单身)"Additional Include Directory:"

OPENCV_DIR\include

…然后,当编译器'constructs'路径为header时,它会追加/opencv2/tracking.hpp到(每个)指定的搜索目录,并且能够找到:OPENCV_DIR\include + / + opencv2/tracking.hpp,因为这将计算为:

OPENCV_DIR\include\opencv2\tracking.hpp