目录
一、OpenCV 下载安装
解压到任意位置,如下图
配置环境变量,刚刚解压的文件夹来配置。
注意!重启电脑,不然VS会说找不到dll当然你可以先不,如果找得到当我没说,至少我报错了。
二、配置VS
打开你的项目,这是我的项目,右键项目 -- > 属性
2.1 设置包含目录
2.2 设置库目录
2.3 设置附加依赖项
这里会因为opencv版本不同而不同,我这个版本里面是叫这个名字,根据自己的版本看看叫什么
位置:你们的库目录下面的那个lib文件
我的位置:D:\software\opencv\build\x64\vc16\lib
长这样
2.4 有帮助的知识点
这里我要提一嘴,包含目录、库目录、附加包含目录、附加库目录、附加依赖项。
2.4.1 第一个知识
有些不知所以然的教程喜欢一股脑全配置,自己不知道为什么。其实这两个附加,真的是附加!在附加里配置会配置到你的项目中,在包含目录、库目录中会配置到你的解决方案中。看下图
我这个解决方案叫QtOpencv,下面有一个项目叫QtOpencv(名字起一样而已)可以有第二个项目test2。
2.4.2 第二个知识
附加依赖项是精准告诉项目要了哪个lib。但是其实附加库目录就是在告诉项目我们有什么lib,附加库目录所配置的路径下的lib全都会被识别进去。为什么还要单独配置哪个lib呢?
附加依赖项有两种一种叫静态lib一种叫动态lib(这种其实还会有跟他相配的dll出现)附加库目录仅仅会把静态文件读取了,动态文件dll根本不会读取所以我们必须单独说它存在。然后只有运行的时候才会去找这个dll,找不到就报错dll找不到。其实我上面配置环境变量的时候就把这个dll包含进环境变量了!要是没有重启电脑,报错找不到就别怪我了。
所以,有些教程真的自己没搞清楚就在瞎配置,差一个都不行一样,试试我的方法吧。
三、使用opencv
头文件
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include "opencv2/imgproc/types_c.h"
using namespace cv;
具体怎么用我就不赘述了,这个要是没报错那就是进来了
///Add
cv::Mat img = cv::imread("C:\\Users\\WorkBook\\Desktop\\入职资料\\092841c3f5595b336fe38f60cfc4567.jpg");//file path
cv::cvtColor(img, img, CV_BGR2RGB);