IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> VS+OpenCV+VC超详细的配置教程 -> 正文阅读

[人工智能]VS+OpenCV+VC超详细的配置教程

写在前面的话

  1. 版权声明:转载请注明出处!
  2. 博主是一个小菜鸟,并且非常玻璃心!如果文中有什么问题,请友好地指出来,博主查证后会进行更正。
  3. 每篇文章都是博主现阶段的理解,如果理解的更深入的话,博主会不定时更新文章。
  4. 本文初次更新时间:2021.08.01,最后更新时间:2021.08.01。

本文是博主的第一篇文章,每次配置OpenCV都会遇见各种各样的问题,查阅大量教程才能配置成功,浪费大量时间和心情,考虑到网友也会遇见类似的问题,故有了这篇文章。本文适合各种版本VS和OpenCV配置问题,也提供了程序常见问题的解决方法,希望对大家有所帮助。

1.VS+VC+OpenCV版本对应关系

  1. C是VS的工作库之一,VS与OpenCV对VC都有版本间的对应。
  2. VS(virtual studio)是微软开发的一个集成开发工具,可以开发C++、C#、HTML、VB等1
  3. VC(virtual C++)是专门开发C++的工具。当安装VS的时候,会提示你选择开发环境,如果你选择C++,选择的就是VC编程平台2

参考网址1:https://www.cnblogs.com/sakuraie/p/13341552.html.

参考网址2:https://blog.csdn.net/HW140701/article/details/92850154.

以下是VS版本与VC版本的对应关系,以及OpenCV对VC版本的支持情况:
在这里插入图片描述
在这里插入图片描述

像OpenCV之类的库会以vcx.x作为文件夹号标致该文件夹下的库适用于哪个VS版本,例如:VS2017选择OpenCV下的vc15文件夹,vc15可由Opencv3.4.1或4.0.0提供

2.官方链接

VS官网:https://visualstudio.microsoft.com/zh-hans/.
VS历史版本:https://visualstudio.microsoft.com/zh-hans/vs/older-downloads/.
OpenCV官网:https://opencv.org/.
OpenCV历史版本:https://opencv.org/releases/.

3.相关环境信息

  1. Windows 10专业版
  2. OpenCV 4.5.0 —vc14 vc15(免费)

下载网址:https://sourceforge.net/projects/opencvlibrary/files/4.5.0/opencv-4.5.0-vc14_vc15.exe/download.

  1. Visual studio 2019 community—vc15 vc16(免费)

下载网址:https://visualstudio.microsoft.com/zh-hans/vs/.

故我们使用Visual studio 2019 community配置OpenCV 4.5.0下vc15库。

4.图片步骤

首先通过上述“1 VS+VC+OpenCV版本对应关系”选择配对的OpenCV和VS,其次通过上述“2官方链接”下载相应的软件安装包,最后安装激活后可直接参考下述图片配置环境。

