opencv的配置

下载的是2.4.10的版本,编译环境VS2012。
第一步,双击opencv-2.4.10.exe,选择解压到c:\,即C盘根目录,解压的时候会自动生成一个opencv的文件夹的,然后解压的文件都在这个opencv的文件夹里面。注意:我解压的路径是c:\,但如果你解压的不是这个目录,比如说解压在d:\tmp\,那么下面所有涉及到路径有关的配置都需要把c:\替换为d:\tmp\
第二步,设置环境变量。设置环境变量的目的在于,让操作系统知道opencv编译出来的DLL的位置,这一步没有设置对的话,在程序运行的时候,会出现找不到opencv的某个dll的提示之类的错误。右键计算机->属性->高级系统设置->高级->环境变量,在用户变量与系统变量下修改Path变量,如果没有这个变量的话,就新建一个。这里把Path变量的值改为c:\opencv\build\x86\vc11\bin 用户变量还是系统变量随便选一个改都可以,其实问题不大。改完需要重启或者注销才能生效。看下图就知道了,这个Path路径下面其实就是一堆的dll。
opencv的配置
文章图片


第三步,为了演示,在VS2012下,新建一个空的控制台程序。为了编译opencv,当然首先必须包含opencv的头文件吧。opencv编译头文件在路径:C:\opencv\build\include 下,里面头文件很多的,为了编译的顺利,先不用管那么多,直接右键点击解决方案,找到属性,在C/C++->常规->附加包含目录,加上以下3条路径:
c:\opencv\build\include
c:\opencv\build\include\opencv
c:\opencv\build\include\opencv2

opencv的配置
文章图片


第四步,仅仅有头文件还是不足以编译opencv的,我们在使用dll的时候,需要dll文件本身,相对应的头文件,还有相对应的lib文件。那opencv的lib文件在哪里?在路径C:\opencv\build\x86\vc11\lib下。
opencv的配置
文章图片


【opencv的配置】这样,在正式使用和编译opencv的函数的之前,还需要告诉编译器,opencv的dll相对应的lib文件在哪里。
在链接器—>常规—>附加库目录,加入路径:C:\opencv\build\x86\vc11\lib

opencv的配置
文章图片


然后,在在链接器—>输入—>附加依赖项,输入lib的名字。值得注意的是,opencv的dll分为debug和release版本,名字差不多,只是debug版本的名字后面会有个字母d。比如,opencv_core2410.dll和opencv_core2410d.dll,前者是发布版,后者是调试版,这里发布版的先不管,把以下lib加进去。
opencv_calib3d2410d.lib;
opencv_contrib2410d.lib;
opencv_core2410d.lib;
opencv_features2d2410d.lib;
opencv_flann2410d.lib;
opencv_gpu2410d.lib;
opencv_highgui2410d.lib;
opencv_imgproc2410d.lib;
opencv_legacy2410d.lib;
opencv_ml2410d.lib;
opencv_nonfree2410d.lib;
opencv_objdetect2410d.lib;
opencv_ocl2410d.lib;
opencv_photo2410d.lib;
opencv_stitching2410d.lib;
opencv_superres2410d.lib;
opencv_ts2410d.lib;
opencv_video2410d.lib;
opencv_videostab2410d.lib;
opencv的配置
文章图片


唉,一股脑都加进去了。实际上当然是用到哪个加哪个了,不过那样麻烦。
第五步,设置完成后,在工程的源文件输入如下测试代码。

#include using namespace cv; int main(int argc, char* argv[]) { Mat img = imread("d:/paojie.jpg"); imshow("image", img); waitKey(); return 0; }

顺利编译,运行,结果如下的话,那就正常运行了:
opencv的配置
文章图片

当然了,图片的路径要设置对,d盘下,得有paojie.jpg这幅图片。


可以看到,设置起来还是挺麻烦的。难道每一个用到opencv的工程都要这么蛋疼地设置一遍吗,当然不能。我们可以把opencv的设置保存下来。
刚才我们是直接在项目属性里做的各种设置,现在,不要在工程属性里面设置。打开属性管理器,以debug设置为例。右键点击debug|win32,选择“添加新项目属性表”。
opencv的配置
文章图片

接下来,名字什么的随便啦。
opencv的配置
文章图片

点击添加,这样就保存了一份opencv的设置。在属性管理器上右键刚才新建的那份名为opencv的属性表,选择属性。
opencv的配置
文章图片



在弹出来的属性页里面,把我们之前做的那些配置重来一遍,不过这次的配置不会白费的,会保存在一个.props后缀名的文件,比如我的opencv.props。
opencv的配置
文章图片


配置完成后,以后哪个工程需要用到opencv的,直接在属性管理器上,把这个props文件添加进来,直接编译就完事了,省心。


    推荐阅读