Visual Studio 2019 + OpenCV3.4.1 安装配置

耗尽温柔 提交于 2019-11-27 02:48:32

感谢以下作者提供的资料:

https://www.cnblogs.com/xinxue/p/5766756.html

https://www.bilibili.com/video/av28288594/?p=1

https://blog.csdn.net/qq_41175905/article/details/80560429

https://www.bilibili.com/video/av29600072?t=1234

一、 所使用的安装包

本人的计算机是Win10 64位操作系统,后续下载的各种软件包都需适用于该系统。

本人所使用的安装包下载地址

链接: https://pan.baidu.com/s/1L0K6S8Exbgxhqf6LsYyqyQ

提取码: 7xsv 

 

1 Visual Studio 2019 专业版  

1.1 下载地址:https://visualstudio.microsoft.com/zh-hans/

1.2 安装教程:https://jingyan.baidu.com/article/380abd0ac4f3951d90192cd0.html

1.3 备注:

安装时,本人选择的是“全部下载之后再安装”。

安装之后,电脑不能联网了,原因未知。手动禁用网络适配器,再重启,网络恢复正常。

 

2 OpenCV相关下载

下载相匹配的opencvopencv_contrib,本人使用的是opencv 3.4.1和相应的opencv_contrib 3.4.1

2.1 OpenCV 3.4.1

下载:https://github.com/opencv/opencv/releases

 

 

2.2 opencv_contrib3.4.1

下载:https://github.com/opencv/opencv_contrib/releases

下载之后,进行解压。本文统一存放在D盘自创建的OpenCV目录中:

3 Cmake下载

 

3.1 由于在cmake编译过程中需选择visual studio的版本号,本人使用的是visual studio2019,因此同样选用最新版本的Cmake v3.15.2

下载:https://github.com/Kitware/CMake/releases

将其解压;本人将其放在了D盘自创建的OpenCV目录中。

 

二、Cmake 编译

1 双击,运行D:\OpenCv_ZL\cmake-3.15.2-win64-x64\bin中的cmake-gui.exe

1.1 弹出一个窗口,

在“where is the source code ”中填入或选择opencv3.4.1的目录(已存在的目录),即:D:\OpenCv_ZL\opencv-3.4.1;

在“where to build the binaries”中填入自创建的目录(本人在opencv-3.4.1目录中新创建了一个newbulid目录),即:D:\OpenCv_ZL\opencv-3.4.1\newbulid_zl

1.2 设置好路径后,点击左下角的 Configure 按钮,弹出窗口

在“Specify the generator for this project"中选择相匹配的visual studio版本,本人选择的是 Visual Studio 2019(与本人所安装的版本相匹配)

1.3 点击 Finish 按钮,继续,此时主界面的 Configure 按钮变为 Stop,表示配置进行中

注意:(参考资料1)

如遇到问题,先检查错误信息;然后,点击 File -> Delete Cache,退出 cmake-gui,并将 newbuild_zl 文件夹内的内容清空,再重复步骤 1。(备注:本人配置此处时,未提示错误信息。)

Configure 依次结束后,如果 cmake 的主界面仍有红色区域,则再次点击 Configure 进行配置,直到红色区域完全消失。

1.4 

找到 Name 下的 OPENCV_EXTRA_MODULES_PATH,为其设置 opencv_contrib-3.4.1 的路径 ,精确到 /modules 目录,即:D:\OpenCv_ZL\opencv_contrib-3.4.1\modules

再次点击 Configure 进行配置,可能需要 Configure 两三次之后,红色区域才能完全消失。

最后,点击 Generate,出现 “Generating done” 则意味着 cmake 的工作结束了。

图示如下:

 

三、 Install

生成相应的库,include,lib,bin等。

1 进入到D:\OpenCv_ZL\opencv-3.4.1\newbulid_zl中,找到OpenCV.sln,使用 VS 2019 打开。

界面显示,正在加载142个解决方案:

