欢迎您访问第A百科网

c盘sources文件夹可以删除吗? 「从零学习OpenCV4」Win系统中安装

1004次浏览     发布时间:2024-04-02 07:22:27     编辑: 小白学视觉


大多数的学生开发者使用的是Windows系统,在Windows系统中就不得不提到微软强大的Visual Studio集成开发环境(IDE),Visual Studio拥有大量不同的版本,而不同版本对于OpenCV版本的兼容性也不尽相同。虽然已经发布Visual Studio 2019,但是目前OpenCV 4.1仅支持Visual Studio 2015和Visual Studio 2017两个版本。因此对于在Windows环境下使用OpenCV4.1版本的开发者,需要将IDE更新到提到的两个版本。Visual Studio的安装和使用并不是本书的重点,读者可以去微软官网下载需要的版本,按照教程完成安装和使用。笔者使用的是Visual Studio 2015版本,因此推荐读者在学习本书的过程中与笔者使用同一版本IDE,这样可以减少在运行示例代码过程中的调试时间,将更多的精力用在学习OpenCV的算法和代码中。

在Windows环境下安装主要包含5个步骤,分别是下载和安装OpenCV SDK、配置包含路径、配置库目录、配置链接器、配置环境变量。当每一步都配置完成后便可以开始OpenCV的学习之旅,接下来将会对每一步进行详细的介绍。

01 下载和安装OpenCV SDK

OpenCV SDK获取非常简单,通过搜索引擎可以直接搜索到OpenCV官网,在官网中找到Releases选项,里面会有历史发布的OpenCV各个版本,找到OpenCV 4.1版本的下载界面,发现有多个可以选择项,如图1-1所示。其中Docs选项链接OpenCV的文档库包含模块组成、函数介绍等内容,不过很可惜文档全部是英文的,部分同学阅读起来还是存在着很多不方便之处。Sources选项是Ubuntu等Linux系统下的安装包,关于其安装方式,我们会在后面介绍。GitHub选项链接到GitHub中OpenCV 4.0版本的下载文件,其内容与通过其他选项下载的内容是一致的。Windows选项、iOS pcak选项和Android选项分别是在Windows系统、iOS系统和Android系统下的安装包。很遗憾OpenCV4.0并不支持Android环境的开发,但是OpenCV 4.1版本已经支持Android环境。最后一个选项Release Notes选项是最新版本的更新信息。


图1-1 OpenCV 4.0版本安装包下载区域


下载完成后得到“
opencv-4.1.0-vc14_vc15.exe”文件,便可以开始安装过程。其实所谓的安装是一个解压的过程,可执行文件是一个自解压的程序,双击后便会提示我们选择解压路径。这里根据自己需求选择路径即可,特别要说明的是,该程序会将所有文件解压在opencv的文件夹下,因此不需要在选择解压路径中单独新建一个opencv文件夹。由于笔者电脑安装了多个版本的OpenCV,为避免混淆,单独创建一个名为opencv4的文件夹,解压到H:\opencv4。选择好路径后点击【Extract】按钮,便可以等待解压过程的结束。整个OpenCV4的大小约为1G,根据电脑的性能不同,等待时间从几十秒到几分钟不等。安装过程图片如图1-2和图1-3所示。

图1-2 选择提取OpenCV路径


图1-3 等待解压过程


解压结束后,去刚才选择的路径下查看是否多了一个名为opencv的文件夹,该文件夹内含有build和sources两个子文件夹,如果没有,说明解压错误,建议删除后重新解压。build文件夹是主要的OpenCV相关文件,里面含有头文件与库文件等重要信息,接下来的环境配置工作都将围绕其展开。sources文件夹里放置的是源码以及例程和图片,后续也会对其中的部分进行介绍。如果想减少占用硬盘空间,原则上可以删除sources文件夹,但是这里并不推荐大家这样做,毕竟大多数情况下我们计算机的硬盘空间是充足的。


02 配置包含路径


