c++ - OpenCV c++ 找不到 <opencv2/face.hpp>

标签 c++ opencv computer-vision clang

我正在尝试使用 opencv2/face.hpp。我在我的代码中用这个调用它...

#include <opencv2/face.hpp>
#include <opencv2/imgproc.hpp>
#include <opencv2/highgui.hpp>
#include <opencv2/core.hpp>
#include <opencv2/video.hpp>

除了face.hpp之外的所有hpp文件都可以正常工作。我在 macOS Catalina 上使用此进行编译:

clang++ -std=c++11 source.cpp `pkg-config --cflags --libs opencv` -o test

我收到此错误:

RPPG.cpp:10:10: fatal error: 'opencv2/face.hpp' file not found
#include <opencv2/face.hpp>

奇怪的是我有face.hpp。当我运行时:

ls /usr/local/Cellar/opencv/4.5.0_4/include/opencv4//opencv2/

我看到 face.hppface/ 以及我包含的所有其他 hpp 文件。我是通过brew安装的,我认为这就是clang拉库的地方。为什么找不到脸?

最佳答案

我看到有一些赞成票,所以发布我的解决方案。我只需编辑我的 pkg-config 路径。

因为我想在这里安装 opencv 版本(来自brew):

/usr/local/Cellar/opencv/4.5.0_4/include/opencv4//opencv2/

我使用了这个命令:

$ export PKG_CONFIG_PATH="/usr/local/Cellar/opencv/4.5.0_5/lib/pkgconfig/

这将 opencv4 添加到了 pkg-config 可用的库列表中。当我运行时:

pkg-config --libs opencv

我得到了同样的结果,但是我现在有了 opencv4,所以当我运行时:

pkg-config --libs opencv4

我得到了我想要的。 face.hpp 包含在此版本中。

关于c++ - OpenCV c++ 找不到 <opencv2/face.hpp>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65327593/

相关文章:

algorithm - 如何制作木炭绘图过滤器

c++ - 如何从图像中删除矩形轮廓

c++ - OpenCV:对 cv::imwrite 的 undefined reference

python - 如何从图像的热图数据生成边界框数据?

c++ - 转发引用绑定(bind)优先级

image-processing - 在 OpenCV 中检测对象并进行实时比较

c++ - 在 Mac 上安装 C++ OpenCV

c++ - 隐藏在构造函数初始化列表中的名称

c++ - 将文本日期和时间转换为 ATL::CTime

c++ - 在 qt 中调用构造函数外部的新运算符时崩溃