windows10在visual studio2019下配置使用openCV4.3.0


Posted in Python onJuly 14, 2020

openCV是基于C++开发的一个强大的图像处理库。在用C++处理图像或视频时通常会使用到openCV这个库,但是这个库并非C++中的标准库,因此在使用之前需要先下载,并加载配置到我们的项目中。
那么怎么配置呢?首先你得有以下的所有工具。

  • windows10系统。可以通过镜像安装,也可以通过CD或U盘安装。
  • Visual Studio2019,基于实(省)用(钱),我使用的是community免费版,点击此处可以下载并安装.

点击下面下载中的community2019然后安装即可,具体步骤可参考其他教程案例。

windows10在visual studio2019下配置使用openCV4.3.0

安装完visual studio后就是安装opencv了,opencv在写这篇博客的时候最新版为4.3.0,因此改教程以4.3.0为例,其他版本的安装方式相同。opencv点击此处可以下载

下载完成后直接双击exe文件提取编译好了的文件即可,安装完exe之后会有如下几个文件,其中build文件夹中保存着主要使用到的函数代码块,source文件夹中保存着相关的文档以及其他必要文件。

windows10在visual studio2019下配置使用openCV4.3.0

接下来就是要将opencv的安装路径配置到环境变量中。将opencv中的build文件夹下的x64文件夹下的vec15中的bin路径添加到环境变量中,如下图中我的opencv中的地址:

windows10在visual studio2019下配置使用openCV4.3.0

将以上地址拷贝后加入环境变量中。注意windows10中环境变量分为系统环境变量和用户环境变量,要看你的visual studio的环境变量是在哪一个里面。为了安全起见,建议都加上,如下图:

windows10在visual studio2019下配置使用openCV4.3.0

双击,新建,粘贴地址即可。

现在万事俱备,只欠…啥也不欠了,接下来就打开visual studio创建一个基本的C++项目,然后更改一些配置就可以写opencv代码了。点击创建新项目,找到C++控制台应用(空项目也可以),并输入一个项目名称和项目地址,如下两步:

windows10在visual studio2019下配置使用openCV4.3.0

windows10在visual studio2019下配置使用openCV4.3.0

点击创建之后,需要配置opencv所需的依赖。点击视图,找到“其他窗口”里面的“属性管理器”,点击之后,右边的侧栏中会出现属性管理器。双击项目名称,然后找到VC++目录,将“库目录”和包含目录分别改为opencv所在地址的库目录和包含目录(点击编辑即可),如下图:

windows10在visual studio2019下配置使用openCV4.3.0

注意:包含目录最好将两个都添加进去,一个是include所在的地址,一个是include文件夹下opencv2所在的地址。

windows10在visual studio2019下配置使用openCV4.3.0

那么接下来就愉快的写代码吧,哦,不,还有最后一步。配置链接器中的附加依赖项,附加依赖项就是和bin文件夹同地址中的lib文件夹中的“opencv_worldxxxd.lib"文件,其中xxx表示版本(如4.30版本,则xxx为430,后面的d表示debug),如果是release版的话,把d去掉即可。

windows10在visual studio2019下配置使用openCV4.3.0

这次,可以真正的愉快的敲代码了,敲代码的第一步就是先把头文件包含进来。opencv中几个重要的头文件就是:

windows10在visual studio2019下配置使用openCV4.3.0

把这些头文件都包含好了之后,再通过using namespace cv把cv名空间引入就行了(或者在每需要使用到cv库里的对象或函数时都在前面加一个cv::也行)。

那么接下来就来看一个简单的opencv例子吧,就简单的显示一张图片,图片在opencv中就是Mat对象。代码如下:

#include <iostream>
#include<opencv2/core/core.hpp>
#include<opencv2/highgui/highgui.hpp>
#include<opencv2/imgproc/imgproc.hpp>

using namespace cv;

int main()
{
  Mat example = imread("F:\\xxxxx\\zhiyezhao.PNG"); //图片地址
  if (example.empty()) {
    std::cout << "ERROR!" << std::endl;
    exit(EXIT_FAILURE); //如果读取不成功直接中断程序,避免引起之后代码产生不可预知的异常
  }
  imshow("我的职业照", example);
  waitKey(0); //这一行一定不要忘了,否则照片就会闪现的,此处表示窗口停顿多久,单位为毫秒,0表示永久

}

显示如下:
当然你们是看不到这张图片的,帅气的职业照是不能随意给大家看的(傲娇脸)。

到这里为止就大功告成啦,快乐的写你自己的代码去吧!

什么,你还是碰到了以下错误?

windows10在visual studio2019下配置使用openCV4.3.0

这个就是因为你没有使用x64模式而是x86模式,只需要把图中的模式改掉即可

