VS安装配置OpenCV(C++)

2023-11-11

目录

第一章 Opencv安装及其环境变量配置

1.1下载并安装OpenCV

1.2 OpenCV环境变量配置

第二章 Visual Studio 2019 编译器下载安装

第三章 OpenCV开发环境配置(C++)

3.1创建项目

3.2 添加包含目录

3.3 添加库目录

3.4 添加附加依赖项

3.5 后续问题的检验和处理

第一章 Opencv安装及其环境变量配置

1.1下载并安装OpenCV

首先到官网:

Home - OpenCV

然后点击Library

选择系统和版本进行下载

点击Windows后跳出以下界面,五秒后自动下载

下载完成后解压到自定义的文件夹中

1.2 OpenCV环境变量配置

打开该文件夹,复制 bin 文件夹的路径

点击 开始菜单 -> 点击 设置 -> 点击 系统 -> 点击 关于 -> 点击系统信息.

点击高级系统设置.

点击环境变量.

双击系统变量中的 path

点击编辑 -> 点击新建 -> 将所复制的路径粘贴

点击确定就完成环境变量配置了.

第二章 Visual Studio 2019 编译器下载安装

上官网或者Microsoft Store下载

打开它的下载器,出现以下界面,这两个是必选,其他看个人情况选择

缓存和根目录不能存在相同路径.

点击安装.

第三章 OpenCV开发环境配置(C++)

3.1创建项目

打开VS 2019,点击创建新项目

搜索C++ -> 选择控制台应用 -> 点击下一步

输入项目名称和修改路径后点击创建

进入以下界面,点击项目 -> 点击属性

3.2 添加包含目录

点击VC++目录 -> 点击包含目录 -> 点击右边向下的小箭头

-> 点击<编辑...>

按照如下顺序, 将刚刚下载的opencv文件夹中build文件夹中的include 文件夹的路径复制粘贴到包含目录

3.3 添加库目录

与3.2操作一样,只是路径不同.

opencv -> build -> x64 -> vc15 -> lib

3.4 添加附加依赖项

点击链接器 -> 点击输入 -> 附加依赖项

将 刚刚lib 文件夹中的第二个依赖项的名称复制粘贴

以上三种添加任务需要检查是否生效,如果添加失败就多试几次然后重启电脑

3.5 后续问题的检验和处理

将Debug右边的栏目改为x64 (Win 10系统)

这是测试代码,然后按F5运行

  1. #include <opencv2/opencv.hpp>  
  2. #include <opencv2/core/core.hpp>  
  3. #include <opencv2/highgui/highgui.hpp>  
  4. #include <opencv2/imgproc.hpp>  
  5. #include<iostream>  
  6. using namespace std;  
  7. using namespace cv;  
  8. int main()  
  9. {  
  10.     Mat image = Mat::zeros(300, 600, CV_8UC3);  
  11.     circle(image, Point(300, 200), 100, Scalar(25, 110, 288),-100);  
  12.     circle(image, Point(400, 200), 100, Scalar(255, 123, 127), -100);  
  13.     imshow("Show Window", image);  
  14.     waitKey(0);  
  15.     return 0;  
  16. }  

如果出现“无法找到opencv_world4455d.ddl”

Opencv -> build -> x64 -> vc15 -> bin

复制两个ddl后缀的程序扩展

粘贴至C盘的system32文件夹中

按F5运行,出现下面的图片说明成功啦!

Ubuntu配置OpenCV

