使用opencv_contrib模块成功构建后,OpenCV 3.1.0中缺少face.hpp

时间:2016-10-30 18:49:17

标签: c++ cmake opencv3.1

我正在使用OpenCV在C ++中进行一个项目并坚持添加面部识别模块

我使用以下make命令构建了没有错误的OpenCV额外模块(opencv_contrib)

$ cmake -D CMAKE_BUILD_TYPE=RELEASE OPENCV_EXTRA_MODULES_PATH=../opencv_contrib/modules ../opencv-3.1.0  
$ make 
$ sudo make install

我复制代码进行测试时,我的代码涉及以下内容

#include "opencv2/core/core.hpp"
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/objdetect/objdetect.hpp"
#include "opencv2/face.hpp"        //-----> Doesn't exist

当我尝试在code :: blocks中构建代码时,显示以下错误:

~/Desktop/OpenCV_Project/OpenCv_Demos/Face_Recognition/main.cpp|6|fatal error: opencv2/face.hpp: No such file or directory|

我也搜索了链接目录,没有文件face.hpp

如何确保在make / make install之后使用openCV源构建额外的模块?

其他要求:
Ubuntu 15.10
代码::块16.10
gcc版本5.2.1

1 个答案:

答案 0 :(得分:2)

显然,我设法通过执行以下操作来解决问题。

1.导航到opencv_contrib / modules目录并复制face文件夹
2.导航到opencv-3.1.0 / module目录并粘贴 3.创建一个构建文件夹(或构建的任何地方)并执行以下make命令。

cmake -D CMAKE_BUILD_TYPE=RELEASE  ..

即。没有额外的模块(因为我们已经在opencv-3.1.0 / modules中复制了所需的模块)

4.然后

make
sudo make install

我想知道这种方法的缺点以及为什么没有记录在任何地方。