一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)

拜小白教你一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍

本机环境:win10 64位 
OpenCV2.3.14
Visual Studio 2013
最后结果,亲测可用

========================分割线====================

若是知道如何配置环境,只想了解如何一次配置好OpenCV+VS开发环境,不用每次新工程都重新配置一遍的同学,请直接看第5、9、10步骤不知道怎么配置的同学还请耐心看全文,自己感觉写的好啰嗦,篇幅较长,还请耐心配置,一定会成功的。(PS:主要是图片有点大。。。囧.....)

=====================分割线====================

之前写过一篇关于opencv3.2.0与VS2017配置教程: 拜小白教你OpenCV3.2.0+VS2017开发环境配置

这里有同学会感觉到,每次配置都需要重新配置,好麻烦的说。在此,博主将重新用OpenCV2.4.13+VS2013重新配置,顺便解决一下如何一次配置好开发环境,不用每次新工程都重新配置一遍。

另外一点就是自己最近在用到特征匹配时,如使用SIFT、SURF等时,发现在OpenCV3中无法使用。查找相关资料发现,由于目前发行的OpenCV3中,众多著名的特征检测算子(如SIFT、SURF、ORB算子等)所依赖的稳定版的源代码已经从官方发行的OpenCV3中移除,而转移到一个名为xfeature2的第三方库中。 而要将此库导进来,目前自己还不会,感觉操作起来有些麻烦,因此还是重新使用OpenCV2吧,因为在OpenCV2中可以使用特征检测算子(如SIFT、SURF、ORB算子等)。

如何做到不用每次重新配置,说白了就是将VS第一次配置OpenCV的项目属性表保存下来,每次新建项目时引用即可。

此篇文章,相比之前的配置大体是一致的,但本文更为详细,有些特别的步骤,我将会重点强调(PS:之前的文章没有注意到,囧---)。

=======================分割线==================

1-OpenCV的下载与安装

opencv官方下载地址:http://opencv.org/releases.html#

以本文为例:选择的是opencv2.3.14,windows系统

一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第1张图片

下载好后,双击进行安装(PS:其实它的安装过程是个解压的过程)。要记住好安装的路径,后边需要

建议在英文路径下,不用有中文和空格。

============================分割线==============

2-电脑系统环境配置

在系统属性里Path变量,添加OpenCV的bin路径,见下图:

以本文bin路径为例:D:\....\opencv\build\x86\vc12\bin

一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第2张图片

找到Path进行编辑,把上一步骤中解压(安装)好的OpenCV路径下的bin路径添加到Path系统环境变量中。

【注意】在选择bin路径时,你会发现这里有x64、x86俩个里都有bin,如下图:

一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第3张图片

那么到底选择哪里的bin添加到Path变量中呢????

答:如果你的VS工程里应用程序是win32控制台应用程序,则选择x86的路径;如果你的应用程序是win64控制台应用程序,则选择x64的路径。 (选择x64,还是x86对后面在VS中配置opencv有影响,与本机是32位,64为无关。我是这么理解的,囧---)。

那么,以本文为例,我选择是x86下的bin,将其添加到Path变量中。(若你选择x64下的bin,那么后文我也有对应的配置方法,不必担心)

【建议】配置好后此时电脑最好重启下。

另外:vc8表示VS2005,vc9表示VS2008,vc10,表示VS2010。而vc11, vc12 分别VS2012, VS2013的编译器版本,后续版本以此类推,根据自己的VS版本来填写正确的编译器版本号。

========================分割线===================

3-在VS2013新建工程

文件-->新建-->项目  (快捷键:Ctrl+Shift+N)
一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第4张图片
选择Win32控制台应用程序-->项目名称自己随意起,如下图:
一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第5张图片
选择【下一步】
一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第6张图片
选择【控制台应用程序】【空项目】,然后点击【完成】
一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第7张图片
================================分割线======================

4-找到属性管理器

视图-->其他窗口-->属性管理器。如下图:
一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第8张图片
此时在界面的右侧找到属性管理器界面,如下图:
一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第9张图片
=======================分割线=========================

5-添加新的属性表

选择的是Debug|Win32,右键【添加新项目属性表】。(如果想在Release模式下使用OpenCV,右击Release|Win32,同理可得)
【注意】 这是解决一次配置,不用每次新工程都重新配置的关键 PS:在之前的文章里,没有添加新属性表,而是直接配置了,这就导致每次新工程都重新配置
一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第10张图片
名字随意起,但最好起个自己能知道这个表是干什么用,省着以后忘记了。如下图:
一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第11张图片
点击【添加】后,此时右侧表里就会多了一个刚刚新见的属性表,如下图:
一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第12张图片
=========================分割线=====================

6-添加包含目录

右击刚刚新建的属性表,选择【属性】,如下图:

一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第13张图片

则会弹出【属性页】,选择【VC++目录】-->【包含目录】,对其进行编辑,如下图:
一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第14张图片
【注意】添加下面三个路径(根据自己oepncv路径自行修改):
D:\DiyProgram\OpenCV2413\opencv\build\include
D:\DiyProgram\OpenCV2413\opencv\build\include\opencv
D:\DiyProgram\OpenCV2413\opencv\build\include\opencv2
一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第15张图片
点击【确定】完成添加。
================分割线=================