1_4_在Ubuntu中安装OpenCV-Python - OpenCV中文官方文档 (woshicver.com)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VS安装配置OpenCV(C++) 的相关文章

  • 强制 Java 最低版本以“java -version:”运行在 Windows 上不起作用

    我想强制应用程序运行的 JVM 最低版本为 1 6 或更高版本 即 1 6 我的理解是 您可以使用 version 命令行参数来执行此操作 我尝试了一下 在Linux下似乎可以正常工作 但在Windows下却不行 LINUX 我在 Linu
  • Windows Defender 检测 Python EXE 为木马

    我制作了一个 Python 脚本 将 Windows 目录以 zip 形式邮寄给我 我使用 sched 模块添加了一个调度程序 每小时重复一次 我试图制作一个简单的同步应用程序供个人使用 在 Windows 启动时启动 我使用将其转换为 e
  • 如何修复此错误“GDI+ 中发生一般错误”?

    从默认名称打开图像并以默认名称保存 覆盖它 我需要从 Image Default jpg 制作图形 将其放在 picturebox1 image 上并在 picurebox1 上绘制一些图形 它有效 这不是我的问题 但我无法保存 pictu
  • 如何访问另一个窗体上的ListView控件

    当单击与 ListView 所在表单不同的表单中的按钮时 我试图填充 ListView 我在 Form1 中创建了一个方法以在 Form2 中使用 并将参数传递给 Form1 中的方法 然后填充 ListView 当我调试时 我得到了传递的
  • 将 System.Windows.Input.KeyEventArgs 键转换为 char

    我需要将事件参数作为char 但是当我尝试转换 Key 枚举时 我得到的字母和符号与传入的字母和符号完全不同 如何正确地将密钥转换为字符 这是我尝试过的 ObserveKeyStroke this new ObervableKeyStrok
  • 单击 form2 上的按钮触发 form 1 中的方法

    我对 Windows 窗体很陌生 我想知道是否可以通过单击表单 2 中的按钮来触发表单 1 中的方法 我的表格 1 有一个组合框 我的 Form 2 有一个 保存 按钮 我想要实现的是 当用户单击表单 2 中的 保存 时 我需要检查表单 1
  • PlaySound 可在 Visual Studio 中运行,但不能在独立 exe 中运行

    我正在尝试使用 Visual Studio 在 C 中播放 wav 文件 我将文件 my wav 放入项目目录中并使用代码 PlaySound TEXT my wav NULL SND FILENAME SND SYNC 我按下播放按钮 或
  • 如何使用 watin 中的 FileUploadDialogHandler 访问文件上传对话框

    我正在使用 IE8 和 watin 并尝试通过我的网页测试上传文件 我不能简单地使用 set 方法设置上传文件 例如 ie FileUpload Find ById someId Set C Desktop image jpg 因为上传文本
  • 批量更新 SQL Server C#

    我有一个 270k 行的数据库 带有主键mid和一个名为value 我有一个包含中值和值的文本文件 现在我想更新表格 以便将每个值分配给正确的中间值 我当前的方法是从 C 读取文本文件 并为我读取的每一行更新表中的一行 必须有更快的方法来做
  • Visual Studio 中的测试单独成功,但一组失败

    当我在 Visual Studio 中单独运行测试时 它们都顺利通过 然而 当我同时运行所有这些时 有些通过 有些失败 我尝试在每个测试方法之间暂停 1 秒 但没有成功 有任何想法吗 在此先感谢您的帮助 你们可能有一些共享数据 检查正在使用
  • 上下文敏感与歧义

    我对上下文敏感性和歧义如何相互影响感到困惑 我认为正确的是 歧义 歧义语法会导致使用左推导或右推导构建多个解析树 所有可能的语法都是二义性的语言是二义性语言 例如 C 是一种不明确的语言 因为 x y 总是可以表示两个不同的事物 如下所述
  • 使用 Moq 使用内部构造函数模拟类型

    我正在尝试模拟 Microsoft Sync Framework 中的一个类 它只有一个内部构造函数 当我尝试以下操作时 var fullEnumerationContextMock new Mock
  • 如何使用 Mongodb C# 驱动程序连接多个集合

    我需要将 3 个集合与多个集合合并在一起 lookup我在 C 驱动程序中尝试过 它允许我 lookup用户采集但无法执行秒 lookup用于设置集合 有人可以帮忙吗 db Transactions aggregate lookup fro
  • 等待线程完成

    private void button1 Click object sender EventArgs e for int i 0 i lt 15 i Thread nova new Thread Method nova Start list
  • 如何对 Web Api 操作进行后调用?

    我创建了一个 Web API 操作 如下所示 HttpPost public void Load string siteName string providerName UserDetails userDetails implementat
  • 有没有办法强制显示工具提示?

    我有一个验证字段的方法 如果无法验证 该字段将被清除并标记为红色 我还希望在框上方弹出一个工具提示 并向用户显示该值无效的消息 有没有办法做到这一点 并且可以控制工具提示显示的时间 我怎样才能让它自己弹出而不是鼠标悬停时弹出 If the
  • 英特尔 Pin 与 C++14

    问题 我有一些关于在 C 14 或其他 C 版本中使用英特尔 Pin 的问题 使用较新版本从较旧的 C 编译代码很少会出现任何问题 但由于 Intel Pin 是操作指令级别的 如果我使用 C 11 或 C 14 编译它 是否会出现任何不良
  • memset 未填充数组

    u32 iterations 5 u32 ecx u32 malloc sizeof u32 iterations memset ecx 0xBAADF00D sizeof u32 iterations printf 8X n ecx 0
  • 检查Windows控制台中是否按下了键[重复]

    这个问题在这里已经有答案了 可能的重复 C 控制台键盘事件 https stackoverflow com questions 2067893 c console keyboard events 我希望 Windows 控制台程序在按下某个
  • 在客户端系统中安装后桌面应用程序无法打开

    我目前正在使用 Visual Studio 2017 和 4 6 1 net 框架 我为桌面应用程序创建了安装文件 安装程序在我的系统中完美安装并运行 问题是安装程序在其他计算机上成功安装 但应用程序无法打开 edit 在客户端系统中下载了

