VS2019配置opencv4.6.0手把手一步一步实现

news2024/10/7 17:28:23

引言:配置环境真是让人痛苦不堪,踩了无数个坑,网上的文章五花八门,完全不知道参考哪个,直接劝退。为了能顺利配置,此处进行记录,以后可以回过头来看,也分享给大家。

我提供了两种方法配置,一种是针对于一个项目配置,一种是针对所有需要配置opencv的项目。

版本:

vs2019

opencv4.6.0

前提是大家都已经下载好了这两个东西,下载我就不说了,出门左转,下载好再进来。直接上干货。

第一步:打开vs2019,在界面看我红框内的目标(每一步只需关注我的红框内的东西即可):

第二步: 名字和位置,看自己心情

 

第三步:在解决方案这一块鼠标右键源文件->添加->新建项

 

第四步:名称自己起一个程序名,位置存储在新建的项目下面,一般打开这个界面的默认位置就是。

 

 第五步:配置opencv环境,这是我下载之后的opencv 文件夹内的内容 

如果您只想为当前项目配置opencv,则第五步的01-11这个步骤可以不用管,从上面的第五步直接看下面的第六步,只为当前项目配置opencv。

如果您只想给当前的项目配置opencv,则直接下拉到第六步,如果想要一次配置好opencv来适用不同的项目,则继续跟着一步一步走即可。

第五步01:如果是第一次配置opencv,则可以按照我如下的操作来,这样就不用每一次新建项目然后重新配置opencv了,可以直接通过添加现有属性表来配置:

第五步02:打开视图、其他窗口、属性管理器

第五步03:我们新建一个项目属性表,这样其他项目如果需要opencv,则直接添加我们建好的项目属性表就可以了。属性管理器窗口界面如红框处,下面这四个是调试程序的不同模式,我们这里选择debug|x64,您也可以按照同样的步骤来配置release|x64。

第五步04:鼠标右键,点击添加新项目属性表

第五步05:属性表的名字,最好容易记知道是什么的属性表,我这里就用opencv标识。位置最好放在一个公共区域,方便读取。点击添加即可。

 第五步06:双击打开属性管理器界面的debug|64下面的自己定义的属性名。

 第五步07:设置包含目录

 第五步08:看我的第五步开头,我下载之后的opencv的文件夹,再往里面点击bulid\include,找到include,以及include里面的opencv2路径,将这两个路径复制即可。

第五步09:设置库目录

 

第五步10:

库目录添加下载的opencv文件下的路径,看我红框处,找到你的即可。

 第五步11:点击链接器,输入,附加依赖项,添加lib文件,lib文件可以\vc15\lib中查看,数字后面带d的表示debug,选择debug的路径即可,如下图所示:

 

 点击应用,这样我们的opencv就配置好了,测试是否配置成功在文章的最后面。

如果您只想为当前项目配置opencv,则第五步的01-11这个步骤可以不用管,从上面的第五步直接看下面的第六步,只为当前项目配置opencv。

第六步:我把解决方案界面移到了左边,在项目名处鼠标右键,点击属性。

 

 第七步:

配置:我这里是Debug模式,平台是x64,打开5编辑

第八步:看我的第五步,我下载之后的opencv的文件夹长这张,再往里面点击,找到include,以及include里面的opencv2路径,将这两个路径复制即可。

第九步:和第七步的操作一样

第十步:将opencv文件夹中的x64打开,将vec15或vec14下面的lib地址进行复制,如下图所示:

 

 

 第十一步:点击链接器,输入,附加依赖项,添加lib文件,lib文件可以\vc15\lib中查看,数字后面带d的表示debug,选择debug的路径即可,如下图所示:

 到这一步就算是已经配置好了。

测试是否配置成功:

调试程序的模式要设置正确如下图所示。

将我们在第四部中建立的程序文件中添加代码:

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

using namespace std;
using namespace cv;

int main()
{
    //OpenCV版本号
    cout << "OpenCV_Version: " << CV_VERSION << endl;

    //读取图片
    Mat img = imread("你的图片地址");

    imshow("picture", img);
    waitKey(0);
    return 0;
}

 查看运行结果是否有图片展示和opencv的版本信息。

