当前位置: 首页 > news >正文

Opencv4基于C++基础入门笔记:OpenCV环境配置搭建

文章目录:

一:软件安装

二:配置环境(配置完之后重启一下软件)

1.配置电脑系统环境变量

 vs2012及其以下 

 vs2014及其以上

2.配置VS软件环境变量

vs2012及其以下 

vs2014及其以上

三:测试

vs2012及其以下  

vs2014及其以上


推荐使用vs2014版本及其以上(因为可以避免减少一些报错):vs2015、vs2017....

一:软件安装

VS下载:博主提供连接直接下载  提取码: y9jc

内含有:vs2012 vs2015如果是使用openvc:推荐vs2014及其以上

OpenCV下载:OpenCV - Open Computer Vision Library官网、博主直接提供下载  提取码:1111

注意高低版本vs2012及其以下推荐:opencv-2.4及其以下版本vs2014及其以上推荐:opencv-4.5及其以上版本

二:配置环境(配置完之后重启一下软件)

1.配置电脑系统环境变量

 vs2012及其以下 

右击“计算机”->“属性”->“高级系统设置”->“环境变量”。此处要修改“用户变量”和“系统变量用户变量:3处OpencvD:\OpenCV\opencv\buildpathD:\OpenCV\opencv\build\x84\vc15\binD:\OpenCV\opencv\build\x84\vc15\lib系统变量:2处pathD:\OpenCV\opencv\build\x84\vc15\binD:\OpenCV\opencv\build\864\vc15\lib

注意 

vs2012及其以下低版本:此处需要选择x86因为编译环境默认的使用win32编译器,这里x86还是x64的选择跟你的系统是32位还是64位无关 

 vs2014及其以上

右击“计算机”->“属性”->“高级系统设置”->“环境变量”。此处要修改“用户变量”和“系统变量用户变量:3处OpencvD:\OpenCV\opencv\buildpathD:\OpenCV\opencv\build\x64\vc15\binD:\OpenCV\opencv\build\x64\vc15\lib系统变量:2处pathD:\OpenCV\opencv\build\x64\vc15\binD:\OpenCV\opencv\build\x64\vc15\lib

2.配置VS软件环境变量

vs2012及其以下 

本地Windows调试器右边:Debug、Win32 (vs2012默认的)

1.打开VS——>选择新建项目,名称为TestOpenCV——>选择“空项目”——>完成——>源文件——>右键创建main.cpp文件2.打开“视图”->“属性管理器”/(其他窗口——>属性管理器),展开至Debug|Win322.1右击选择“添加新建项目属性表”,命名为OpenCV_Debug_Setting.props,双击打开此属性页2.2 在“通用属性”->“VC++目录”下,分别设置包含目录和库目录2.2.1 包含目录:C:\OpenCV\build\include\opencv2C:\OpenCV\build\include\opencvC:\OpenCV\build\include2.2.2 库目录:C:\OpenCV\build\x86\vc12\lib2.3 选择“通用属性”->“链接器”->“输入”->“附加依赖项”,在附加依赖项里添加库文件:        C:\OpenCV\build\x86\vc12\lib添加路径下所有结尾含有“d”,且后缀名为“.lib”的文件:如opencv_calib3d2410d.lib等等

vs2014及其以上

 本地Windows调试器左边:Release、x64(根据自己电脑来选) 

1.打开VS——>选择新建项目,名称为TestOpenCV——>选择“空项目”——>完成——>源文件——>右键创建main.cpp文件2.打开“视图”->“属性管理器”/(其他窗口——>属性管理器),展开至Release|x642.1 Microsoft Cpp.x64.user鼠标右键点击属性/直接双击2.2 在“通用属性”->“VC++目录”下,分别设置包含目录和库目录2.2.1 包含目录:D:\OpenCV\opencv\build\include\opencv2D:\OpenCV\opencv\build\include2.2.2 库目录:D:\OpenCV\opencv\build\x64\vc15\lib2.3 选择“通用属性”->“链接器”->“输入”->“附加依赖项”,在附加依赖项里添加库文件:     D:\OpenCV\opencv\build\x64\vc15\lib添加opencv_world460.lib

三:测试

打开main.cpp写入如下代码,看是否显示图片(图片路径和照片自定义)

vs2012及其以下  

#include <iostream>#include <core\core.hpp>
#include <highgui\highgui.hpp>using namespace cv;
using namespace std;int main(){//读取图片Mat image = imread("F:\\images\\gril.jpg");    //路径自定义//判断图片是否读入成功if(!image.data){cout <<"图片显示失败!"<<endl;//等待按键system("pause");return -1;}//创建一个图像显示窗口namedWindow("女孩",1);//显示图像imshow("女孩",image);//等待按键waitKey();return 0;
}