步骤1:安装VS2019和OpenCV4.5.0
在这里插入图片描述
在这里插入图片描述
步骤2:设置系统变量后重启电脑
在这里插入图片描述
步骤3:拷贝dll文件(将bin文件夹下的三个dll文件分别拷贝至对应文件夹)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
步骤4:创建C++空项目
在这里插入图片描述
在这里插入图片描述
步骤5:添加Debug X64模式cpp文件在这里插入图片描述
步骤6:添加Debug X64模式的属性文件(此属性用于其他项目的配置)
在这里插入图片描述
在这里插入图片描述
步骤7:双击新建的属性表,添加包含目录(#include的设置)
在这里插入图片描述
步骤8:添加库目录(包含文件的源代码)
在这里插入图片描述
步骤9:添加附加依赖项(库文件的依赖)
在这里插入图片描述
步骤10:编写显示图片的源码测试
在这里插入图片描述
附源码:

//imageShow.cpp : 测试OpenCV环境配置是否成功
//图片显示成功则说明OpenCV环境配置成功
//by clchao,20210801

#include <opencv2/opencv.hpp>	//包含目录下属包含文件(或头文件)
#include <iostream>				//C++风格输入输出包含文件

using namespace cv;				//名称空间

int main()
{
	//Mat img = imread("C:\\Users\\clchao\\Desktop\\opencvText_win10_vs2019_opencv410_Debug_x64\\imageShowOpencv\\lena01.jpg");
	Mat img = imread("lena01.jpg");
	imshow("lena01 Viewer", img);

	waitKey(0);				//等待用户按键
}

5.详细步骤

建议:良好的命名习惯有时很有帮助,建议务必将计算机名、用户名、文件夹名等全部命名为英文字符

5.1 安装VS和OpenCV

  1. 通过上述“1 VS+VC+OpenCV版本对应关系”选择配对的OpenCV和VS,我们使用Visual studio 2019 community版本配置OpenCV 4.5.0下的vc15库;
  2. 通过上述“2官方链接”下载相应的软件安装包;
  3. 安装激活。
    在这里插入图片描述
    在这里插入图片描述

5.2 设置系统变量

  1. 此电脑-右键-属性-高级系统设置-高级-环境变量-系统变量中的path变量也有教程选择用户变量下的path,笔者建议选择系统变量-编辑-新建-浏览,将OpenCV安装文件夹下的***opencv\build\x64\vc15\bin***opencv\build\x64\vc15\lib路径添加到当中。

注意:在其他配置教程中一般不用添加***opencv\build\x64\vc15\lib路径,读者可自行决定添加与否,但为了防止出问题建议添加;

  1. 作者选择vc15子文件夹,因为VS2019对应vc15或vc16;
  2. 路径添加后点击确定,并将外面能点击确定的地方全部点击。
    在这里插入图片描述

5.3 拷贝dll文件

注意:网上很多配置教程没有这步,运行程序时可能会报找不到xxx.dll文件的错误,是因为没有将OpenCV里面的相关dll文件复制到C盘中的相应文件夹里。

  1. ***opencv\build\x64\vc15\bin路径文件目录下的opencv_world401.dllopencv_world401d.dll文件复制到C:\Windows\SysWOW64这个文件夹里;
    ***opencv\build\x64\vc15\bin路径文件目录下的opencv_ffmpeg401_64.dllopencv_world401d.dll文件复制到C:\Windows\System32这个文件夹里。如果是opencv其他的版本,把对应的dll文件移动到上述两个C盘文件夹即可;
  2. C:\Windows\SysWOW64对应32位文件操作,C:\Windows\System32对应64位文件操作,如果运行程序错误,可能是文件错误拷贝。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

5.4 新建项目

  1. 创建新项目,笔者创建的是C++空项目,命名;
  2. 添加Debug X64的cpp文件,该文件用于显示图像测试OpenCV是否配置成功。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

5.5新建属性文件

  1. 菜单栏 -视图 -其他窗口 -打开属性管理器 -选择属性管理器中的Debug|x64 -右键 -添加新项目属性表 -命名 -添加

建议:命名 务必使用有意义的英文字符,例如:win10_vs2019community_opencv450_Debug_x64,表示Windows10专业版系统下安装的vs2019community版本配置opencv4.5.0开源库,使用的Debug_x64模式。
在这里插入图片描述
在这里插入图片描述

5.6配置属性

  1. 双击新建的属性表- VC++目录 -包含目录 /库目录 -添加下列目录

包含目录:

***opencv\build\include
***opencv\build\include\opencv2

注意:在源代码中经常出现#include <opencv2/opencv.hpp>字样,其含义就是预编译包含目录***opencv\build\include\opencv2中的opencv.hpp文件。同理可以预编译其他xxx.hpp,例如:

#include <opencv2/highgui/highgui.hpp>			//高层GUI图形用户界面模块头“highgui.hpp”
#include <opencv2/imgproc/imgproc.hpp>			//图像处理模块头文件“imgproc.hpp”	
#include <opencv2/imgproc/types_c.h>
#include <opencv2/calib3d/calib3d.hpp>			//相机标定和三维重建头文件
												//2D特征模块头文件“features2d.hpp”

作为OpenCV学习者,应该养成定期阅读学习这些文件的习惯,或者访问在线帮助文档(https://docs.opencv.org/4.5.0/index.html),这是最直接最暴力学习OpenCV的两种方法。
在这里插入图片描述
库目录:

***opencv\build\x64\vc15\lib

2.链接器 -输入 -附加依赖项 -添加下列文件
附加依赖项:

***opencv\build\x64\vc15\lib\opencv_world450d.lib
***opencv\build\x64\vc15\lib\opencv_world450.lib<可选>

或者:

opencv_world450d.lib
opencv_world450.lib<可选>

注意:450表示opencv4.5.0d表示是否为Debug调试<含d表示Debug,否则表示release>, release是发布程序时才会用到。当配置Release|X64时,附加依赖项添加opencv_world450.lib,笔者为了省事才一次添加两种,故上述加了<可选>标志,但两者一同添加可能导致一些错误。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5.7勾选微软符号服务器<可选>

1.其实到上述步骤OpenCV已经配置完成,但VS2019总是报错缺少xxx.dll文件,可选择勾选微软符号服务器来下载缺失的dll文件3

参考网址3:https://blog.csdn.net/weixin_43042467/article/details/105240489.
菜单栏 -调试 -选项 -调试 -常规 -勾选启动源服务器支持
菜单栏 -调试 -选项 -调试 -符号 -勾选微软符号服务器 -在次目录下缓存符号<可选>

  1. 注意:可用一个文件夹来缓存下载的dll文件,只初次加载。或者也可以等加载完成之后,取消勾选之前的选择,也没有问题。笔者新建了一个文件夹用于下载缓存,后面发现文件夹中下载了很多pdb文件!
  2. 到上述所有工作opencv已经配置完成,注意解决方案平台那一栏要换成Debug | X64(因为我们一直都在配置Debug | X64)。
    在这里插入图片描述
    在这里插入图片描述

5.8测试图像

  1. 附源码:
//imageShow.cpp : 测试OpenCV环境配置是否成功
//图片显示成功则说明OpenCV环境配置成功
//by clchao,20210729

#include<opencv2/opencv.hpp>	//包含目录下属包含文件(或头文件)
#include <iostream>				//C++风格输入输出包含文件

using namespace cv;				//名称空间

int main()
{
	Mat img = imread("C:\\Users\\clchao\\Desktop\\opencvText_win10_vs2019_opencv410_Debug_x64\\imageShowOpencv\\lena01.jpg");
	//Mat img = imread("lena01.jpg");
	imshow("lena01 Viewer", img);

	waitKey(0);				//等待用户按键
}
  1. 附“lena01.jpg”图像:注意图片存放路径。
    在这里插入图片描述
    在这里插入图片描述
  2. 图片无法输出问题:读入图片错误(附两种方式)
    (1)绝对路径
Mat img = imread("C:\\Users\\clchao\\Desktop\\opencvText_win10_vs2019_opencv410_Debug_x64\\imageShowOpencv\\lena01.jpg");

注意这个地方是双斜杠,第一个斜杠是转义字符。
(2)图片路径

Mat img = imread("lena01.jpg");

注意lena01.jpg必须在所建工程目录下

6.配置文件

  1. 配置完成后在自己新建的项目目录下会出现一个xxx.props文件,该文件便是配置的OpenCV属性。

以后每次编写OpenCV程序,只需要属性管理器 -Debbug | X64 -右键 -添加现有属性表 -选择上述属性表xxx.props文件即可
在这里插入图片描述

7其他问题

  1. “丢失xxx.dll文件或找不到xxx.dll文件”问题

将bin目录下对应的xxx.dll文件复制到Debug目录下;

或安装OpenCV时即将所有xxx.dll文件复制到C:\Windows\System32目录。

确实找不到xxx.dll文件,可下载Everything工具检索相应文件。

System32文件夹:System32是Windows 操作系统的系统文件夹,是操作系统的中枢。包含了大量用于 Windows 的文件, 这里主要用于存储xxx.dll文件、 控制面板小程序(.CPL)、设备驱动 (.drv)、帮助文件 (.hlp 和 .cnt)、MS-DOS 工具 (.com)、语言支持文件 (.nls)、屏幕保护 (.scr)、安装信息文件 (.inf)以及其它用于支持、配置或操作的文件4。如果你配置X64,请将相应文件拷贝至此处。
参考4:https://blog.csdn.net/qq_44179564/article/details/109706780

  1. 针对0xc000007b问题,DirectX Repair修复工具(请支持原作者)
    链接: DirectX修复工具增强版.
    链接: 0xc000007b的解决办法(续).

参考文章


  1. vs的vc,opencv的vc的对应指南 ??

  2. VC版本号与VS对应关系 ??

  3. VS2017配置OpenCV4.0.1教程(步骤超详细!!) ??

  4. VS2019中安装及配置OpenCV-4.5.0过程 ??

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-08-02 10:49:09  更:2021-08-02 10:52:06 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/17 22:26:01-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码