在OpenCV官网的下载页面: http://opencv.org/downloads.html 找到对应OpenCV for Windows版本下载。目前(2016/07/02)官网的最新版本是2015/12/21发布的Version 3.1.0,最新发布是2016/05/19日的Version 2.4.13。
Version 3.1.0只有64位的开发包,还没(不知道未来会不会)支持32位的编译环境,这里使用Version 2.4.13。
下载完成之后双击“opencv-2.4.13.exe”,弹出安装(解压)对话框:
选择安装路径,这里使用的是“D:\ProgramFilesD”,点击“Extract”后开始解压;
值得注意的一点是不需要在安装目录里额外建“opencv”的文件夹,OpenCV安装包解压出来的根目录就是“opencv”。
点击开始菜单,右击计算机->属性->高级系统设置->高级->环境变量,打开环境变量设置对话框,如下图:
在用户变量里新建变量OpenCV,变量值:D:\ProgramFilesD\opencv\build;
在用户变量里新建变量path,变量值:D:\ProgramFilesD\opencv\build\x86\vc11\bin;
在这里可能有人会有疑问:编译器是VS2012,变量值不应该是XX\vc12\bin吗?注意,在OpenCV配置中,vc11即对应VS2012,vc12对应的是VS2013。
另一点要关注的是上述变量值到底应该是x86还是x64?这里x86还是x64的选择跟你的电脑是32位还是64位无关,vs2012编译环境默认的使用win32编译器,所以选择x86。
在系统变量里编辑(或添加)Path变量,变量值:D:\ProgramFilesD\opencv\build\x86\vc11\bin,注意要使用英文输入下的分号和前面已有的路径分开,添加完之后需要重启或注销计算机,环境变量才会生效。
新建Win32控制台应用程序,工程名命名为MyFirstOpenCV,在其后的选项里选择空项目:
右击MyFirstOpenCV工程->添加新建项,在弹出的对话框中选择C++ 文件(.cpp),添加源文件,命名为MyFirstOpenCV.cpp:
在视图目录的下拉菜单中打开属性管理器,在属性管理器的Debug|Win32目录上单击选择“添加新项目属性表”,新建属性表,并命名为OpenCV_Debug_Setting.props,如下图所示:
双击打开属性表OpenCV_Debug_Setting.props。选择通用属性->VC++目录,在包含目录里添加3个目录:
D:\ProgramFilesD\opencv\build\include\opencv2
D:\ProgramFilesD\opencv\build\include\opencv
D:\ProgramFilesD\opencv\build\include
D:\ProgramFilesD\opencv\build\x86\vc11\lib
选择通用属性->链接器->输入->附加依赖项,在附加依赖项里添加库文件:
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
OK,至此,VS2012环境下配置OpenCV2.4.13的工作已经全部完成了,对于之后创建的OpenCV工程,只需要添加本工程的属性配置即可,不再需要一步一步重复配置。
方法:首先保存本工程的属性配置文件OpenCV_Debug_Setting.props到备用文件夹,该属性配置文件在本项目中的路径是:
D:\VS2012Test\MyFirstOpenCV\MyFirstOpenCV
之后在新创建的工程中,在属性管理器中添加OpenCV_Debug_Setting.props属性表即可:
最后让我们来测试一下所做的配置是否OK。
在程序的源文件MyFirstOpenCV.cpp文件中加入如下代码,用于在窗口中显示一幅图片:
#include
#include
#include
using namespace cv;
using namespace std;
int main()
{
//读入图片,注意图片路径
Mat image=imread("D:\\Picture\\lena.jpg");
//图片读入成功与否判定
if(!image.data)
{
cout<<"you idiot!where did you hide lena!"<
如果配置正确,编译运行后令我们魂牵梦绕的lena大美女就会出现在屏幕上对我们微笑了。
OpenCV的神奇美妙世界的大门已经为你敞开,Go for it!