随机推荐

  • 【网络通信】Netty面试专题之十大考问

    1 BIO NIO 和 AIO 的区别 BIO 一个连接一个线程 客户端有连接请求时服务器端就需要启动一个线程进行处理 线程开销大 伪异步 IO 将请求连接放入线程池 一对多 但线程还是很宝贵的资源 NIO 一个请求一个线程 但客户端发送的
  • 你知道this.$options吗?(Vue)

    题记 我们在Vue项目中会有很多情况下需要用到this options 所以接下来我们介绍几个场景会用到 options 我们想第一个问题当我们在template经常使用filter 那么你可以直接在methods里边用过滤器吗 我们在表单
  • GC 的三种基本实现方式

    GC 的三种基本实现方式 参考资料 代码的未来 作者 日 松本行弘 由于并非本人原著 我只是个 搬运工 SO 未经本人允许请尽情转载 另外个人像说明一下这里所说的GC指泛指垃圾回收机制 而单指Java或其他某种特定语言中的GC 可能具体语言
  • 【PTA】7-6 整除光棍

    7 6 整除光棍 这里所谓的 光棍 并不是指单身汪啦 说的是全部由1组成的数字 比如1 11 111 1111等 传说任何一个光棍都能被一个不以5结尾的奇数整除 比如 111111就可以被13整除 现在 你的程序要读入一个整数x 这个整数一
  • 设计模式-day02

    4 创建型模式 4 2 工厂模式 4 2 1 概述 需求 设计一个咖啡店点餐系统 设计一个咖啡类 Coffee 并定义其两个子类 美式咖啡 AmericanCoffee 和拿铁咖啡 LatteCoffee 再设计一个咖啡店类 CoffeeS
  • Ubuntu虚拟机和Windows实现文件拖拽复制粘贴

    方法 安装vm tools 1 在Ubuntu内部鼠标右键打开终端 2 更新apt get 一般新装的系统都需要更新apt get sudo apt get update ps 若无法更新 可以试着换一下镜像站 Ubuntu系统配置镜像站
  • Python基础系列2——Numpy数值计算及分析

    文章目录 1 实验内容 2 实验过程 2 1 numpy数组的建立 索引 计算 统计等 2 2 利用numpy对数据集 iris data 进行分析 3 实验结论及注意事项 1 实验内容 1 numpy数组的建立 索引 计算 统计等 2 利
  • BIOS和BootLoader uboot

    BIOS BIOS是英文 Basic Input Output System 的缩略语 直译过来后中文名称就是 基本输入输出系统 其实 它是一组固化到计算机内主板上一个ROM芯片上的程序 它保存着计算机最重要的基本输入输出的程序 系统设置信
  • Java Sort方法

    Java的sort方法就是排序 而且排的是升序 你要想降序可以先获得升序的 然后倒过来或者你重新写比较器Comparator的接口就可以 一 sort 排序方法本身 这里讲的sort方法 都是以Arrays类里面的方法为准 因为很多类的so
  • STM32 端口复用学习

    一 STM32端口复用 1 端口复用定义 STM32有很多的内置外设 这些外设的外部引脚都是与GPIO复用 也就是说 一个GPIO如果可以复用为内置外设的功能引脚 那么当这个GPIO作为内置外设使用的时候 就叫做复用 2 作用 最大限度的利
  • vue 实现计时器组件

    vue 实现计时器组件 结果图 v if 和 v show 的区别 总结来说v if是在不断的销毁和重建 v show 只是改变 display 属性 元素依然存在 dom 中 v if 切换开销大 v show 初始化开销大 time v
  • 人称代词用法大全

    语言发明出来自然是要给人用的 所以跟人相关的词就特别多 划分的很细 我们提到某个具体的人一般就直接说名字 但有时是泛指 或者前面已经提过名字了 后面用个啥简称指代下就清楚了 这就需要代词 代词嘛顾名思义是一个代称 是指代某个人或者某类人 某
  • 搭建使用 VS 开发 Qt 项目的环境

    搭建使用 VS 开发 Qt 项目的环境 个人认为 使用 Qt 工具开发 Qt 项目是最好的方案 在开发的过程出现的 bug 会比较少一些 但是有些同伴可能对 VS 比较钟爱 而 VS 又有此功能 因此想采用 VS 进行开发 本文将本人搭建成
  • nacos源码启动找不到istio包

    现象 源码版本2 1 0 启动时 编译不通过 报错 找不到 istio mcp v1alpha1 MetadataOuterClass Metadata istio networking v1alpha3 ServiceEntryOuter
  • 算法:链表

    单链表 单链表是一种链式存取的数据结构 链表中的数据是以结点来表示的 每个结点存储两个数据 一是该结点本身的值 二是其指向的下一结点的下标 用e i 表示节点i的值 用ne i 表示结点i指向的下一结点的坐标 head表示头结点的下标 id
  • 网关系统架构

    目录 一 API网关业务域 1 业务域 2 统一接入 3 安全防护 4 流量管控 5 协议转换 6 其他业务 1 接口文档管理 2 调试工具和示例 3 SDK自动生成能力 4 API增强 二 API网关核心指标 1 模型 2 安全性 3 高
  • C语言编写的简单计算器程序

    这两天在看一个C语言写的计算器程序 做了不少的功夫 跟着作者一步步的进行完善 了解了许多细节性的东西 在此自己做个总结 加深自己对程序的印象 也算是梳理 在该计算器程序 能进行加减乘除 sin cos exp等操作 同时能进行数值保存功能
  • 2021浙江工商计算机机试1

    1不在数列中的数字 给出一个长度为n的数列 包含1到n的数字 输出1到n中不在数列中的数字 include
  • Android studio64新建APP项目时,报错 junit:junit:4.12

    大家都是要求注释掉 但不想这样 看了很多博客 快绝望的时候 用这个办法成功了 文件 E android app 工程文件目录 下面的 build gradle 文件 在这个文件中加入最后划线3行 保存即可 然后再retry apply pl
  • VS安装配置OpenCV(C++)

    目录 第一章 Opencv安装及其环境变量配置 1 1下载并安装OpenCV 1 2 OpenCV环境变量配置 第二章 Visual Studio 2019 编译器下载安装 第三章 OpenCV开发环境配置 C 3 1创建项目 3 2 添加