DLIB OpenCv 集成(toMat())抛出编译器错误

DLIB OpenCv integration (toMat()) throwing compiler error

我想做的是使用 DLIBs toMat() 函数将 DLIB 人脸检测转换为 OpenCV Mat 进行后期处理。

到目前为止,DLIB 工作正常。例如。也使用示例中包含的 face_landmark_detection_ex.cpp。 (意思是我可以传入图像并获得地标输出)

即使添加所需的包含 #include <dlib/opencv.h> 也没有问题。

但是一旦我添加行 toMat(img);(甚至没有将它分配给 OpenCv Mat),我就修复了以下编译器错误:

Cannot open include file : 'opencv2/core/core.hpp' : No such file or directory

C:\dlib-19.4\dlib-19.4\dlib\opencv\cv_image.h

抛出

知道如何摆脱这个错误吗?

PS:在我添加 #include <dlib/opencv.h> 之后,intelisense 开始提示我 toMat(img); 所以文件应该存在(至少对于声明)

编译器似乎找不到包含 core.hppopencv2/core 目录。 你有没有添加 C:\dlib-19.4\dlib-19.4\dlib 到您的编译器的包含目录?

实际上 Properties > Linker > Input

中缺少此条目

C:\OpenCv\build\x64\vc14\lib\opencv_world320.lib

或(更动态):

$(OPENCV_DIR)\lib\opencv_world320.lib

但是 如果我将它添加到 "Additional" Property Sheet,它就不起作用了。它需要添加到 Project Properties 本身(不知道为什么)