配置环境主要目的是告诉你的计算机你安装的OpenCV放在哪里,以及告诉你的IDE应该去哪里寻找头文件与库文件。为了完成与IDE的沟通,我们首先启动Visual Studio 2015,创建一个新的项目。在弹出的新项目选项中,查看自己已安装的Visual Studio内容,选择Visual C++中的Win32选项,在Win32项目和Win32控制台应用程序中选择后者。根据我们需求修改项目名称,选择存放的位置。为了测试OpenCV,我们将项目名称修改为opencv4_test,存放在F:\opencv\内,如图1-4所示。


图1-4 创建Win32控制台应用程序界面


完成项目名称填写后,点击【确定】按钮,会跳转出Win32应用向导,这里需要修改“附加选项”:选择“空项目”,取消“安全开发生命周期(SDL)检查”选项,点击【完成】按钮,完成空项目的创建。如图1-5所示


图1-5 应用程序向导


完成创建后,可以在界面的右侧发现“解决方案资源管理器”,打开opencv4_test项目左边的小三角,可以看到“外部依赖项”、“头文件”、“源文件”以及“资源文件”等四个文件夹,如图1-6所示。接下来我们需要在“源文件”里添加项目cpp文件用于编写程序,首先右键【源文件】选择【新建项】,在弹出的页面内选择“C++文件(.cpp)”并修改文件名称,这里我们将其命名为main文件,点击【添加】完成空白源文件的创建,如图1-7所示。

图1-6 空项目的解决方案资源管理器

图1-7 向“源文件”中添加空白cpp文件


然后修改界面上方的“Debug”模式,将其修改为“x64”模式,如图1-8所示。

图1-8 修改Debug模式为x64


在完成空项目的创建之后,正式开始包含路径的配置。依次点击界面上方的【视图】→【其他窗口】→【属性管理器】,在右侧会出现“属性管理器”界面,如图1-9所示。打开“Debug | x64”前方的小三角形,双击【Microsoft.Cpp.x64.user】打开属性页,如图1-10所示。

图1-9 属性管理器界面

图1-10 属性页


属性页中的“VC++目录”中的“包含目录”、“库目录”和“链接器”中的“附加依赖项”便是我们需要修改的地方。在“包含目录”里添加两个文件路径,分别是:

  • H:\opencv4\opencv\build\include
  • H:\opencv4\opencv\build\include\opencv2

重点需要留意一下,这里不同于之前版本,这里包含目录里只有两个,取消了原来的…\inclde\opencv这个路径,是因为在…\include\这个文件夹里只有一个opencv2文件夹,OpenCV 4.1将两个文件夹合并在了一起。添加完成两个路径后,便完成了包含路径配置工作。


03 配置库目录


库目录配置过程与包含路径配置过程相似,只需要寻找到对应的目录路径即可。笔者的配置路径如为:

H:\opencv4\opencv\build\x64\vc14\lib

需要说明的是,“…\vc14\”指的是在Visual Studio 2015中使用,而如果使用的是Visual Studio 2017版本,就需要选择“…\vc15\”。这里如果选择错误,就会造成版本不兼容的问题,会出现配置失败的一系列问题。所以读者一定要根据自己的实际情况而选择。


04 配置链接器


链接器的配置应该是OpenCV 4.1最大的改变,为了极大的方便开发者使用,节省配置时间,它简化了库文件中的lib文件数目。打开库目录路径,发现lib文件数目只有两个,如图1-11所示。这两个文件的名字很像,唯一区别就是一个后面含有“d”,而另一个没有。不含有的文件是在Release模式下使用,配置该模式的时候才使用。含有“d”的文件是在Debug模式下使用的,由于我们现在是在Debug模式下,因此我们选择此文件。打开链接器左侧的三角形,在“输入”项中的“附加依赖项”添加opencv_world410d.lib,完成链接器的配置。

图1-11 库文件中的lib文件


05 配置环境变量