windows10在visual studio2019下配置使用openCV4.3.0

什么,你又碰到了下面这个错误?

windows10在visual studio2019下配置使用openCV4.3.0

这个是因为使用了相对路径,去属性里面把链接器中的输入依赖项目改成绝对路径即可,如下:

windows10在visual studio2019下配置使用openCV4.3.0

接下来就没什么大问题了。

到此这篇关于windows10在visual studio2019下配置使用openCV4.3.0的文章就介绍到这了,更多相关vs2019配置使用openCV4.3.0内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中的Classes和Metaclasses详解
Apr 02 Python
Python中的默认参数详解
Jun 24 Python
python中子类调用父类函数的方法示例
Aug 18 Python
python合并已经存在的sheet数据到新sheet的方法
Dec 11 Python
Python构建图像分类识别器的方法
Jan 12 Python
python 读取dicom文件,生成info.txt和raw文件的方法
Jan 24 Python
python tools实现视频的每一帧提取并保存
Mar 20 Python
Python2与Python3的区别点整理
Dec 12 Python
Python 实现OpenCV格式和PIL.Image格式互转
Jan 09 Python
导致python中import错误的原因是什么
Jul 01 Python
Python使用requests模块爬取百度翻译
Aug 25 Python
python自动计算图像数据集的RGB均值
Jun 18 Python
解决python pandas读取excel中多个不同sheet表格存在的问题
Jul 14 #Python
Python matplotlib读取excel数据并用for循环画多个子图subplot操作
Jul 14 #Python
python3 循环读取excel文件并写入json操作
Jul 14 #Python
Python爬虫实例——scrapy框架爬取拉勾网招聘信息
Jul 14 #Python
Python爬虫爬取新闻资讯案例详解
Jul 14 #Python
Win10下配置tensorflow-gpu的详细教程(无VS2015/2017)
Jul 14 #Python
Python实现图片查找轮廓、多边形拟合、最小外接矩形代码
Jul 14 #Python
You might like
在php中使用sockets:从新闻组中获取文章
2006/10/09 PHP
PHP在线生成二维码代码(google api)
2013/06/03 PHP
PHP实现使用优酷土豆视频地址获取swf播放器分享地址
2014/06/05 PHP
在JavaScript中,为什么要尽可能使用局部变量?
2009/04/06 Javascript
createElement与createDocumentFragment的点点区别小结
2011/12/19 Javascript
用JQuery实现表格隔行变色和突出显示当前行的代码
2012/02/10 Javascript
js实现window.open不被拦截的解决方法汇总
2014/10/30 Javascript
javascript手风琴下拉菜单实现代码
2015/11/12 Javascript
JavaScript深度复制(deep clone)的实现方法
2016/02/19 Javascript
Java遍历集合方法分析(实现原理、算法性能、适用场合)
2016/04/25 Javascript
小白谈谈对JS原型链的理解
2016/05/03 Javascript
使用jQuery Rotare实现微信大转盘抽奖功能
2016/06/20 Javascript
jquery选择器中的空格与大于号&gt;、加号+与波浪号~的区别介绍
2016/06/24 Javascript
Bootstrop实现多级下拉菜单功能
2016/11/24 Javascript
Vue学习笔记进阶篇之多元素及多组件过渡
2017/07/19 Javascript
JS和Canvas实现图片的预览压缩和上传功能
2018/03/30 Javascript
python服务器端收发请求的实现代码
2014/09/29 Python
python爬取个性签名的方法
2018/06/17 Python
浅谈django三种缓存模式的使用及注意点
2018/09/30 Python
在Mac上删除自己安装的Python方法
2018/10/29 Python
python pandas消除空值和空格以及 Nan数据替换方法
2018/10/30 Python
python pyinstaller 加载ui路径方法
2019/06/10 Python
Python3内置函数chr和ord实现进制转换
2020/06/05 Python
python 自动识别并连接串口的实现
2021/01/19 Python
CSS3 重置iphone浏览器按钮input,select等表单元素的默认样式
2014/10/11 HTML / CSS
米兰必去买手店排行榜首位:Antonioli
2016/09/11 全球购物
薇姿法国官网:Vichy法国
2021/01/28 全球购物
美国购买韩国护肤和美容产品网站:Althea Korea
2020/11/16 全球购物
项目管理计划书
2014/01/09 职场文书
面试后的英文感谢信
2014/02/01 职场文书
《赵州桥》教学反思
2014/02/17 职场文书
报关员个人职业生涯规划书
2014/03/12 职场文书
花坛标语大全
2014/06/30 职场文书
离职报告范文
2014/11/04 职场文书
2014年社区妇联工作总结
2014/12/02 职场文书
VUE中的v-if与v-show区别介绍
2022/03/13 Vue.js