需要准备:
1. OpenCV 3.0.0
2. Visual Studio2012
第一步:安装OpenCV并设置环境变量
计算机 -> 属性 -> 高级系统设置 -> 环境变量
加入名为OPENCV的变量,值为D:\opencv\opencv\build(依据个人的OpenCV安装路径而定)
在Path变量后追加;%OPENCV%\x86\vc11\bin
注意:
1. 64位系统 = x64
32位系统 = x86
vc11 = vs2012
vc12 = vs2013
如果不注意将vs2012当作vc2012,那么最后程序运行会出现丢失.dll文件的错误,后面设置库目录也要特别注意!
设置好环境变量后,最好注销下计算机,重新登录才能生效。
2. 第二步:在VS2012中新建你的项目
建立一个空项目就好,具体过程略去。
建好工程后,视图 -> 属性管理器,右键Debug,添加新项目属性表
新建名为OpenCVx86.Debug.prop的项目属性表(区分Release的)
双击新建好的OpenCVx86.Debug.props属性表,找到 常规 -> VC++目录 -> 包含目录 下拉后点开编辑,添加如下几项
D:\opencv\opencv\build\include
D:\opencv\opencv\build\include\opencv
D:\opencv\opencv\build\include\opencv2
确定后,点开库目录,编辑,追加如下2项:
D:\opencv\opencv\build\x86\vc11\lib
D:\opencv\opencv\build\x86\vc11\staticlib
确定后,返回VC++目录,找到 链接器 -> 输入 -> 附加依赖项,追加如下项:
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
注意,这里追加的项和OpenCV2.4.x的有很多不同,OpenCV3.0.0毕竟是最新的。
同理,按照上述方法对Release对应的属性管理器做相同操作即可,只不过附加依赖项追加如下:
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
3. 第三步:测试是否配置成功
将名为pic.jpg的图片放到工程下,新建源文件输入以下代码,运行,若看到显示图片就说明配置成功了!
如果以后有其他新建项目用到OpenCV,只需要在属性管理器页面导入以上创建的项目属性表即可!
- #include <opencv2\opencv.hpp>
- #include <iostream>
- #include <string>
- using namespace cv;
- using namespace std;
- int main()
- {
- Mat img = imread("pic.jpg");
- if(img.empty())
- {
- cout<<"error";
- return -1;
- }
- imshow("mypic",img);
- waitKey();
- return 0;
- }
终于配置好了,听说OpenCV3.0.0出了许多好玩的特性,有待研究!