网上教程很多,本文只记录关键地方。
1、注明平台类型,默认是win32。
2、config
区域1和区域2,必须没有红色才能Generate。
区域2的问题如下处理:CMakeDownloadLog.txt
区域1设置:首先找到“BUILD_opencv_world”和“OPENCV_ENABLE_NONFREE”这两个变量,在变量后面的方框内打上“√”。第一个变量的含义是生成一个大的.lib文件,在配置链接器时只有一个“opencv_world410d.lib”文件。第二个变量的含义是为了在编译成功后可以使用具有专利保护的算法,如果该变量不被选中,就不能使用例如SIFT算法在内的具有专利保护的算法,之后找到“OPENCV_EXTRA_MODULES_PATH”变量,该变量的含义是告诉编译器扩展包的源码在哪里,选择我们刚才下载的opencv_contrib安装包里的modules文件夹。如果这个变量为空,在编译过程中也不会报错,只是安装了OpenCV的基础版。
区域1有红色,反复多次config 直到没有红色为止 就可以了。
3、先要生成整个解决方案,然后单个生产install。
4、
配置环境变量: 【环境变量】->【系统变量】->【Path】
在变量值后加 F:\opencv\opencvProj\install\x64\vc15\bin
注意: 这要改成你的路径.
进行工程属性配置:
生成后把opencv和contrib综合了起来。所以配置的时候只需要用.\install了。
这是生成的文件,只需保留install即可,其他的可以删除,节省空间。
VC++目录–包含目录
设置VC++目录下的包含目录,\install\include、\include\opencv2。
VC++目录–库目录
设置VC++目录–库目录,\install\x64\vc15\lib
debug:opencv_world420d.dll
release:opencv_world420.dll
5、测试
#include <iostream>
#include <opencv2/core/core.hpp>
#include<opencv2/highgui/highgui.hpp>
using namespace cv;
#include <opencv2/core/core.hpp>
#include<opencv2/highgui/highgui.hpp>
using namespace cv;
int main()
{
Mat img = imread("E:/项目/花的种类识别/1.jpg");//读入一张图片
namedWindow("Test"); //创建一个名为Test窗口
imshow("Test", img); //窗口中显示图像
waitKey(0);
{
Mat img = imread("E:/项目/花的种类识别/1.jpg");//读入一张图片
namedWindow("Test"); //创建一个名为Test窗口
imshow("Test", img); //窗口中显示图像
waitKey(0);
}