打开界面后,在左侧找到CMake Targets,找到其中的INSTALL,右键点击生成,如下如所示:

等待生成完成,如下图所示:

此时,说明已经Install完成了。

返回至目录D:\OpenCv_ZL\opencv-3.4.1\newbulid_zl,发现多出了install目录,点击进去,图示如下:

备注:当时做到这一步的时候,发现这个文件夹中并没有x64这个文件夹,有点方。。。别人的资料中都有,这个咋没有呢?

对比检查install前后的newbuild_zl文件夹发现,在install之后,该文件夹中不仅生成了install文件夹,而且还生成了x64,如图所示。心想,有可能新版本就是这个样子吧,暂且不管它了。(后续执行顺利,未出错误)

 

四 配置库和环境变量

1 在visual studio中新建一个空项目,用于配置相应的库。

1.1 图示如下:

2 点击右上角视图,选择其他窗口,选择属性管理器,则在界面左侧出现属性管理器。

3 在左侧中查找Debug | x64

备注:做到这一步的时候也有点方,在Debug | x64下拉菜单中,以往的资料中显示有Microsoft.Cpp.x64.user,这咋没有呢?

百度一下吧,发现别的小伙伴配置VS2019到这一步时,也没有这个。

本人直接在Debug | x64上右键,选择属性,继续后续的配置(后续执行顺利),如图:

3 配置2种目录和1个附加依赖项

3.1 在VC++ 目录中

3.1.1 选择,包含目录,添加上以下3个目录

D:\OpenCv_ZL\opencv-3.4.1\newbulid_zl\install\include\opencv

D:\OpenCv_ZL\opencv-3.4.1\newbulid_zl\install\include\opencv2

D:\OpenCv_ZL\opencv-3.4.1\newbulid_zl\install\include

点击确定

3.1.2 选择,库目录,添加以下1个目录:

D:\OpenCv_ZL\opencv-3.4.1\newbulid_zl\install\lib

点击确定。

备注:配置这里的时候,也有点方,以往的资料都是选择install中x64中的vc14中的lib,而本人生成的x64一方面不在install中,另一方面这个x64文件夹中,也没有lib。

本文尝试直接将install中的lib加进去了,后续执行顺利。

3.2 选择链接器

3.2.1 选择其中的输入,选择附加依赖项,将D:\OpenCv_ZL\opencv-3.4.1\newbulid_zl\install\lib中的所有lib文件的名字添加进去,如图所示:

备注:这里的lib库的位置在D:\OpenCv_ZL\opencv-3.4.1\newbulid_zl\install\lib中,而以往别人的是在x64下面的子文件夹中。不过,此处配置未出现异常。

关于提取文件名,可参考教程:https://zhidao.baidu.com/question/269400317.html

4 配置环境变量

此处直接将D:\OpenCv_ZL\opencv-3.4.1\newbulid_zl\install\bin添加到计算机的环境变量中,未出现异常。

4.1 此电脑--高级系统设置--环境变量--找到path,点击编辑,点击新建,粘贴D:\OpenCv_ZL\opencv-3.4.1\newbulid_zl\install\bin,点击确定。

 

至此,配置完成了。

五 调试试一下

5.1 在自创建的Project1中,右键源文件,点击添加,点击新建项,创建一个main.cpp文件,用于编写程序:

5.2 程序代码如下

#include <opencv2/opencv.hpp>
#include <iostream>

using namespace cv;

int main(int argc, char** argv) {
    Mat src = imread("E:/ZL_OpenCv_Projects/NeZha.jpg");
    if (src.empty()) {
        printf("Empty!");
        return -1;
    }
    namedWindow("Figure1", CV_WINDOW_AUTOSIZE);
    imshow("Figure1",src);

    waitKey(0);

    return 0;


}

备注:

1 选择debug x64而不是x86。

2 点击生成,选择重新生成解决方案;

3 点击调试,选择开始调试。

程序运行如下:

 

完成了。

 

 

 

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!