VS2019 OpenCV安装与配置教程


VS2019和OpenCV的下载安装

VS2019可以去官网下载社区版本的,登陆一下微软账号即可,否则只有30天的试用期!下载安装配置教程网上有很多很详细的资料,这里我就不做过多的讲解了,OpenCV同样是去官网进行下载:Releases - OpenCV(官网链接),我们选择windows版本的进行下载,这里我下载的是OpenCV-4.6.0版本的(这里你也可以下载其他版本,但是OpenCV大版本还是有蛮大的区别的,),官网下载可能很慢,这里推荐复制下载链接到“迅雷”进行下载!
在这里插入图片描述
下载完成后进行安装(解压),最好不要安装到C盘和带中文路径的地方!

在这里插入图片描述

OpenCV的配置

配置系统环境变量

打开系统环境变量,将OpenCV的安装(解压)路径 “D:\Software\OpenCV-4.6.0\opencv\build\x64\vc15\bin” 添加到 path 当中(不一定是我这个目录,而是找到自己安装的的目录来)
在这里插入图片描述

VS2019 OpenCV工程配置文件的创建

打开VS2019,新建一个C++的空项目(设置项目的名字和保存位置,并添加CPP文件)

在这里插入图片描述
在这里插入图片描述为了防止每次创建VS2019 OpenCV工程时都需要配置一下整个工程找到OpenCV的库,这里我们可以创建一个“项目属性表”,后面每次创建工程的时候,把这个“项目属性表”添加进工程即可完成一次性配置,创建的方式如下图所示,首先打开“属性管理器”:视图 ->其他窗口 ->属性管理器。然后根据自己工程的情况选择创建debug还是release工程,32位还是64位的工程,我们这里以64位Debug为例,在“Debug|x64”处右击添加新项目属性表。然后更改名称(我这里更改为:“OpenCV64Debug.props”)进行添加,并记住保存位置,以方便找到该配置文件。
在这里插入图片描述
然后就是在“Debug|x64”下双击刚添加的配置文件,在“VC++目录”下的“包含目录”下分别添加下面的几个目录,如果你和我的OpenCV版本不一样,可能“D:\Software\OpenCV-4.6.0\opencv\build\include”下还有其它目录,一并添加进去即可(不一定是我这个目录,而是找到自己安装的的目录来)

D:\Software\OpenCV-4.6.0\opencv\build\include
D:\Software\OpenCV-4.6.0\opencv\build\include\opencv2

在这里插入图片描述
然后继续在“VC++目录”下的“库目录”下添加下面的目录(不一定是我这个目录,而是找到自己安装的的目录来)

D:\Software\OpenCV-4.6.0\opencv\build\x64\vc15\lib

在这里插入图片描述
继续在“链接器”下的“输入”下的“附加依赖项”添加下面的库,其中在该库的目录下有两个lib库,分别是“opencv_world460.lib”和“opencv_world460d.lib”,数字后面带d的表示debug,因为本工程选择的debug版本,所以选择带d版本的库(不一定是我这个目录和库,而是找到自己安装的的目录和工程模式来)

D:\Software\OpenCV-4.6.0\opencv\build\x64\vc15\lib\opencv_world460d.lib

在这里插入图片描述
至此,OpenCV的配置就完成了

OpenCV的测试

在创建工程时新建的CPP文件输入一下代码!然后选择对应的工程模式:32位还是64位,debug还是release工程。(实时处理摄像头的图像)

#include <iostream>
#include <opencv2/opencv.hpp>

using namespace std;
using namespace cv;

int main(int argc, char** argv)
{
	//VideoCapture cap(0);
	VideoCapture cap("鸡你太美.mp4");
	if (!cap.isOpened())
	{
		printf("Can not open a camera\n");
		return -1;
	}
	
	while (true)
	{
		Mat frame;
		cap >> frame;
		if (frame.empty())
		break;
		
		imshow("frame", frame);
		
		// 非均值滤波
		Mat robot = (Mat_ <int>(2, 2) << 1, 0, 0, -1);
		Mat result;
		filter2D(frame, result, CV_32F, robot, Point(-1, -1), 127, BORDER_DEFAULT);
		convertScaleAbs(result, result);
		imshow("robot filter", result);
		
		//等待 30 秒,如果按键则推出循环
		if (waitKey(30) >= 0)
		break;
	}
	
	waitKey(0);
	return 0;
}

最终效果如下:
在这里插入图片描述

  • 11
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值