编写不易,转载请记得注明出处。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/517619.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于AT89C51单片机的温度检测报警设计

点击链接获取Keil源码与Project Backups仿真图&#xff1a; https://download.csdn.net/download/qq_64505944/87777752?spm1001.2014.3001.5503 源码获取 主要内容&#xff1a; 基于51单片机设计一个温度检测报警器&#xff0c;至少具有以下功能&#xff1a;温度的检测和超…

音频信号处理库librosa

参考&#xff1a; 1. librosa官网 2. librosa语音信号处理 3. 语音信号处理库 ——Librosa 4. librosa音频处理教程 5. Python音频信号处理库函数librosa介绍 0 谱分析函数 1. librosa 读取信号 librosa.load(path, sr22050, monoTrue, offset0.0, durationNone)读取音频文件…

深度linux社区版 20.8 安装 nvidia-docker,启动Stable Deffision WebUI docker 容器

以下为失败的记录&#xff0c;成功方法直接跳到末尾。 环境 说明&#xff1a; 深度apt 源中无法直接安装nvidia-docker 下载源码 github地址&#xff1a; GitHub - NVIDIA/nvidia-docker: Build and run Docker containers leveraging NVIDIA GPUs 下载最新release https:…

Win10系统D盘满了怎么清理隐藏的垃圾文件?

Win10系统D盘满了怎么清理隐藏的垃圾文件&#xff1f;电脑磁盘满了之后&#xff0c;就无法存在其它的文件了&#xff0c;有用户的电脑D盘空间满了&#xff0c;那么这个情况怎么去将里面隐藏的一些垃圾文件进行清理呢?接下来我们一起来看看解决的方法分享吧。 方法一&#xff1…

Java EE 初阶---多线程(三)

五、阻塞队列 目录 五、阻塞队列 5.1 阻塞队列是什么 &#xff1f; 5.1.1 生产者消费者模型 ​编辑 5.1.2 标准库中的阻塞队列 5.1.3 消息队列 5.1.4 消息队列的作用 5.2 实现一个阻塞队列 虚假唤醒 六、线程池 6.1 线程池是什么&#xff1f; 6.2 怎么使用线程池&#xf…

5G通信-帧结构及RE和RB

一.NR的帧结构&#xff08;可以参考38.211&#xff09; NR的时间单位由大到小依次为帧&#xff0c;子帧&#xff0c;时隙&#xff0c;符号。 其中一帧数据&#xff08;10ms&#xff09;由10个子帧组成&#xff0c; 一个子帧&#xff08;1ms&#xff09;由若干个时隙组成&#…

3个方案,绕过微信小程序官方审核

描述 虽然绕过官方审核&#xff0c;是不推荐的行为&#xff0c;但是官方的做法有点难以接受。偶尔会碰见奇葩理由被拒绝。例如&#xff1a;类目不对、功能过于简单、涉及金融(其实没有)、涉及官方素材等等。之前小程序不多的时候&#xff0c;你总是求着我加入开发&#xff1b;…

MYSQL相关之不常见变量、排序函数、JDBC数据库与Java连接

用户自定义变量 局部变量--->只在当前begin/end代码块中有效 sql 复制代码 create procedure add ( in a int, in b int ) begin declare c int default 0; set c a b; select c as c; end; 2.用户变量--->在客户端链接到数据库实例整个过程中用户变量都是有效的。…

商户查询的缓存——缓存穿透

4.缓存穿透 缓存穿透是指客户端请求的数据在缓存中和数据库中都不存在&#xff0c;这样缓存永远不会生效&#xff0c;这些请求都会打到数据库 解决方案&#xff1a; 1.缓存空对象&#xff08;简单粗暴&#xff09; 2.布隆过滤 代码实现&#xff1a; Autowired private String…

在米文动力 EVO Orin 设备 Jetson AGX Orin 下配置 YOLOV5 的环境说明

声明&#xff1a;本博文的配置大部分参考 Jetson AGX Orin安装Anaconda、Cuda、Cudnn、Pytorch、Tensorrt最全教程 1 前言 本文设备内置的模组是 Nvidia Jetson AGX Orin 32GB&#xff0c;算力达到 200 TOPS&#xff0c;aarch64 架构 本文主要参考《Jetson AGX Orin安装Anac…

