opencv3.4.5和vs2015/2017配置

本文详细介绍了如何在Visual Studio 2015/2017中配置OpenCV 3.4.5,包括下载与安装Visual Studio、OpenCV,配置系统环境变量,以及在VS中进行必要的项目配置,确保能顺利运行图像处理和摄像头测试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

opencv3.4.5和vs2015/2017配置

Visual Studio下载及安装

下载

1.vs官网下载旧的IDE
在这里插入图片描述
在这里插入图片描述
2.某软件管家里有可以直接下载
3.百度云你懂的
社区版免费,企业版个人觉得更好用一点

安装

2015以上的版本都可以
2015在安装时自定义安装勾选语言C++
2017在安装时勾选C++桌面相关

opencv的下载及安装

下载

https://opencv.org/releases/#
在这里插入图片描述
这里选择windows下载来

解压

双击下载好的opencv,选择合适的路径,点击Extract,等待解压。
在这里插入图片描述
在这里插入图片描述

系统环境变量配置

此电脑->右击->属性->高级系统设置->环境变量->path->编辑->具体路径D:\opencv\build\x64\vc14\bin
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
此处4.1.2可以是任何你安装的型号

相关文件的配置

注意:网上很多教程没有这一步,会报那种找不到dll文件的错误,是因为没有将opencv里面的相关文件复制到C盘中的文件夹里面
操作方法:将bin目录下面的opencv_world341.dll和opencv_world341d.dll文件复制到C:\Windows\SysWOW64这个文件夹里面即可
将bin目录里面的opencv_ffmpeg341_64.dll复制到C:\Windows\System32这个文件夹里面

如果是opencv其他的版本,把对应的dll文件移动到上述两个C盘文件夹即可!

vs配置属性管理器相关配置

1.新建一个空项目

2.在源文件添加新建项main.cpp

3.配置管理器 可以配置dubug x64

在这里插入图片描述

4.项目->属性

配置的管理器和属性一定要对应!!!
在这里插入图片描述

5.主要配置

vc++目录

包含目录:D:\opencv\3.4.5\build\include
D:\opencv\3.4.5\build\include\opencv
D:\opencv\3.4.5\build\include\opencv2
库目录:D:\opencv\opencv345\build\x64\vc14\lib
(D:\opencv\opencv345\cmake_build\install\x64\vc14\lib图片的库目录路径和大家可能不太一样,我这里之前cmake过)
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

链接器

输入->->附加依赖项->(如果配置dubug添加opencv_world345d.lib,如果配置release则添加opencv_world345.lib
在这里插入图片描述

如此这样配置完成

勾选微软符号服务器(此步为可选项)

其实到上一步已经配好了,但是到了关键时候VS2017总是说我少各种dll文件,百度上面说不用理这种错误,可以选择勾选微软符号服务器来下载缺失的dll文件

操作步骤:左键调试->选项->常规 勾选启动源服务器支持
在这里插入图片描述
符号那一项勾上微软符号服务器
在这里插入图片描述
注意:可以用一个文件夹来缓存下载的dll文件,只是第一次加载,不用担心。或者,你也可以等加载完了之后,再把之前勾选的取消掉,也没有问题。

调试

图片测试

Mat img = imread(“这里输入地址”);
这里的地址可以是相对地址也可以是绝对地址
以下几种写法都可以
双斜杠(注意方向)D:\VS_project\1.jpg
单斜杠D:/VS_project/1.jpg
相对地址 在工程文件夹里放入图片
可以直接 输入 1.jpg

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

using namespace cv;
 
int main()
{
	// 读入一张图片 
	Mat img = imread("这里输入地址");
	// 创建一个名为 "img"窗口    
	namedWindow("img");
	// 在窗口中显示图片   
	imshow("img", img);
	// 等待6000 ms后窗口自动关闭    
	waitKey(6000);
	return 0;
}

摄像头测试

#include "opencv2/opencv.hpp"  
#include <windows.h>
int main(int argc, char* argv[]){
	//摄像头初始化、开启
	VideoCapture capture;
	Mat frame;
	capture.open(0);
	if (!capture.isOpened()){//打开失败返回-1
		cout << "No camera!\n" << endl;
		return -1;
	}
	while (1) {
		capture >> frame;//刷新
		if (frame.empty())//帧空跳出循环
			break;
		imshow("frame", frame);
		if (cvWaitKey(20) == 'q')
			break;
		}
}

补充

可能摄像头使用存在包版本报错问题,网友说是高版本开始不兼容C风格
下给出可以使用代码

#include <opencv2/opencv.hpp>
using namespace cv;
#include <iostream>
using namespace std;

int main()
{
	VideoCapture cap;    //创建存储视频文件或者设备的对象
	cap.open(0);    //打开视频文件或者视频设备
	if (!cap.isOpened())
	{
		cout << "could not open the VideoCapture !" << endl;
		system("pause");
		return -1;
	}

	const char* windowsName = "Example";
	int k = -1;

	while (true)
	{
		Mat frame;
		bool ok = cap.read(frame);
		if (!ok)    //判断视频文件是否读取结束
			break;
		imshow(windowsName, frame);    //从视频对象中获取图片显示到窗口
		k = waitKey(33);    //每33毫秒一张图片
		if (k == 27) break;    //按下退出键:Esc
	}

	waitKey(-1);
	return 0;
}

本文参考了CSDN博主「King_LJames」的原创文章,
原文链接:https://blog.csdn.net/qq_41175905/article/details/80560429
一路装装过来遇到了许多奇奇怪怪的玄学bug,也是感谢许多网友的帮助.
cmake的版本有缘再写

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值