vs2014及其以上

#include<opencv2/opencv.hpp>
#include<iostream>using namespace std;
using namespace cv;
int main() 
{Mat src = imread("F:/images/gril.jpg",IMREAD_GRAYSCALE);//读取进来的数据以矩阵的形势,第二个参数代表显示一张灰度图像。if (src.empty()) {printf("could not load image");//如果图片不存在 将无法读取,打印到终端。}//超过屏幕的图像无法显示时候调用此函数。namedWindow("输入窗口", WINDOW_FREERATIO);//创建了一个新窗口,参数1表示名称,第二个参数代表一个自由的比例imshow("输入窗口", src);//表示显示在新创建的输入窗口上,第一个参数表示窗口名称,src表示数据对象Mat waitKey(0);//执行到这句,程序阻塞。参数表示延时时间。单位msdestroyAllWindows();//销毁前面创建的显示窗口return 0;
}

相关文章:

Opencv4基于C++基础入门笔记:OpenCV环境配置搭建

文章目录&#xff1a; 一&#xff1a;软件安装 二&#xff1a;配置环境&#xff08;配置完之后重启一下软件&#xff09; 1.配置电脑系统环境变量 vs2012及其以下 vs2014及其以上 2.配置VS软件环境变量 vs2012及其以下 vs2014及其以上 三&#xff1a;测试 vs2012及其…...

JS基础之实现map方法

提示&#xff1a;内容虽少&#xff0c;但是里面也有好几个知识点。 step 1&#xff1a;实现函数 function mapTmp (fn){if(!Array.isArray(this) || !this?.length) return [];const arr [];this.forEach((item, index) > {const newItem fn(item, index, this);arr.pu…...

FPGA应用学习笔记-----复位电路(二)和小结

不可复位触发器若和可复位触发器混合写的话&#xff0c;不可复位触发器是由可复位触发器馈电的。 不应该出现的复位&#xff0c;因为延时导致了冒险&#xff0c;异步复位存在静态冒险 附加素隐含项&#xff0c;利用数电方法&#xff0c;消除静态冒险 这样多时钟区域还是算异步的…...

信捷 XD PLC 16位整数转换为双精度浮点数

完成16位整数转换为双精度浮点数&#xff0c;信捷XD PLC需要两个指令&#xff0c;逐步转换&#xff0c;一个指令搞不定。 具体的: 第1步&#xff1a;int16->int32 第2步&#xff1a;int32->Double 例子&#xff0c;比如说将D0转换成浮点数放到D100~D103...

(二)结构型模式:1、适配器模式(Adapter Pattern)(C++实现示例)

目录 1、适配器模式&#xff08;Adapter Pattern&#xff09;含义 2、适配器模式应用场景 3、适配器模式的UML图学习 4、C实现适配器模式的示例 1、适配器模式&#xff08;Adapter Pattern&#xff09;含义 将一个接口转换为客户端所期待的接口&#xff0c;从而使两个接口…...

【编程二三事】ES究竟是个啥?

在最近的项目中&#xff0c;总是或多或少接触到了搜索的能力。而在这些项目之中&#xff0c;或多或少都离不开一个中间件 - ElasticSearch。 今天忙里偷闲&#xff0c;就来好好了解下这个中间件是用来干什么的。 ES是什么? ​ ES全称ElasticSearch&#xff0c;是个基于Lucen…...

爬虫逆向实战(三)--天某云登录

一、数据接口分析 主页地址&#xff1a;天某云 1、抓包 通过抓包可以发现登录接口是account/login 2、判断是否有加密参数 请求参数是否加密&#xff1f; 通过“载荷”模块可以发现password、comParam_signature、comParam_seqCode是加密的 请求头是否加密&#xff1f; 无…...

不要过于迷恋软件架构,要重视如何设计根据简单和清晰的设计

1. 设计一个计算机系统的目标应该是简单性 。 系统越简单&#xff0c;理解起来就越简单&#xff0c;找到问题就越简单&#xff0c;实现它就越简单。描述的语言越清晰&#xff0c;设计就越容易理解。 干净的设计类似于干净的代码&#xff1a;它易于阅读且易于理解。 2. 如何编…...

Grafana监控 Redis Cluster

Grafana监控 Redis Cluster 主要是使用grafana来实现监控&#xff0c;grafana可以对接多种数据源&#xff0c;在官网中可以找到Redis数据源&#xff0c;需要安装redis data source插件。当然也可以利用Prometheus来做数据源&#xff0c;下面分别记录一下这两种数据源的安装配置…...

