Visual Studio部署C++环境下OpenCV库
本文介绍在Visual Studio 2022中配置、编译C++计算机视觉库OpenCV
的方法。
1 OpenCV库配置
首先,我们进行OpenCV
库的下载与安装。作为一个开源的库,我们直接在其官方下载网站中进行下载即可;如下图所示,我们首先选择需要下载的操作系统。
随后,即可在弹出的新界面中自动开始OpenCV
库的下载。
下载完毕后,可以得到OpenCV
库的.exe
格式文件。
我们双击这一.exe
格式文件,即可开始OpenCV
库的文件提取过程,也就相当于是安装过程;其中,我们首先需要选择OpenCV
库安装的路径。
随后,即可开始OpenCV
库的文件提取。
OpenCV
库文件提取完毕后,会得到如下所示的文件夹。这里建议将这一文件夹放在纯英文路径下。
接下来,基于Windows电脑环境变量(用户变量、系统变量)的修改提到的方法,配置OpenCV
库相关的环境路径。其中,需要在“系统变量”的“Path”中进行操作。
如下图所示,我们将OpenCV
库中...\build\x64\vc15\bin
路径放入“系统变量”的“Path”中,在我这里这一路径就是C:\opencv\build\x64\vc15\bin
。
其中,需要注意的是,OpenCV
库中一般会有两个VC版本对应的文件夹,例如我这里下载的4.6.0
版本的OpenCV
库,其就有vc14
与vc15
两个文件夹;具体选择哪一个文件夹中的bin
文件夹,需要结合我们的Visual Studio软件版本来判断——一般的,只要Visual Studio软件版本是2017
年及之后的版本(例如我这里就是Visual Studio 2022),那么就选择vc15
这个文件夹;如果Visual Studio软件版本是2015
年的,那么就选择vc14
这个文件夹;如果Visual Studio软件版本是2015
年之前更早的版本,那么最好就更换老版本的OpenCV
库,从而找到适配的VC版本。
2 Visual Studio环境配置
接下来,我们基于安装Visual Studio的详细流程提到的方法,新建一个项目,其名称与路径大家可以自行设置。
随后,按照上述文章中的方法,新建一个.cpp
格式的源文件。
接下来,按照如何在Visual Studio新C++项目中调用之前配置过的库?提到的方法,分别进行OpenCV
库的附加包含目录、附加库目录与附加依赖项的配置。
首先,将附加包含目录配置为OpenCV
库的C:\opencv\build\include
与C:\opencv\build\include\opencv2
等2个路径;如下图所示。
随后,将附加库目录配置为OpenCV
库的C:\opencv\build\x64\vc15\lib
这一路径;如下图所示。这里需要注意,具体使用哪一个VC版本对应的文件夹路径,还是和前文提到的一样,依据大家的Visual Studio版本来确定。
最后,我们找到OpenCV
库的C:\opencv\build\x64\vc15\lib
文件夹,可以看到其中有两个.lib
格式的文件。
其中,如果我们需要配置Debug
版本的OpenCV
库,那么就选择名称最后面带有字母d
的.lib
格式文件(也就是上图中选中的那一个文件);如果需要配置Release
版本的OpenCV
库,那么就选择名称最后不带有字母d
的.lib
格式文件。随后,将这一文件的路径复制到附加依赖项中;如下图所示,我这里准备配置Debug
版本的OpenCV
库,因此就选择了名称最后面带有字母d
的.lib
格式文件。此外,这里还是一样的,具体使用哪一个VC版本对应的文件夹路径,依据大家的Visual Studio版本来确定即可。
3 代码测试
通过上述步骤,我们完成了OpenCV
库的配置工作;此时可以通过一些简单的代码来测试OpenCV
库配置是否正确。
例如,可以通过以下代码来测试OpenCV
库的配置情况。其中,pic_path
是一个指向图片文件的路径,大家可以基于自己电脑中的任何一张图片文件来修改这一路径。
#include <opencv2/opencv.hpp>
using namespace cv;
int main() {
const char* pic_path = "E:/99_Other/公众号与博客/03_图库/Amos2.png";
Mat pic = imread(pic_path, 1);
imshow("My Picture", pic);
waitKey();
return 0;
}
随后,在Visual Studio中运行上述代码。
运行代码后,如果出现如下所示的情景,即我们通过pic_path
指定的图片可以正常显示出来,说明OpenCV
库的配置没有问题。
至此,大功告成。
Visual Studio部署C++环境下OpenCV库的更多相关文章
- 打造TypeScript的Visual Studio Code开发环境
打造TypeScript的Visual Studio Code开发环境 本文转自:https://zhuanlan.zhihu.com/p/21611724 作者: 2gua TypeScript是由 ...
- Visual Studio 2017开发环境的安装
Visual Studio 2017是微软为了配合.NET战略推出的IDE开发环境,同时也是目前开发C#程序最新的工具,本节以Visual Studio 2017社区版的安装为例讲解具体的安装步骤. ...
- Python3.5在Windows7环境下Scrapy库的安装
Python3.5在Windows7环境下Scrapy库的安装 忙活了一下午,总算是把Scrapy库给装完了,记下来给需要帮助的人 首先安装的环境:Windows7 64位 Python的版本是:3. ...
- Visual Studio 2017 15.7 下的.NET Core
Visual Studio 2017 15.7版本发布,对.NET Core项目的主要相关改变如下, 同时对Xamarin.Android和iOS项目的支持上也做了较大改进. 一. .NET Core ...
- Visual Studio 控制台应用程序 同时使用OpenCV和matlab mat文件操作
matalb具有灵活的图像处理,代码编写起来简洁而高效.而OpenCV具有很多成熟的计算机视觉算法,能够处理很多实时的识别处理等问题,而且代码运行起来效率很高.所以如何结合两者之间的优点,是让很多学术 ...
- Visual studio 通用开发环境配置:SDL,FFMPEG为例
引言 每一个C++库的使用都是从开发环境的配置开始的,其实每个库的配置过程都是大同小异,总结下来有下面几个步骤: 下载库文件,这里假定是已经预先编译完成的. 配置库文件的包含目录(include)和库 ...
- OpenGL超级宝典visual studio 2013开发环境配置,GLTools
做三维重建需要用到OpenGL,开始看<OpenGL超级宝典>,新手第一步配置环境就折腾了一天,记录下环境的配置过程. <超级宝典>中的例子使用了GLEW,freeglut以及 ...
- 转 Visual C++6.0 与matlab联合编程(2)----Visual C++6.0 环境下编译和调试MEX文件
我的最初想法是利用matlab的mex命令调用C++程序生成动态链接库的,但是测试程序(文中另附)通过了,自己的实际应用程序却没有过.还是把方法贴在这儿,以便自己以后进行整理. http://shij ...
- 使用 Visual Studio 部署 .NET Core 应用
可将 .NET Core 应用程序部署为依赖框架的部署或独立部署,前者包含应用程序二进制文件,但依赖目标系统上存在的 .NET Core,而后者同时包含应用程序和 .NET Core 二进制文件. 有 ...
- 驱动开发:配置Visual Studio驱动开发环境
在正式开始驱动开发之前,需要自行搭建驱动开发的必要环境,首先我们需要安装Visual Studio 2013这款功能强大的程序开发工具,在课件内请双击ISO文件并运行内部的vs_ultimate.ex ...
随机推荐
- 【K哥爬虫普法】房产数据刑吗?爬虫多年没踩过缝纫机,劝你找找自己原因!
我国目前并未出台专门针对网络爬虫技术的法律规范,但在司法实践中,相关判决已屡见不鲜,K哥特设了"K哥爬虫普法"专栏,本栏目通过对真实案例的分析,旨在提高广大爬虫工程师的法律意识,知 ...
- python2排序
python list cmp排序 对于list的排序一般使用cmp 示例: sorted(xxlist, cmp=self.sortFunc) def sortFunc(self, a, b): r ...
- Java开发中PO、VO、DAO、BO、DTO、POJO 含义
PO(persistant object) 持久对象 可以看成是与数据库中的表相映射的java对象.使用 Mybatis 来生成 PO 是不错的选择. VO(value object) 值对象 通常用 ...
- Nginx相关快速入门,负载均衡等
快速入门Nginx[正向反向代理,负载均衡的概念,学会Nginx的安装和常用命令,并在实际中去应用Nginx] - 知乎 1.背景介绍:当用户使用较少时,低并发的情况下,使用内部toma ...
- C/C++ 获取主机网卡MAC地址
MAC地址(Media Access Control address),又称为物理地址或硬件地址,是网络适配器(网卡)在制造时被分配的全球唯一的48位地址.这个地址是数据链路层(OSI模型的第二层)的 ...
- .net ELk 成功使用
原文地址: http://t.zoukankan.com/shousiji-p-15222276.html
- 苹果iOS的应用移除主屏幕及恢复找回
昨天刷到一个苹果iOS系统更换微信图标的,然后就添加了一个,发现那个记录通知数字问题,想恢复回来,所以就有了此文. https://www.cnblogs.com/lzhdim/p/17909867. ...
- 联想T30瘦客户机安装DoraOS体验
硬件配置:J4125 .8G RAM. 128G ROM 联想T30台式电脑,它是一台迷你计算机,尺寸小巧玲珑,重量适中,方便携带.它的性能十分强大,能够运行各种应用程序,包括网页浏览器.视频播放器等 ...
- 【LLM】提示工程技术提炼精华分享
一.提示工程概述 提示工程(Prompt Engineering)是一门较新的学科,关注提示词开发和优化,帮助用户将大语言模型(Large Language Model, LLM)用于各场景和研究领域 ...
- Dijkstra实现单源最短路
Dijkstra算法求单源最短路 Dijkstra算法应用于求一个给定图的单个源点到其他各顶点的最短路.其中应用Dijkstra算法的图应满足如下条件 图中没有负权边 有向或者无向图都可以 图中若有自 ...