OpenCV(c++)-1 安装和配置OpenCV4.4(Windows+visual studio 2019)
@
安装OpenCV4
OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac OS操作系统上。 [1] 它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。
OpenCV用C++语言编写,它具有C ++,Python,Java和MATLAB接口,并支持Windows,Linux,Android和Mac OS,OpenCV主要倾向于实时视觉应用,并在可用时利用MMX和SSE指令, 如今也提供对于C#、Ch、Ruby,GO的支持。
在Windows系统安装OpenCV4
本篇文章将介绍在Windows系统安装OpenCV4和基于visual studio2019的环境配置方式。
1、 下载OpenCV SDK
链接:https://pan.baidu.com/s/1ijyx8mrQdowSJjPaRQBdbQ 提取码:n048
2、 安装
双击opencv-4.4.0-vc14_vc15.exe解压即可,路径可以自行选择。单击【Extract】按钮,便可以等待解压过程的结束。

3、 配置环境变量
右键单击“我的电脑”,并选择【属性】,打开“系统”界面,如下图所示,在这一界面中选择【高级系统设置】,进入“系统属性”界面。

在“系统属性”界面内单击【环境变量】按钮,并在新跳转出的页面中的“系统变量”部分找到“Path”变量,如图所示,在其后添加如下路径:
C:\Program Files\OpenCV\build\x64\vc15\bin (使用自行选择的解压路径)

配置visual studio 2019
配置包含路径
1、 配置环境的主要目的是告诉计算机OpenCV放在哪儿,以及告诉IDE应该去哪里寻找头文件和库文件。首先我们启动vs,创建一个控制台应用。

2、创建完成后打开项目,修改上方的“Debug”模式,将其修改为“x64”模式,如图:

3、依次单击界面上方的【视图】->【其他窗口】->【属性管理器】,在右侧会出现“属性管理器”界面,如图所示:

4、右键“Debug|x64”选择【添加新项目属性表】,添加后双击将其打开,如图所示:

5、属性页的“VC++目录”的“包含目录”和“库目录”,以及“链接器”中的“附加依赖项”,便是我们需要修改的地方。在“包含目录”里添加如下两个文件路径:
C:\Program Files\OpenCV\build\include
C:\Program Files\OpenCV\build\include\opencv2
配置库目录:
C:\Program Files\OpenCV\build\x64\vc15\lib
配置链接器:
在“链接器”的“输入”项中的“附加依赖项”添加opencv_world440d.lib,如图:

此时项目目录中会生成一个属性配置文件,可将其保存下来,下次创建opencv目录直接将该配置导入即可,无需再次配置

验证配置结果
代码清单 opencvTest.cpp 测试OpenCV4.4是否安装成功
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace std;
using namespace cv;
int main() {
Mat img; //声明一个保存图像的类
img = imread("D:/C++/openCV/image/lena.png"); //读取图像,根据图片所在位置填写路径即可
if (img.empty())
{
cout << "请确认图像文件名称是否正确" << endl;
return -1;
}
Mat img2;
imshow("test", img);
waitKey(0);
return 0;
}
运行上述程序,可以得到如下图所示结果,这证明OpenCV环境配置成功,可以开启OpenCV的学习之路了。

