opencv的opencv_contrib的版本要一致,否则编译时会出现问题
下载opencv_contrib(人脸识别、跟踪算法 库) https://github.com/opencv/opencv_contrib -> 选择release -> 找到对应版本 -> 下载 Source code
运行cmd 执行 cmake-gui
在弹出来的cmake选择框中 -> Browse Source... -> 选择 F:/opencv/opencv-3.1.0/sources 目录(CMakeLists.txt文件在这里)
-> Browse Build... -> 选择 F:/opencv/project/workspace_vs/OpenCV310Sources_contrib 目录
点击 Configure -> specify the generator for this project 选择 Visual Studio 14 2015 Win64 ,然后点击 finish 开始配置
当出现 Configuring done 后,在面板中找到 OPENCV_EXTRA_MODULES_PATH,然后选择要添加的拓展模块 F:\opencv\opencv_contrib-3.1.0\modules
然后点击 Generate 生成vs2015解决方案,出现 Generating done 表示生成完成 OpenCV310Sources_contrib\OpenCV.sln
打开 OpenCV310Sources_contrib\OpenCV.sln 解决方案 -> CMakeTargets -> INSTALL 右键 点击生成
编译完成后会生成 F:\opencv\project\workspace_vs\OpenCV310Sources_contrib\install 目录
将以前的设置
F:\opencv\opencv-3.1.0\build\x64\vc14\bin 设置到环境变量
F:\opencv\opencv-3.1.0\build\include
F:\opencv\opencv-3.1.0\build\include\opencv
F:\opencv\opencv-3.1.0\build\include\opencv2 这三个目录添加到vs工程的附加include目录
F:\opencv\opencv-3.1.0\build\x64\vc14\lib 添加到附加lib目录 再将 opencv_world310d.lib 添加到 链接->输入->附加依赖项
的 F:\opencv\opencv-3.1.0\build 都替换成 F:\opencv\project\workspace_vs\OpenCV310Sources_contrib\install
然后 链接->输入->附加依赖项 将原先的 opencv_world310d.lib (属于F:\opencv\opencv-3.1.0\build\x64\vc14\lib) 去掉,
然后添加 F:\opencv\project\workspace_vs\OpenCV310Sources_contrib\install\x64\vc14\lib 下所有 .lib
最后写段代码测试一下环境是否正确
#include “../common/common.hpp”
void main(int argc, char** argv)
{
Mat src = imread(getCVImagesPath("images/cvtest.png"), IMREAD_COLOR);
imshow("src2-3", src);
waitKey(0);
}