VS2019下配置opencv4.1.0以及opencv2.4.13.5

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/Alieon/article/details/97610026

前言

之前已经配置好了opencv4.1.0的版本,但因为要学习SVM,而许多教程都是用的opencv2.x的版本。它们之间存在一定的差异(见:https://blog.csdn.net/u010869312/article/details/44927721),为了学习方便我决定再配一个opencv2版本。期间遇到了各种问题,这篇文章做一个配置步骤的总结吧。

步骤

  1. 下载opencv。进入官网https://opencv.org/releases/ 看到各种不同的版本,选择2.4.13.5版本的下载。在这里插入图片描述
  2. 配置环境变量。我的电脑(右键)—属性—高级系统设置—高级—环境变量—编辑path,将opencv2.4.13.5的…\opencv\build\x64\vc14\bin添加到path中。在这里插入图片描述
  3. 以上步骤是只需要配置一次的,而下面的就是配置vs2019工程的环境,每次新建一个工程就得重新配置(当然也有永久配置的方法),废话不多说。vs2019导入opencv2.4.13有以下几个步骤:
    3.1. 将工具栏中, debug后面的x86改成x64(为防止忘记,把它放在第一位)在这里插入图片描述
    3.2. 左下角选择属性管理器,在工程上右键,选择属性—VC++目录,配置包含目录。主要添加三项:…\opencv\build\include; …\opencv\build\include\opencv; …\opencv\build\include\opencv2在这里插入图片描述
    3.3. 以上确定后,编辑库目录。添加…\opencv\build\x64\vc14\lib在这里插入图片描述
    3.4. 以上确定后,选择链接器—输入—编辑附加依赖库。这里因为2.4.13版本还没做集成,需要添加很多很多项。具体如下:
    opencv_calib3d2413d.lib
    opencv_contrib2413d.lib
    opencv_core2413d.lib
    opencv_features2d2413d.lib
    opencv_flann2413d.lib
    opencv_gpu2413d.lib
    opencv_highgui2413d.lib
    opencv_imgproc2413d.lib
    opencv_legacy2413d.lib
    opencv_ml2413d.lib
    opencv_nonfree2413d.lib
    opencv_objdetect2413d.lib
    opencv_ocl2413d.lib
    opencv_photo2413d.lib
    opencv_stitching2413d.lib
    opencv_superres2413d.lib
    opencv_video2413d.lib
    opencv_videostab2413d.lib
    在这里插入图片描述
    注意:如果是第一次配置的话,还需要将…\opencv\build\x64\vc14\bin下的所有.dll添加到C://Windows//System32//中

这样配置之后,应该是可以使用了。最后简单测试一下,也是没有问题。在这里插入图片描述

附 -4.x版本与2.x版本的配置差异

为什么我明明配过4.1.0再配2.4.13会这么费劲呢?我觉得有如下两个原因。

  1. 之前也提到了,4.x版本对附加依赖库进行了集成,只需要将…\opencv\build\x64\vc14\bin下的四个.dll放到C://Windows//System32//下,以及配置VS工程时附加依赖库只需要加一个(opencv_world410d.lib)就行了,很方便。而2.x版本,在这个地方需要添加很多项(强烈推荐创一个文本,把所有项保存,下次建工程时直接复制就行了)
  2. 版本的问题(可能不是主要问题)。注意到我们的目录一直是vc14,很多教程可能会是vc10,这个其实是对应于VS的版本的。vc10对应VS2010, vc11对应2012等等。VS2019可以用vc14,之前我下载的opencv2.4.9就根本没有vc14的文件。
  3. 如果在实际运行时发生以下问题,可以在属性管理器—右键属性—C/C++ —预处理器—预处理器定义 添加 _CRT_SECURE_NO_WARNINGS在这里插入图片描述
    在这里插入图片描述
    如果大家对opencv的配置还有任何问题,欢迎提问。

猜你喜欢

转载自blog.csdn.net/Alieon/article/details/97610026