k8s 认证和权限控制

k8s 的认证机制是啥&#xff1f; 说到 k8s 的认证机制&#xff0c;其实之前咋那么也有提到过 ServiceAccouont &#xff0c;以及相应的 token &#xff0c;证书 crt&#xff0c;和基于 HTTP 的认证等等 k8s 会使用如上几种方式来获取客户端身份信息&#xff0c;不限于上面几种…...

性能优化的重要性

性能优化的重要性 性能优化的重要性摘要引言注意事项代码示例及注释性能优化的重要性 性能优化的重要性在 Java 中的体现响应速度资源利用效率扩展性与可维护性并发性能合理的锁策略线程安全的数据结构并发工具类的应用避免竞态条件和死锁 总结代码示例 博主 默语带您 Go to Ne…...

Leetcode No.53 Maximum Subarray

参考资料&#xff1a; 考点&#xff1a;子串 & 动态规划 & [题干] Input: nums [-2,1,-3,4,-1,2,1,-5,4] Output: 6 Explanation: The subarray [4,-1,2,1] has the largest sum 6.1. 心路历程 这道题非常经典&#xff0c;蕴含的思想也是精巧无比。 2. 正解 简单来说官…...

手机出现 不读卡 / 无信号时应该怎么办?

当手机屏幕亮起&#xff0c;一般在屏幕最上方都会有代表手机卡状态的显示&#xff0c;其中网络信号和读卡状态的标识&#xff0c;依旧有很多人分不太清&#xff0c;更不清楚改怎么办了。 1、当我们的手机里有两张卡时&#xff0c;则会有两个信号显示 2、信号状态一般是由短到…...

Linux 内核模块运行机制(10/11)

Linux 内核实现了一个比较酷的功能&#xff1a;支持模块的动态加载和运行。如果你实现了一个内核模块并打算运行它&#xff0c;你并不需要重启系统&#xff0c;直接使用 insmod 命令加载即可&#xff0c;这个模块就像补丁一样打进了 Linux 操作系统&#xff0c;并可以正常运行。…...

MySQL数据库-字符串函数详解

前言 MySQL数据库提供了多种不同类型的函数&#xff0c;用于处理字符串、日期、数值等数据类型&#xff0c;以及实现条件、聚合等操作&#xff0c;下面我们主要介绍字符串函数 CONCAT() 函数 CONCAT() 可用于将多个字符串连接在一起。 示例&#xff1a; SELECT CONCAT(Hell…...

半导体退火那些事(3)

4.半导体退火设备 双腔全自动兼容6-8寸快速退火炉RTP 产地:中国 型号: S803 特点: 室温到1250C&#xff0c;应用于SiC&#xff0c;GaN等第三代半导体领域 简介 (Description) S803系列自动快速退火炉&#xff0c;内置Robot可以自动取放片&#xff0c;适用于最大8英寸 (单片200m…...

1281. 整数的各位积和之差

诸神缄默不语-个人CSDN博文目录 力扣刷题笔记 文章目录 1. 简单粗暴的遍历2. 其实也是遍历&#xff0c;但是用Python内置函数只用写一行 1. 简单粗暴的遍历 Python版&#xff1a; class Solution:def subtractProductAndSum(self, n: int) -> int:he0ji1while n>1:last…...

如何使用Vue和C++实现OJ《从零开始打造 Online Judge》

课程简介 课程链接&#xff1a;https://www.lanqiao.cn/courses/20638 邀请码&#xff1a;x8pGd60V 本课程采用前后端分离架构&#xff0c;基于 Vue.js 和 C 技术&#xff0c;从零开始打造 Online Judge。 课程介绍 OJ 是 Online Judge 系统的简称&#xff0c;用来在线检测…...

在Spring Boot和Vue中实现请求过滤器以验证请求头中的Token

在Spring Boot应用程序中创建一个过滤器类&#xff0c;用于处理请求&#xff1a; Component public class AuthenticationFilter implements Filter {Overridepublic void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)throws IOException,…...

ThreeJS——在3D地球上标记中国地图板块

