1.下载OpenCV
到OpenCV官网(http://opencv.org/)下载页面(http://opencv.org/downloads.html)下载相应的OpenCV版本。这里下载的是OpenCV2.4.9。
- OpenCV选择安装2.4.X系列,一方面是学习资料比较多,另一方面入门比较快。
- 入门先看《OpenCV3编程入门》,这本书其实主要是讲opencv2,主体上是基于opencv2.4.9写的,适用于现在opencv2和3的版本;浅显易懂,代码写的很规范,注释内容也详细,还有完整的实例,适合新手模仿和入门;看过《OpenCV3编程入门》之后,可以去看《学习Opencv》,很经典的一本书。
- OpenCV官网上有源码编译安装的教程:”http://docs.opencv.org/3.0-last-rst/doc/tutorials/introduction/windows_install/windows_install.html”;这里是二进制文件安装。(源代码方式和二进制包是软件包的两种形式。源代码包里包括原始的程序代码,需要在你的计算机上进行编译后才可以产生可以运行;二进制包里是已经经过编译,可以马上运行的程序。你只需要下载和解包(安装)它们以后,就马上可以使用。所以从源代码安装的时间会比较长。参考博文:http://blog.chinaunix.net/uid-26602509-id-3076870.html)
2.解压OpenCV
下载完OpenCV2.4.9之后,双击"opencv-2.4.9.exe",弹出解压对话框,选择目标路径(这里选的是 D:\OpenCV\ProgramFiles)。
- OpenCV.exe解压出来的根目录是“opencv”,因此不需要在安装目录里额外建“opencv”的文件夹。
3.配置环境变量
- 在OpenCV配置中,注意选择和自己安装的VS的版本相对应的文件。VSxx和VCxx的对应关系为:VC6;VC7(VS2003);VC8(VS2005);VC9(VS2008);VC10(VS2010);VC11(VS2012);VC12(VS2013)。这里安装的是VS2012,因此路径里选择的是VC11。
- 另一点要关注的是上述变量值到底应该是x86还是x64?这里x86还是x64的选择跟你的电脑是32位还是64位无关,vs2012编译环境默认的使用win32编译器,所以选择x86。
4.VS2012配置
在OpenCV官网上“http://docs.opencv.org/3.0-last-rst/doc/tutorials/introduction/windows_visual_studio_Opencv/windows_visual_studio_Opencv.html#windows-visual-studio-how-to”有一篇如何在VS中配置OpenCV的英文文章《How to build applications with OpenCV inside the Microsoft Visual Studio》。
4.1新建工程项目
4.2配置VS属性表
注:vs中的工程有debug和release两个版本:
- Debug通常称为调试版本,通过一系列编译选项的配合,编译的结果通常包含调试信息,但是不做任何优化(性能有影响),目的是为开发人员提供强大的应用程序调试能力,也就是说只有在Debug模式下,我们才可以使用vs所提供的所有的程序调试功能,比如:单步调试中将光标移至变量处即可以获取该变量的实时数据。
- Release通常称为发布版本,是为用户使用的,一般客户不允许在发布版本上进行调试,在Release模式下也无法使用vs所有的调试功能。所以不保存调试信息,同时,它往往进行了各种优化,以期达到代码最小和速度最优。为用户的使用提供便利。
4.2.1为Debug版本新建属性表
opencv_core249d.lib
opencv_imgproc249d.lib
opencv_highgui249d.lib
opencv_ml249d.lib
opencv_video249d.lib
opencv_features2d249d.lib
opencv_calib3d249d.lib
opencv_objdetect249d.lib
opencv_contrib249d.lib
opencv_legacy249d.lib
opencv_flann249d.lib4.2.2为Release版本新建属性表
opencv_core249.lib
opencv_imgproc249.lib
opencv_highgui249.lib
opencv_ml249.lib
opencv_video249.lib
opencv_features2d249.lib
opencv_calib3d249.lib
opencv_objdetect249.lib
opencv_contrib249.lib
opencv_legacy249.lib
opencv_flann249.lib4.3保存VS属性表
根据步骤4.2,4.3配置属性表,需要在每次新建工程的时候对已保存的属性表进行添加,还是有些麻烦,因此使用下述方法,在属性管理器中进行一次配置,新建的工程就不用再额外进行配置。
菜单栏中 单击 视图→ 属性管理器。
在窗口中展开 Debug|Win32文件夹,对文件夹中的Microsoft.Cpp.Win32.userDirectories 右键单击 ,选择属性(或双击),打开工程通用的属性页面。在这个页面中进行上述步骤4.2,4.3中的操作。
注意:在添加链接库的时候,在 附加依赖项中 将带d的debug版lib写在前面,不带d的release版lib写在后面(优先支持debug模式的编译运行)。或者只添加带d的debug版lib。
利用下面的代码进行测试。
#include <iostream>
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main()
{
Mat image = imread("../orange.jpg",0); //载入灰度图
if(!image.data) //对载入图像是否成功进行判断
{
cout << "fail to load image"<<endl;
return 0;
}
namedWindow("Image");//创建窗口
imshow("Image",image);
waitKey();
return 0;
}
如果成功显示图片则说明配置成功。