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采用django框架实现支付宝即时到帐接口
May 17 Python
python进程管理工具supervisor的安装与使用教程
Sep 05 Python
使用Python快速搭建HTTP服务和文件共享服务的实例讲解
Jun 04 Python
详解Django-auth-ldap 配置方法
Dec 10 Python
Win10下安装并使用tensorflow-gpu1.8.0+python3.6全过程分析(显卡MX250+CUDA9.0+cudnn)
Feb 17 Python
浅谈在JupyterNotebook下导入自己的模块的问题
Apr 16 Python
浅谈sklearn中predict与predict_proba区别
Jun 28 Python
Idea安装python显示无SDK问题解决方案
Aug 12 Python
Python脚本打包成可执行文件过程解析
Oct 20 Python
Python制作运行进度条的实现效果(代码运行不无聊)
Feb 24 Python
python推导式的使用方法实例
Feb 28 Python
Python实现随机生成迷宫并自动寻路
Jun 13 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配合jquery实现增删操作具体实例
2013/12/12 PHP
PHP提高编程效率的20个要点
2015/09/23 PHP
浅谈Laravel中的一个后期静态绑定
2017/08/11 PHP
visual studio code 调试php方法(图文详解)
2017/09/15 PHP
各种常用浏览器getBoundingClientRect的解析
2009/05/21 Javascript
基于Jquery 解决Ajax请求的页面 浏览器后退前进功能,页面刷新功能实效问题
2010/12/11 Javascript
改进UCHOME的记录发布,增强可访问性用户体验
2011/01/17 Javascript
js 编码转换 gb2312 和 utf8 互转的2种方法
2013/08/07 Javascript
基于Jquery实现键盘按键监听
2014/05/11 Javascript
js使用html()或text()方法获取设置p标签的显示的值
2014/08/01 Javascript
JavaScript列表框listbox全选和反选的实现方法
2015/03/18 Javascript
JS组件Bootstrap实现弹出框效果代码
2016/04/26 Javascript
Angularjs中的事件广播 —全面解析$broadcast,$emit,$on
2016/05/17 Javascript
JavaScript中对象的不同创建方法
2016/08/12 Javascript
js print打印网页指定区域内容的简单实例
2016/11/01 Javascript
强大的 Angular 表单验证功能详细介绍
2017/05/23 Javascript
web前端vue之vuex单独一文件使用方式实例详解
2018/01/11 Javascript
JavaScript高阶教程之“==”隐藏下的类型转换
2019/04/11 Javascript
微信小程序 搜索框组件代码实例
2019/09/06 Javascript
Layui动态生成select下拉选择框不显示的解决方法
2019/09/24 Javascript
利用React高阶组件实现一个面包屑导航的示例
2020/08/23 Javascript
[02:52]2014DOTA2西雅图国际邀请赛 CIS战队巡礼
2014/07/07 DOTA
python通过scapy获取局域网所有主机mac地址示例
2014/05/04 Python
pandas将DataFrame的列变成行索引的方法
2018/04/10 Python
详谈python3 numpy-loadtxt的编码问题
2018/04/29 Python
Python get获取页面cookie代码实例
2018/09/12 Python
Python+Selenium使用Page Object实现页面自动化测试
2019/07/14 Python
django有外键关系的两张表如何相互查找
2020/02/10 Python
Django中Q查询及Q()对象 F查询及F()对象用法
2020/07/09 Python
Python性能测试工具Locust安装及使用
2020/12/01 Python
LUISAVIAROMA德国官网:时尚奢侈品牌购物网站
2020/11/12 全球购物
日本亚马逊官方网站:Amazon.co.jp
2020/04/14 全球购物
新锐科技Java程序员面试题
2016/07/25 面试题
学校志愿者活动总结
2014/06/27 职场文书
酒店七夕情人节活动策划方案
2014/08/24 职场文书
排查并解决Oracle sysaux表空间异常增长
2022/04/20 Oracle