【转】windows下vs2008/2010+opencv2.2开发环境搭建
版权声明:本文为博主原创文章,未经博主允许不得转载。
1.下载安装Cmake
2.用cmake配置opencv2.2,然后编译,安装
3. 在vs2008中配置opencv2.2
4.Demo
1.下载安装Cmake
下载cmake有各种各样的方式,(1)官方网张,http://www.cmake.org/cmake/resources/software.html ,(2)Google一下,结果。……
2.用cmake配置opencv2.2,然后编译,安装
2.1 下载opencv2.2,http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.2/ ,
2.2 打开cmake,
是刚下载的opencv源代码所在的文件夹,
是cmake配置好的文件放在那里。
点击finish后看到下图的效果:
点击 Generate,得到下图
可以把cmake关掉了。
2.3编译。
然后在C:/OpenCV-2.2.0/VS2008(根据个人选择的文件夹不同而而定),
用vs2008打开它,如下图:
(1)编译debug版本,如下图;
右键点击ALL_BUILD,选择“生成”,然后右键点击INSTALL,选择“生成”,即可。
(2)生成release版本,只有一处不同之处,先选定release,其他步骤完全一致。
编译opencv2.2已经完成,还要配置。
(3)添加环境变量PATH ,
右键“我的电脑”出来下面的图片,高级→环境变量
添加C:\OpenCV-2.2.0\VS2008\bin,注意分号!!
(4)配置vs2008。
//这部分直接参考了,点这里。
打开VC++ 2008 Express,菜单 Tools -> Options -> Projects and Solutions -> VC++ Directories
- Show directories for选择executable files,加入目录C:\OpenCV-2.2.0\VS2008\\bin
- Show directories for选择include files,加入目录C:\OpenCV-2.2.0\VS2008\include,注意:不要用C:\OpenCV-2.2.0\VS2008\include\opencv或者C:\OpenCV-2.2.0\VS2008\include\opencv2,否则就会有这样的问题 。
- Show directories for选择library files,加入目录 C:\OpenCV-2.2.0\VS2008\
include\lib - (谢谢网友leaglave_jyan,http://blog.csdn.net/leaglave_jyan,的指正,C:\OpenCV-2.2.0\VS2008\include\lib应该改为C:\OpenCV-2.2.0\VS2008\ib)
4. demo
- #include "stdafx.h"
- #include <cv.h>
- #include <cxcore.h>
- #include <highgui.h>
- #pragma comment(lib,"opencv_core220d.lib")
- #pragma comment(lib,"opencv_highgui220d.lib")
- #pragma comment(lib,"opencv_imgproc220d.lib")
- int _tmain(int argc, _TCHAR* argv[])
- {
- const char* szFileName = "D:\\blog.csdn.net_moc062066.png" ;
- const char* szWinName = szFileName ;
- IplImage* image = cvLoadImage( szFileName,CV_LOAD_IMAGE_COLOR ) ;
- assert( NULL != image ) ;
- cvNamedWindow(szWinName) ;
- cvShowImage(szWinName,image) ;
- cvWaitKey(0) ;
- cvReleaseImage(&image) ;
- cvDestroyWindow(szWinName) ;
- return 0;
- }
注意:要把include下opencv2拷贝到opencv下,不然错误如下。
拷贝过程,
运行结果:
说明:vs2008/2010用这种办法安装opencv2.2是没有问题的,但是vs2008用这种办法是安装不了opencv2.3的,至于vs2010可不可以那没有试过。