我们完成了告诉Visual Studio 2015去哪里寻找OpenCV的工作,接下来该告诉计算机OpenCV在哪里。找到“我的电脑”,右键选择【属性】,打开电脑的系统设置界面,并选择【高级系统设置】,进入系统属性界面。如图1-12所示。

图1-12 系统设置界面


在系统属性界面内选择【环境变量】,并在新跳转出的页面中的“系统变量”部分找到“Path”变量,如图1-13所示,在其后面添加如下路径:

H:\opencv4\opencv\build\x64\vc14\bin

这里要注意,我们会在用户变量和系统变量里都会发现“Path”变量。理论上两者只需要配置一个就可以完成,但是一台计算机上可能拥有多个用户,因此建议在系统变量里添加路径。同时,由于可能前期配置过其他的变量,在添加OpenCV变量的同时,不要将之前的配置内容是删除,而是使用分号将不同的路径分开,避免对其他环境产生影响。

图1-13 系统环境变量配置界面


06 验证配置结果


完成了所有的配置过程后,需要通过程序验证配置是否成功。但是在此之前需要说明的是,配置流程没有顺序要求,即可以先完成Visual Studio的配置工作再完成计算机环境变量的配置,也可以反过来进行。不过需要说明的是,按照本书的流程进行配置,在配置完成后需要重启Visual Studio才可以在程序中加载OpenCV的头文件。

我们在前面创建的main源文件中输入代码清单1-1中的程序,该程序的主要目的是读取一张图片并显示该图片,代码原理我们会在后面的章节中详细介绍。现在只需要将代码输入,构建解决方案,运行程序验证环境配置是否成功。

代码清单1-1 install_test.cpp测试OpenCV 4.1是否安装成功
1.  #include <opencv2\opencv.hpp> //加载OpenCV 4.1头文件
2.  #include <iostream>
3.  
4.  using namespace std;
5.  using namespace cv; //opencv的命名空间
6.  
7.  int main()
8. {
9.    Mat img; //声明一个保存图像的类
10.    img = imread("G:/opencv/lena.png"); //读取图像,根据图片所在位置填写路径即可
11.    if (img.empty()) //判断图像文件是否存在
12.    {
13.      cout << "请确认图像文件名称是否正确" << endl;
14.      return -1;
15.    }
16.    imshow("test", img); //显示图像
17.    waitKey(0); //等待键盘输入
18.    return 0; //程序结束
19.  }

运行如上程序,我们得到如图1-14的结果,证明OpenCV环境配置成功,可以开启OpenCV的学习之路了。



相关文章

防噪音耳塞推荐(最佳噪音消除耳塞推荐)

噪音消除耳机很好,但是噪音消除无线耳塞更小巧轻便。如果您是一个活跃的人,一副好的噪音消除耳塞可能更适合您,不会被笨重的耳机所困扰。多种选择适应不同需求无论您是在家工作、日常通勤还是健身房锻炼,如果您想要一些宁静,可以看看我们为不同用户精选的最佳噪音消除耳塞。这些耳塞来自顶级品牌,如索尼、苹果、BOS

2024-09-08 09:16

全国监理工程师考试科目(各科目考试题型如何分布)

监理工程师《建设工程监理基本理论和相关法规》、《建设工程合同管理》、《建设工程目标控制》(3个专业)三个科目试题题型为单项选择题、多项选择题;《建设工程监理案例分析》(3个专业)试题题型为综合分析。《建设工程监理基本理论和相关法规》该科目考试时长为2小时,满分为110分,考试题型为客观题型。题型分值

2024-09-08 09:01

色拉姆面料的优缺点(色拉姆与普通腈纶纤维区别)

色拉姆与普通腈纶对比,色拉姆、美雅碧、outlast纤维区别,保暖内衣面料区别。  色拉姆和美雅碧都是腈纶,区别于普通腈纶,都是差异化腈纶。腈纶又称人造羊毛,特性是蓬松,有弹性,保暖性好,缺点是容易起毛起球。色拉姆和美雅碧都是腈纶,区别于普通腈纶,都是差异化腈纶。腈纶又称人造羊毛,特性是蓬松,有弹性