发明专利公开 -- CSS动画精准实现时钟

上一篇【setTimeout不准时&#xff0c;CSS精准实现计时器功能】的博文&#xff0c;最后提到了通过 CSS 动画实现计时器的方式。 本文详情描述如何通过 CSS 完整实现时钟效果&#xff0c;这也是团队 21 年专利的一项内容&#xff08;专利公布号&#xff1a;CN114003087A&#x…

Docker安装CentOS7

Docker 分为 CE 和 EE 两大版本。CE 即社区版&#xff08;免费&#xff0c;支持周期 7 个月&#xff09;&#xff0c;EE 即企业版&#xff0c;强调安全&#xff0c;付费使用&#xff0c;支持周期 24 个月。 本教程是关于在CentOS上安装社区版Docker的方法&#xff08;Docker C…

SCTP:记录一次Diameter消息卡顿延迟问题

SCTP&#xff1a;记录一次Diameter消息卡顿延迟问题 1、背景 客户端&#xff1a;5个接口机 服务端&#xff1a;2个模拟器&#xff08;模拟HSS&#xff0c;是一个Diameter服务端&#xff09; 5个客户端的地址是&#xff1a; 10.212.27.2910.212.27.5510.212.24.1710.212.24.1…

js编译、执行上下文、作用域链

参考资料 极客时间课程《浏览器工作原理与实践》 – 李兵 《你不知道的JavaScript》-- Kyle Simpson ES5.1规范&#xff1a;https://262.ecma-international.org/5.1/#sec-10.3 ES6规范&#xff1a;https://262.ecma-international.org/6.0/#sec-executable-code-and-execu…

Redis 五大基本数据类型常见命令

一、redis中的常见数据结构 Redis共有5种常见数据结构&#xff0c;分别字符串&#xff08;STRING)、列表&#xff08;LIST&#xff09;、集合&#xff08;SET)、散列&#xff08;HASH&#xff09;、有序集合&#xff08;ZSET)。 二、redis中字符串(String)介绍 String 类型是…

小红书内容种草怎么玩,koc铺量原则

一直以来&#xff0c;小红书平台都以其强大的种草力&#xff0c;而备受品牌关注。许多初创品牌更是将平台看做抢占市场的前沿阵地。那么小红书内容种草怎么玩&#xff0c;koc铺量原则是什么呢?今天来为大家详细介绍一下。 一、什么是koc铺量 要做好新品预热的koc铺量&#xff…

存bean和取bean

准备工作存bean获取bean三种方式 准备工作 bean:一个对象在多个地方使用。 spring和spring boot&#xff1a;spring和spring boot项目&#xff1b;spring相当于老版本 spring boot本质还是spring项目&#xff1b;为了方便spring项目的搭建&#xff1b;操作起来更加简单 spring…

有效和无效的帮助中心区别在哪?如何设计有效的帮助中心?

帮助中心就是一个丰富的知识库&#xff0c;可以对企业的潜在客户进行引导。不仅能够提升用户的使用体验还能为企业塑造更加专业的品牌形象&#xff0c;在使用过程中为用户提供帮助。帮助中心的目的就是为了解决用户在使用过程中遇到的困难&#xff0c;同时为用户的使用提供引导…

DC-9通关详解

信息收集 漏洞发现 result.php处存在sql注入 sqlmap跑信息 python sqlmap.py -u http://192.168.45.146/results.php --data search1 -D users -T UserDetails --dump 拿了几个尝试登录都无效 ssh尝试登录直接拒绝了 再看Staff表 查哈希 进后台 多了一个添加记录的功能 没啥…

数据结构(二叉树)

文章目录 一、树的基础概念1.1 树型结构1.2 树型的概念 二、二叉树2.1 概念 性质2.2 二叉树的存储2.2 二叉树的基本操作&#xff08;1&#xff09;遍历&#xff08;2&#xff09;其他 2.3 二叉树练习 一、树的基础概念 1.1 树型结构 树是一种非线性的数据结构&#xff0c;它…