电脑基础 · 2023年4月18日

OpenCV的下载、安装和配置

第一步:下载和安装OpenCV SDK:

不同版本之间只有第五步--链接库的配置不同,把对应的版本号(如OpenCV4.6.0的460改成自己对应的版本号就可以了)。

首先进入官网Home - OpenCV,界面如图1.1

OpenCV的下载、安装和配置

图 1.1

点击Library--Release,下载对应操作系统的opencv。我这里下载的windows版本,如图1.2所示。

OpenCV的下载、安装和配置

图 1.2

下载完后得到文件“opencv-4.6.0xx.exe”,如图1.3。下载完成之后,就可以进行OpenCV的安装和配置。与其说安装,不如叫解压更加合适,因为我们下载的.exe安装文件文件就是一个自解压程序而已。双击这个文件后程序会提示我们解压到某个位置,然后在弹出的对话框中点击【Extract】按钮。

OpenCV的下载、安装和配置

图 1.3

解压完之后,会在指定的路径下生成一个opencv的文件夹,它包含了两个子文件夹,分别名为build和sources。其中,build文件夹中是支持OpenCV使用的相关文件,而sources中为OpenCV的源代码及相关文件。

第二步:配置环境变量:

配置方法如下:

【计算机】--【(右键)属性】--【高级系统设置】--【环境变量】--path,在变量值里面添加相应的路径,如添加“...opencv\build\x64\vc15\bin”(x64表示运行系统环境为64位系统,若安装于32位系统,应为x86;VC15表示编译环境为vs2017,VC10等同于VS2010,VC11等同于VS2012,十二等同于VS2013,若VS版本不一样可以百度查询一下,下载相应的opencv。)如图2.1为添加了环境变量。

OpenCV的下载、安装和配置

 图 2.1

 第三步:工程包含(include)目录的配置

首先在VS上新建一个项目,【新建】--【项目】--【windows桌面】--【windows桌面向导】,选择好路径,点击确定,如图3.1所示

OpenCV的下载、安装和配置

图 3.1

进入下一个界面后,点击空项目--确认。在解决方案资源管理器的【源文件】处右键单击--添加--新建项,准备在工程中新建一个cpp源文件。选定【C++文件(cpp)】,进行命名,比如“main”,然后单击【添加】,一个新的.cpp文件就添加到了工程中,如图3.2所示。

 OpenCV的下载、安装和配置

 图 3.2

 在菜单栏里单击【视图】--【其他窗口】--【属性管理器】,如图3.3、3.4所示会显示出来。如图3.5,先双击【Microsoft.Cpp.x64.user】或者右键属性操作,即可打开工程最通用的属性页面。打开属性页面后,首先在【通用属性】--【VC++目录】--【包含目录】中添加以下目录,如图3.6所示,添加如图所示的文件(解压opencv时的路径)。

 OpenCV的下载、安装和配置

 图 3.3

OpenCV的下载、安装和配置

图 3.4 

OpenCV的下载、安装和配置

图 3.5 

 OpenCV的下载、安装和配置

 图 3.6

第四步:工程库(lib)目录的配置

 第四步和第三步差不多,同样是在【通用属性】--【vc++目录】--【库目录】中,添加OpenCV的下载、安装和配置这个路径。这里编译器选择的是win32,就用x86;编译器选的是x64,就用x64。如图4.1所示。

OpenCV的下载、安装和配置

 图 4.1

第五步:链接库的配置

同样是在【通用属性】--【链接器】--【输入】--【附加依赖项】,添加如图5.1所示的lib包(将460改成自己的opencv 版本),注意有的教程是直接添加opencv_world460d.lib,我当时会报错误,所以可以写全路径,当然可以两种方式都试一下。但是要注意的是好像低版本的opencv添加lib需要添加很多个,这个可以百度直接搜,如搜“OpenCV2.4.9配置”,直接将博主的lib复制出来即可。另外,查看自己的解压路径会发现存在两个lib,其中一个文件库带有d结尾的是debug版本,另一个不带d结尾是release版本的,根据自己的情况添加附加依赖项。

OpenCV的下载、安装和配置

 图 5.1

第六步:测试

测试过程为用OpenCV载入并显示一张图片到窗口中。用VS新建一个cpp文件,输入如下代码:

#include <opencv2/opencv.hpp>
using namespace cv;

int main()
{
    Mat img = imread("1.jpg");  //读入一张图片
    imshow("【载入的图片】", img);  //在窗口中显示载入的图片
    waitKey(6000);  //等待6000ms后窗口自动关闭
}

我放置了一张名为1.jpg的图片到工程目录下(和cpp源文件同一路径),然后运行。如果配置成功,就不会报错,并且得到一个控制台和一张图片窗口。

更多问题可参考《OpenCV3编程入门_毛星云编著_电子工业出版》书籍。