2024-09-08 08:46

糙米是什么米功效与作用(你了解糙米吗?)

白米饭口感细腻香甜,是中国人最喜爱的主食之一,但并不适合糖尿病患者食用。因为和其他食物相比,精制谷物往往有更高的血糖指数,对糖尿病患者的餐后血糖影响更大。相比之下,糙米是一种廉价的粗加工食品,可以代替大米成为糖尿病患者更佳的选择。本文将从糙米的营养成分、对血糖的影响、血糖之外的获益来阐述为何应鼓励糖

2024-09-08 08:30

司法警务是干什么的(法警是做什么工作?)

警察分为公安机关警察、监狱人民警察、国家安全机关人民警察、法院检察院司法警察,那么法院和检察院人民警察是什么?日常做什么工作?法警是司法机关所设执行特定任务的警种。在日常审理审判工作中法警担任这重要角色,一、在法庭中,法警负责警卫法庭维护现场秩序,更好的配合检察官和法官开展法庭工作。若有开庭工作,法

2024-09-08 08:16

怎样画眼线简单好看(眼线这样画方便又简单手残党学起来)

首先每个人的眼皮都不一样,我们先要判断自己适合翘的还是温柔的,长的还是短的眼线。圆眼的话如果想要温柔一点就画短的想要比较酷辣的话就画长的,长眼的话就画翘的,那么该怎么画呢?首先在眼尾部睫毛找到比较浅的那根线然后用眉笔轻轻勾出一条线然后用棉签慢慢涂掉多余的,在这里我先声明一下为什么要用眉笔画呢?因为新

2024-09-08 08:01

火车上可以带烟吗(火车站这些东西不能带!)

美食类白酒散装白酒不能带上车,封闭好的的原装白酒最多可带6瓶。若白酒度数高于50度,最多只能带2瓶。未开封的红酒可以带上车,但自制米酒、黄酒均不能带上火车。螃蟹等鲜活类物品螃蟹鸡鸭等活物不能带上车,但自制腊鱼、腊肉只要包装好是可以携带的,前提是不要散发诱人的香味哟~由于乘车旅客较多,车厢内温度较高,

2024-09-07 10:31

侏儒兔能长多大多少斤(117种兔子全图解)

已知最早的兔子出现在5300万年之前,大多数种类出现在1600万年之前,家兔养殖起源于几千年的地中海地区。兔肉蛋白质含量高,长期食用可以有效补充蛋白质。1,侏儒兔,体重246-462克,体长23.5-29.5厘米。2,南非山兔,体长34-47厘米,体重1.5-1.8千克,濒危,数量大约200-400

2024-09-07 10:16

亡羊补牢的意思和道理(“亡羊补牢”的典故与启发)

从前有个牧民,养了几十只羊。一天早上,他准备去放羊,发现羊少了一只。原来羊圈破了个窟窿,夜里狼钻了进去,把羊叼走了。 邻居劝他:“快把羊圈修一修,堵上那个窟窿吧!”他却说:“羊已经丢了,还修羊圈干什么?” 第二天早上,他去放羊,发现又少了一只羊。原来狼又从窟窿钻进去,把羊叼走了。他十分后悔没有听邻居

2024-09-07 10:01

体成语有哪些(成语知识量体裁衣)

量体裁衣,出自南朝梁·萧子显《南齐书·张融传》。南北朝时期,齐国有个人名叫张融,很受皇帝齐太祖萧道成的器重和宠爱。他为人简朴,衣服粗陋。有一次,萧道成专门派人给张融送去一件衣服,并带去一封诏书,诏书写道:“现在送给你一件我曾经穿过的旧衣服,虽然旧了一些,但是穿上会比新的更好,因为已经叫裁缝按照你的身

2024-09-07 09:46