1、准备工作:
操作系统:Windows 7
平台:Visual Studio 2012 Ultimate
2、运行OpenCV-2.4.3.exe解压(可以直接双击,运行就是解压,只需选择对应路径)到放置OpenCV的位置,例如E:\Program Files\OpenCV243可以看到,解压后在这个文件夹里面会生成一个文件夹“opencv”,里面就是OpenCV用到的全部文件了,比如“build”、“include”等文件夹。
3、添加环境变量在环境变量中选择系统变量,将两个路径
E:\ProgramFiles\OpenCV243\opencv\build\x86\vc10\bin
E:\ProgramFiles\OpenCV243\opencv\build\x86\vc10\lib
添加进去,并注销或重启Windows(否则环境变量的更改可能无法生效)。
4、启动VS2012(如果正在运行,请重新启动)并配置
(1)新建一个win32控制台项目,例如new(2)右侧边栏中底部选择属性管理器(在视图中可以打开:视图/其他窗口/资源管理器),并将项目new逐级展开,在Debug|Win32中会出现一个Microsoft.Cpp.Win32.user项,右击该项,选择属性,打开Microsoft.Cpp.Win32.user属性页
(3)选择VC++目录,进行如下添加:
包含目录:
E:\Program Files\OpenCV243\opencv\build\include(愿帖子指向另一个include路径,使用后程序会编译通不过)
E:\ProgramFiles\OpenCV243\opencv\build\include\opencv
E:\ProgramFiles\OpenCV243\opencv\build\include\opencv2
库目录:
E:\ProgramFiles\OpenCV243\opencv\build\x86\vc10\lib
(4)选择链接器->输入在依赖附加项中添加下列各项:opencv_calib3d243d.lib;opencv_contrib243d.lib;opencv_core243d.lib;opencv_features2d243d.lib;opencv_flann243d.lib;opencv_gpu243d.lib;opencv_haartraining_engined.lib;opencv_highgui243d.lib;opencv_imgproc243d.lib;opencv_legacy243d.lib;opencv_ml243d.lib;opencv_nonfree243d.lib;opencv_objdetect243d.lib;opencv_photo243d.lib;opencv_stitching243d.lib;opencv_ts243d.lib;opencv_video243d.lib;opencv_videostab243d.lib
5、现在为止已经配置完成了,但是还会有一点点小问题。在新建的项目new中加入代码:
#include "stdafx.h"
#include <opencv2\opencv.hpp>
using namespace cv;
using namespace std;
int main()
{
Mat img = imread("c:/pp.jpg");
if(img.empty())
{
cout<<"error";
return -1;
}
imshow("pp的图片",img);
waitKey();
return 0;
}
编译通过,但是运行的时候会提示缺少一些dll文件,如果是缺少opencv_core243d.dll和opencv_highgui243d.dll,那么从E:\ProgramFiles\OpenCV243\opencv\build\x86\vc10\bin中复制到C:\Windows\System32 中即可;如果是缺少msvcr100d.dll,可以到上下载,然后同样放到C:\Windows\System32 中。
现在,再次运行你的程序,是不是成功了呢?
6、如果需要在Release模式下工作,只需要在4(1)中选择Release|Win32,打开Microsoft.Cpp.Win32.user属性页,用相同的方式加入路径和依赖附加项,但是此时依赖附加项的名称中的243d的d要去掉,因为它代表debug。
(暂时没有尝试,估计靠谱)
最后给出一张程序运行截图:Good Luck!