Threejs3D地球标记中国地图位置 先看效果 地球预览视频效果 用到的库 TweenJS (动画库)用来做相机转场的动画Jquery(这里只用到一个 each 循环方法&#xff0c;可以使用 js 去写)ThreeJS (3D 地球制作)100000.json(全国城市经纬度)d3.v6.js用来设置平面转3D效果(本来考虑做成…...

OpenHarmony软总线实战:手把手教你实现Wi-Fi/BLE双模设备发现(附避坑指南)

OpenHarmony软总线深度实战&#xff1a;Wi-Fi/BLE双模设备发现的工程化实现与性能调优 在智能家居设备爆发式增长的今天&#xff0c;多模连接已成为终端设备的标配能力。作为OpenHarmony分布式能力的核心支撑&#xff0c;软总线&#xff08;SoftBus&#xff09;的混合发现机制直…...

突破联想笔记本BIOS限制:LEGION BIOS高级设置工具全解析

突破联想笔记本BIOS限制&#xff1a;LEGION BIOS高级设置工具全解析 【免费下载链接】LEGION_Y7000Series_Insyde_Advanced_Settings_Tools 支持一键修改 Insyde BIOS 隐藏选项的小工具&#xff0c;例如关闭CFG LOCK、修改DVMT等等 项目地址: https://gitcode.com/gh_mirrors…...

Python+MinIO实战:5分钟搞定对象存储文件上传下载(附完整代码)

PythonMinIO实战&#xff1a;5分钟搞定对象存储文件上传下载&#xff08;附完整代码&#xff09; 对象存储正在成为现代应用开发中不可或缺的基础设施。无论是个人项目还是企业级应用&#xff0c;高效、可靠的文件存储方案都能显著提升开发效率。MinIO作为一款高性能的对象存储…...

联想M920x黑苹果配置指南:从硬件适配到性能优化的完整方案

联想M920x黑苹果配置指南&#xff1a;从硬件适配到性能优化的完整方案 【免费下载链接】M920x-Hackintosh-EFI Hackintosh Opencore EFIs for M920x 项目地址: https://gitcode.com/gh_mirrors/m9/M920x-Hackintosh-EFI 联想M920x作为一款紧凑型商用主机&#xff0c;通过…...

OpenClaw会议纪要大师:Qwen3-32B实时转录飞书语音会议

OpenClaw会议纪要大师&#xff1a;Qwen3-32B实时转录飞书语音会议 1. 为什么需要自动化会议纪要 每次开完会最头疼的就是整理会议纪要。作为团队的技术负责人&#xff0c;我每周要参加至少8场跨部门会议&#xff0c;传统的手动记录方式让我苦不堪言——要么记录不全重点&…...

vLLM-v0.17.1保姆级教程:SSH中查看vLLM实时请求队列与Pending统计

vLLM-v0.17.1保姆级教程&#xff1a;SSH中查看vLLM实时请求队列与Pending统计 1. vLLM框架简介 vLLM是一个专注于大语言模型(LLM)推理和服务的高性能库&#xff0c;它的设计目标是让开发者能够轻松部署和管理大规模语言模型。这个项目最初由加州大学伯克利分校的天空计算实验…...

手把手教你搞定CMT2300A的315MHz匹配电路:从原理图到物料清单(附实测数据)

深入解析CMT2300A在315MHz频段的射频匹配电路设计与实战优化 作为一名长期深耕射频硬件设计的工程师&#xff0c;我最近在工业遥控器项目中遇到了一个典型挑战&#xff1a;如何为CMT2300A设计稳定可靠的315MHz匹配电路。与常见的433MHz应用不同&#xff0c;315MHz频段在元件参数…...

ABAP - MEMORY ID 的跨程序数据共享实践

1. ABAP内存ID&#xff1a;跨程序数据共享的秘密武器 在SAP开发中&#xff0c;经常会遇到这样的场景&#xff1a;程序A需要某些数据&#xff0c;但获取这些数据的逻辑写在程序B里。传统做法可能是通过接口、数据库表或者文件来中转数据&#xff0c;但这些方法要么太麻烦&#x…...

FigmaCN:5分钟快速实现Figma中文界面的终极解决方案

FigmaCN&#xff1a;5分钟快速实现Figma中文界面的终极解决方案 【免费下载链接】figmaCN 中文 Figma 插件&#xff0c;设计师人工翻译校验 项目地址: https://gitcode.com/gh_mirrors/fi/figmaCN 还在为Figma英文界面而烦恼吗&#xff1f;figmaCN是一款专为中文用户打造…...

保姆级教程:在WSL上用AWS CLI配置MinIO临时访问凭证(含时区避坑指南)

在WSL中实战MinIO临时凭证&#xff1a;从配置到避坑的全流程指南 如果你正在Windows系统上使用WSL进行开发&#xff0c;并且需要为MinIO对象存储生成临时访问凭证&#xff0c;那么这篇文章将为你提供完整的解决方案。我们将从环境准备开始&#xff0c;逐步深入到凭证生成、策略…...