OpenCV(c++)-1 安装和配置OpenCV4.4(Windows+visual studio 2019)的更多相关文章
- Revit二次开发环境配置(Revit 2020 +Visual Studio 2019)
Revit二次开发环境搭建(Revit 2019+Visual Studio 2017)准备内容 Revit 2019开发环境的搭建,需要安装的内容如下: Revit 2019(主要的开发环境) Vi ...
- WIN7环境下CUDA7.5的安装、配置和测试(Visual Studio 2010)
以下基于"WIN7(64位)+Visual Studio 2010+CUDA7.5". 系统:WIN7,64位 开发平台:Visual Studio 2010 显卡:NVIDIA ...
- OpenCV 第一课(安装与配置)
OpenCV 第一课(安装与配置) win10,opencv-2.4.13, 安装, vs2013, 配置 下载安装软件 官网OpenCV下载地址下载最新版本,我下载的是opencv.2.4.13,然 ...
- Python虚拟环境的安装和配置-virtualenv与windows下多个python版本共存
Python虚拟环境的安装和配置-virtualenv与windows下多个python版本共存 windows下多个python版本共存 https://www.python.org/downloa ...
- DX12龙书 00 - 环境配置:通过 Visual Studio 2019 运行示例项目
0x00 安装 Visual Studio 2019 安装 Visual Studio 2019 以及相关组件. 注:安装组件时带的 Windows 10 SDK 可以在 Individual com ...
- Visual Studio 2019 (VS2019)正式版安装 Ankh SVN和VisualSVN插件
VS2019 正式版最近刚刚推出来,目前 Ankhsvn 还不支持,它最高只支持 VS2017,全网搜索了一下,也没有找到.在 Stackoverflow 上看了一下,找到这篇问答: 自己按照这种方法 ...
- Dev Envirenment - Windows 10 && Visual Studio 2019 && OpenCV 4.1.0
当每天用着 C# && Winform && VS 2010 && .Net Framework 4.0 && Halcon & ...
- MySQL安装总是失败,提示缺少Visual Studio 2013 Redistributable
MySQL安装总是失败,提示缺少Visual Studio 2013 Redistributable,但是很疑惑,我明明已经安装了呀,原来问题出在版本上,以下提供了一个可以匹配新版本mysql的版本: ...
- Visual Studio 2019 (VS2019)正式版安装 VisualSVN Server 插件
VS2019 正式版最近刚刚推出来,目前 Ankhsvn 还不支持,它最高只支持 VS2017,全网搜索了一下,也没有找到.在 Stackoverflow 上看了一下,找到这篇问答: 自己按照这种方法 ...
随机推荐
- RabbitMQ安装、集群搭建、概念解析
RabbitMQ安装.集群搭建.概念解析 基本概念 为什么会产生MQ 1.解耦:采用异步方式实现业务需求达到解耦的目的. 2.缓冲流量,削峰填谷: 问:为什么会有流量冲击? 答:采用"直接调 ...
- Java随谈(一)魔术数字、常量和枚举
本文适合对 Java 或 C 有一些了解的用户阅读,推荐阅读时间15分钟. 导言 写这个系列的原因? 我曾经听过一种说法,如果不了解Liunx的网络通讯,就很难理解理解Java的IO:如果不知道Jav ...
- 使用jpa时,实体类有不存在数据库中的字段
使用jpa时,实体类有不存在数据库中的字段.在改属性上面加上这个注解@Transient就可以解决问题.
- 论文阅读笔记: Natural Language Inference over Interaction Space
这篇文章提出了DIIN(DENSELY INTERACTIVE INFERENCE NETWORK)模型. 是解决NLI(NATURAL LANGUAGE INFERENCE)问题的很好的一种方法. ...
- SQL注入之Mysql报错注入
--志向和热爱是伟大行为的双翼. 昨天偷懒了没学什么东西,先自我反省一下 - -. 今天认真的学习了一下Mysql报错注入利用方法及原理,好久之前就像认真的学一下这个了,是在上海市大学生网络安全大赛中 ...
- Appium 用途和特点
Appium 是一个移动 App (手机应用)自动化工具. 手机APP 自动化有什么用? 自动化完成一些重复性的任务 比如微信客服机器人 爬虫 就是通过手机自动化爬取信息. 为什么不通过网页.HTTP ...
- Vue 分支循环
分支循环 在Vue中,分支循环也是使用标签属性指令完成的,这一点与后端模板语法不太相同. v-for 下面是通过v-for进行循环,不光可以拿到元素本身,也可以拿到索引值. 如果数据是对象类型,则可以 ...
- c++11 新特性实战 (一):多线程操作
c++11多线程操作 线程 thread int main() { thread t1(Test1); t1.join(); thread t2(Test2); t2.join(); thread t ...
- MySQL手注之联合查询注入
了解联合查询注入之前,先要了解一下什么是union? union是用于合并两个sql查询结果的语句. 要使用union 必须有相同的列数 必须有两条以上的select语句组成 列的数据类型必须兼容 ...
- 2020 巅峰极客 WP_ Re
第一题:virus 是一个win32 的题,没给加壳. 主函数: int __cdecl main(int argc, const char **argv, const char **envp) { ...