1. 配置系统环境变量:计算机 > 属性 > 高级系统设置 > 环境变量

(1) 首先创建opencv的环境变量, 变量名:OPENCV, 变量值:D:\opencv\opencv3\build (你的opencv解压目录的 build目录)

(2)添加到Path变量。双击 Path, 在变量值末尾添加: %OPENCV%\x86\vc11\bin 。(最后没有 " ; " ,不要手贱哈)

ps: opencv/build目录下有 x64和x86两个目录,里面都有 vc10, vc11, vc12。 这里注意一定要选x86目录,因为编译都是32位的。 vc12 对应 vs2013,不是vs2012,不要被误导了。 (vc11-> vs2012, vc10->vs2010)

  1. 到这里,就可以打开vs2012,开始创建项目了。
    (1)创建一个win32空项目:

(2)打开属性管理器:

(3)在debug上右键,添加新项目属性表,创建一个属性表: opencv_debug.props, 双击它开始编辑:

然后 点击VC++目录 ,我们需要分别添加包含目录和库目录。

<1> 包含目录 -> 编辑,添加这三个目录到包含目录下:

D:\opencv\opencv3\build\include
D:\opencv\opencv3\build\include\opencv
D:\opencv\opencv3\build\build\include\opencv2

<2> 然后添加库目录:

D:\opencv\opencv3\build\x86\vc11\lib
D:\opencv\opencv3\build\x86\vc11\staticlib

<3> 链接器 -> 附加依赖项 -> 编辑

直接拷贝进去:
opencv_ts300d.lib
opencv_world300d.lib
IlmImfd.lib
libjasperd.lib
libjpegd.lib
libpngd.lib
libtiffd.lib
libwebpd.lib
opencv_calib3d300d.lib
opencv_core300d.lib
opencv_features2d300d.lib
opencv_flann300d.lib
opencv_highgui300d.lib
opencv_imgcodecs300d.lib
opencv_imgproc300d.lib
opencv_ml300d.lib
opencv_objdetect300d.lib
opencv_photo300d.lib
opencv_shape300d.lib
opencv_stitching300d.lib
opencv_superres300d.lib
opencv_video300d.lib
opencv_videoio300d.lib
opencv_videostab300d.lib
zlibd.lib

这里链接时使用到的库。 这里有两点需要注意:

  1. 各个版本的opencv链接的库文件不一样,这里只适用于 opencv3.0.0(alpha)版本。
  2. 现在我们添加进的是 debug使用的库, 可以发现每个lib文件文件名后有一个“d”,表示debug。所以下一步我们在添加release版本的时候,添加的链接库和上面的一样,只是后面没有“d“。

(4)做到这里,debug模式调试就可以使用了,为了使用release,我们需要将 步骤(3)的步骤再做一遍,创建一个opencv_release.props 。只是说我们选择的属性是release。而且刚刚已经说过了,添加链接库的时候添加的是后面没有 "d"的。

链接库:
opencv_ts300.lib
opencv_world300.lib
IlmImf.lib
ippicvmt.lib
libjasper.lib
libjpeg.lib
libpng.lib
libtiff.lib
libwebp.lib
opencv_calib3d300.lib
opencv_core300.lib
opencv_features2d300.lib
opencv_flann300.lib
opencv_highgui300.lib
opencv_imgcodecs300.lib
opencv_imgproc300.lib
opencv_ml300.lib
opencv_objdetect300.lib
opencv_photo300.lib
opencv_shape300.lib
opencv_stitching300.lib
opencv_superres300.lib
opencv_video300.lib
opencv_videoio300.lib
opencv_videostab300.lib
zlib.lib

(5)好了,到这里我们就已经配置完了。可以写个程序来测试一下:

#include <opencv2\opencv.hpp>
#include <iostream>
#include <string>
using namespace cv;
using namespace std;
int main()
{
Mat img = imread("D:\opencv\opencv3\1.BMP");
if (img.empty())
{
cout << "error";
return -1;
}
imshow("mypic", img);
waitKey(0);
return 0;
}

(6)这里还有一个建议,每次创建项目都要这样配置是是不是觉得很麻烦。不要忘了我们刚刚创建的项目配置文件, opencv_debug.props 和 opencv_release.props,其实这两个文件是可以提取出来。直接到项目文件夹下,搜索配置文件,直接copy出来,下次就可以直接导入。

选择添加现有属性表,选择我们以前创建好的就可以了。

这样配置简单了一点,但是每次需要添加两次,就是debug和release要分别导入。其实我们可以把两个文件写到一个属性表中,这样debug和release都添加这个就可以了。大家自己把配置文件抓出来做拼接,我这里就不带大家做了,很简单,就是在 标签中添加了条件判断: