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脚本来控制Windows Azure的简单教程
Apr 16 Python
浅谈python对象数据的读写权限
Sep 12 Python
Python爬取附近餐馆信息代码示例
Dec 09 Python
python中退出多层循环的方法
Nov 27 Python
python把ipynb文件转换成pdf文件过程详解
Jul 09 Python
python urllib爬虫模块使用解析
Sep 05 Python
numpy.ndarray 实现对特定行或列取值
Dec 05 Python
Python 实现训练集、测试集随机划分
Jan 08 Python
python为QT程序添加图标的方法详解
Mar 09 Python
Pymysql实现往表中插入数据过程解析
Jun 02 Python
python中判断文件结束符的具体方法
Aug 04 Python
Python学习之异常中的finally使用详解
Mar 16 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
虫族 ZERG 概述
2020/03/14 星际争霸
一些花式咖啡的配方
2021/03/03 冲泡冲煮
PHP排序算法的复习和总结
2012/02/15 PHP
10个实用的PHP正则表达式汇总
2014/10/23 PHP
解决nginx不支持thinkphp中pathinfo的问题
2015/07/21 PHP
[原创]PHP字符串中插入子字符串方法总结
2016/05/06 PHP
很可爱的输入框
2008/08/03 Javascript
基于jquery的复制网页内容到WORD的实现代码
2011/02/16 Javascript
javascript常用的方法分享
2015/07/01 Javascript
jQuery实现图片走马灯效果的原理分析
2016/01/16 Javascript
Jquery和JS获取ul中li标签的实现方法
2016/06/02 Javascript
angularJS之$http:与服务器交互示例
2017/03/17 Javascript
NodeJS实现微信公众号关注后自动回复功能
2017/05/31 NodeJs
详解webpack解惑:require的五种用法
2017/06/09 Javascript
深入探究node之Transform
2017/07/20 Javascript
Angular入口组件(entry component)与声明式组件的区别详解
2018/04/09 Javascript
Vue作用域插槽slot-scope实例代码
2018/09/05 Javascript
在vue项目中使用Jquery-contextmenu插件的步骤讲解
2019/01/27 jQuery
微信小程序实现多行文字超出部分省略号显示功能
2019/10/23 Javascript
vue.js this.$router.push获取不到params参数问题
2020/03/03 Javascript
利用python实现命令行有道词典的方法示例
2017/01/31 Python
python中正则表达式 re.findall 用法
2018/10/23 Python
python 列表递归求和、计数、求最大元素的实例
2018/11/28 Python
关于django 1.10 CSRF验证失败的解决方法
2019/08/31 Python
Adobe Html5 Extension开发初体验图文教程
2017/11/14 HTML / CSS
英国最大的网上药品商店:Chemist Direct
2017/12/16 全球购物
7 For All Mankind官网:美国加州洛杉矶的高级牛仔服装品牌
2018/12/20 全球购物
简述DNS进行域名解析的过程
2013/12/02 面试题
2014年商场超市庆元旦活动方案
2014/02/14 职场文书
政法学院毕业生求职信
2014/02/28 职场文书
验房委托书
2014/08/30 职场文书
2014年除四害工作总结
2014/12/06 职场文书
公司停电通知
2015/04/15 职场文书
辞职信格式范文
2015/05/13 职场文书
硕士学位申请报告
2015/05/15 职场文书
公司老总年会致辞
2015/07/30 职场文书