7-添加库目录

选择【VC++目录】-->【库目录】,对其进行编辑,如下图:

一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第16张图片
添加路径(根据自己oepncv路径自行修改):D:\DiyProgram\OpenCV2413\opencv\build\x86\vc12\lib
【注意!!】这里有x64、x86俩个里都有lib文件,那么选择哪个呢? 
这个根据本文第2步骤——电脑系统环境配置,里你选择是哪个进行对应添加。以本文为例,我当时选择是x86下的bin,将其添加到Path变量中,因此这一步骤,我就选择...opencv\build\x86\vc12\lib。若你当时选择的是x64下的bin,将其添加到Path变量中,那么这一步骤中,你就选择...opencv\build\x64\vc12\lib。
一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第17张图片
点击【确定】,完成添加。
=========================分割线=============

8-添加附加依赖项

【链接器】-->【输入】-->【附加依赖项】,在附加依赖项里添加库文件

opencv_ml2413d.lib

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_objdetect2413d.lib

opencv_ts2413d.lib

opencv_video2413d.lib

opencv_nonfree2413d.lib

opencv_ocl2413d.lib

opencv_photo2413d.lib

opencv_stitching2413d.lib

opencv_superres2413d.lib

opencv_videostab2413d.lib

一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第18张图片
点击【确定】,完成添加。OK,到此,VS2013环境下配置OpenCV2.4.13的工作已经全部完成了,现在,你就可以在此工程下用opencv写代码,并运行程序验证是否坏境搭建成功。
对于之后创建的OpenCV新工程,只需要添加刚刚创建的属性表即可,不再需要一步一步重复配置。具体方法见下面步骤。
【注意】若是你是在Release下,则在【附加依赖项】里添加:

opencv_objdetect2413.lib
opencv_ts2413.lib
opencv_video2413.lib
opencv_nonfree2413.lib
opencv_ocl2413.lib
opencv_photo2413.lib
opencv_stitching2413.lib
opencv_superres2413.lib
opencv_videostab2413.lib
opencv_calib3d2413.lib
opencv_contrib2413.lib
opencv_core2413.lib
opencv_features2d2413.lib
opencv_flann2413.lib
opencv_gpu2413.lib
opencv_highgui2413.lib
opencv_imgproc2413.lib
opencv_legacy2413.lib
opencv_ml2413.lib

【区别】:就是在Debug中后面有字母d,Release下没有d。


=====================分割线======================

9-找到刚刚新建的属性表并存放到自己熟悉常用的地方

在当前工程下,我们会发现,刚刚新创建的属性表,此表是已经配置好的opencv目录。然后将此新表复制到一个你常用的地方,以本文为例,我将它存放到D盘,方便以后的查找。

一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第19张图片

复制到D盘下

一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第20张图片

===========================分割线==================

10-创建新工程举例说明,如何导入刚刚创建的属性表

本次创建新工程的名称为——【TestDemo3】  如何创建工程上边写过,这里跳过。(PS: 之前创建的是【TestDemo1】,不一样哦
同样是找到【属性管理器】,在【Debug|Win32】右击,选择【添加现有属性表】

一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第21张图片

以本文为例,找到放到D盘中的属性表,并选择,见下图:
一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第22张图片

此时在【Debug|Win32】中,导入进来已经配置好的属性表,此时你就可以编写opencv相关程序了。
这样就解决了一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍。
一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第23张图片

=========================分割线===================

11-建项并测试效果

一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第24张图片
一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第25张图片

编写代码进行测试:
#include 
using namespace cv;

int main()
{
	Mat srcImage = imread("D:\\OutPutResult\\ImageTest\\dog.jpg");
	namedWindow("显示图像");
	imshow("显示图像", srcImage);
	waitKey(0);
	return 0;
}


显示结果
一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第26张图片
=========================分割线=================

12-关于x64相关解决方法

不知道你是否注意到,在第2步骤,和第7步骤中,都有关于x86与x64的选择,以本文为例是在x86中进行配置的。
但若你在第2步骤,和第7步骤中中选择x64,那么在vs中,你就应该这么配置(PS:博主之前配置文章就在x64中配置),x64配置见下文:
你只需要选择x64平台,选择方法见下图:
一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第27张图片
选择新建,见下图:
一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第28张图片
选择【x64】,并确认,见下图:
一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第29张图片
此时,你会发现右侧【属性管理器】里会多出关于x64平台的文件夹,然后,依据上文与在【Debug|Win32】建立新的属性表步骤一样。只不过,以后创建新工程的时候,你必须把x64的平台创建出来,然后把已经配置好的属性表导入进【Debug|x64】中。
一次配置好OpenCV2.4.13+VS2013开发环境,不用每次新工程都重新配置一遍(详细版步骤)_第30张图片
=========================分割线=====================

【后记】还是强调一下!!!(PS:毕竟自己犯过此类错误,囧----)
注意步骤2,和步骤7中,你要保证选择目录路径的x86或x64要统一(不是按照系统选择的哦!!),而是在VS2013中若是用【Debug|Win32】则选择x86,若是用【Debug|x64】则选择x64。

=======================END===================



你可能感兴趣的:(【拜小白OpenCV】,杂谈OpenCV,【工具安装教程】,一步步学习OpenCV2)