C++计算机视觉库OpenCV在Visual Studio 2022的配置方法

简介: C++计算机视觉库OpenCV在Visual Studio 2022的配置方法

  本文介绍在Visual Studio 2022中配置、编译C++ 计算机视觉库OpenCV的方法。

1 OpenCV库配置

  首先,我们进行OpenCV库的下载与安装。作为一个开源的库,我们直接在其官方下载网站(https://opencv.org/releases/)中进行下载即可;如下图所示,我们首先选择需要下载的操作系统。

  随后,即可在弹出的新界面中自动开始OpenCV库的下载。

  下载完毕后,可以得到OpenCV库的.exe格式文件。

  我们双击这一.exe格式文件,即可开始OpenCV库的文件提取过程,也就相当于是安装过程;其中,我们首先需要选择OpenCV库安装的路径。

  随后,即可开始OpenCV库的文件提取。

  OpenCV库文件提取完毕后,会得到如下所示的文件夹。这里建议将这一文件夹放在纯英文路径下。

  接下来,基于Windows 10 用户变量、系统变量等环境变量新建、编辑修改与删除方法(https://blog.csdn.net/zhebushibiaoshifu/article/details/115319801)提到的方法,配置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 2022下载、安装与运行使用方法(https://blog.csdn.net/zhebushibiaoshifu/article/details/126403611)提到的方法,新建一个项目,其名称与路径大家可以自行设置。

  随后,按照上述文章中的方法,新建一个.cpp格式的源文件。

  接下来,按照Visual Studio软件调用已经配置、编译好的C++第三方库的方法(https://blog.csdn.net/zhebushibiaoshifu/article/details/127171298)提到的方法,分别进行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库的配置没有问题。

  至此,大功告成。

欢迎关注:疯狂学习GIS

相关文章
|
11月前
|
API C++ Windows
Visual C++运行库、.NET Framework和DirectX运行库的作用及常见问题解决方案,涵盖MSVCP140.dll丢失、0xc000007b错误等典型故障的修复方法
本文介绍Visual C++运行库、.NET Framework和DirectX运行库的作用及常见问题解决方案,涵盖MSVCP140.dll丢失、0xc000007b错误等典型故障的修复方法,提供官方下载链接与系统修复工具使用指南。
2235 2
|
11月前
|
缓存 算法 程序员
C++STL底层原理:探秘标准模板库的内部机制
🌟蒋星熠Jaxonic带你深入STL底层:从容器内存管理到红黑树、哈希表,剖析迭代器、算法与分配器核心机制,揭秘C++标准库的高效设计哲学与性能优化实践。
C++STL底层原理:探秘标准模板库的内部机制
|
11月前
|
Ubuntu API C++
C++标准库、Windows API及Ubuntu API的综合应用
总之,C++标准库、Windows API和Ubuntu API的综合应用是一项挑战性较大的任务,需要开发者具备跨平台编程的深入知识和丰富经验。通过合理的架构设计和有效的工具选择,可以在不同的操作系统平台上高效地开发和部署应用程序。
393 11
|
11月前
|
IDE 编译器 开发工具
msvcp100.dll,msvcp120.dll,msvcp140.dll,Microsoft Visual C++ 2015 Redistributable,Visual C++ 运行库安装
MSVC是Windows下C/C++开发核心工具,集成编译器、链接器与调试器,配合Visual Studio使用。其运行时库(如msvcp140.dll)为程序提供基础函数支持,常因缺失导致软件无法运行。通过安装对应版本的Microsoft Visual C++ Redistributable可解决此类问题,广泛应用于桌面软件、游戏及系统级开发。
1319 2
|
计算机视觉
Opencv学习笔记(三):图像二值化函数cv2.threshold函数详解
这篇文章详细介绍了OpenCV库中的图像二值化函数`cv2.threshold`,包括二值化的概念、常见的阈值类型、函数的参数说明以及通过代码实例展示了如何应用该函数进行图像二值化处理,并展示了运行结果。
4738 0
Opencv学习笔记(三):图像二值化函数cv2.threshold函数详解
|
算法 计算机视觉
opencv图像形态学
图像形态学是一种基于数学形态学的图像处理技术,它主要用于分析和修改图像的形状和结构。
422 4
|
存储 计算机视觉
Opencv的基本操作(一)图像的读取显示存储及几何图形的绘制
本文介绍了使用OpenCV进行图像读取、显示和存储的基本操作,以及如何绘制直线、圆形、矩形和文本等几何图形的方法。
Opencv的基本操作(一)图像的读取显示存储及几何图形的绘制
|
算法 计算机视觉 Python
python利用opencv进行相机标定获取参数,并根据畸变参数修正图像附有全部代码(流畅无痛版)
该文章详细介绍了使用Python和OpenCV进行相机标定以获取畸变参数,并提供了修正图像畸变的全部代码,包括生成棋盘图、拍摄标定图像、标定过程和畸变矫正等步骤。
python利用opencv进行相机标定获取参数,并根据畸变参数修正图像附有全部代码(流畅无痛版)
WK
|
编解码 计算机视觉 Python
如何在OpenCV中进行图像转换
在OpenCV中,图像转换涉及颜色空间变换、大小调整及类型转换等操作。常用函数如`cvtColor`可实现BGR到RGB、灰度图或HSV的转换;`resize`则用于调整图像分辨率。此外,通过`astype`或`convertScaleAbs`可改变图像数据类型。对于复杂的几何变换,如仿射或透视变换,则可利用`warpAffine`和`warpPerspective`函数实现。这些技术为图像处理提供了强大的工具。
WK
793 1