转自:http://blog.sina.com.cn/s/blog_6d1ba49101019ayy.html
最近opencv出了2.4.5,果断下载
操作系统: Win7 32bit
VS: VS2008
OpenCV版本: 2.4.5
配置过程:
======
1 安装配置OpenCV所必要的软件
在配置openCV之前,首先要保证机器中安装了以下软件:
(1)vs2008。
(2)安装CMake。下载地址:
http://www.cmake.org/cmake/resources/software.html
下载 Windows (Win32 Installer) 安装。
(3)安装OpenCV2.4.5. 下载地址:
http://opencv.org/
找到Windows版本,解压exe文件得到opencv的文件夹,要记住你自己的安装路径,我的安装路径是:D:\Program Files\opencv2.4.5
2 使用CMake编译openCV:
(1)运行cmake-gui,在where is the source code中填入你的openCV路径:D:\Program Files\opencv2.4.5
where to build the binaries中填入你要存放编译结果的路径:D:\Program Files\opencv2.4.5\vs2008。
2, 点configure,在弹出的对话框中选择Visual Studio 9 2008 (此处根据你的VS版本而定)。
3,如果有红色框显示,继续点击configure。
4,configure完成之后,点击generate。
上述步骤完成之后,在vs2008文件夹中,就会看到有OpenCV.sln文件。
(1)使用VS2008打开OpenCV.sln文件,在Debug下,选择OpenCV.sln文件,然后进行如下操作:
在Debug下,选择Solution Explorer里的 Solution OpenCV,点右键,运行"Rebuild Solution";
(2)
换
debug
模式为
Release
,重新进行一次上述操作;
4 配置Windows环境变量:
将D:\Program Files\opencv2.4.5\build\x86\vc9\bin加入到系统环境变量Path中。
具体步骤为:
右键我的电脑->属性->详细设定标签里->环境变量->系统变量,找到Path;
5 为VS2008 配置openCV环境:
(1)打开VS 2008,菜单 Tools -> Options -> Projects and Solutions -> VC++ Directories
(2)在Show directories for中,选择include files,加入目录
D:\Program Files\opencv2.4.5\build\include
D:\Program Files\opencv2.4.5\build\include\opencv
D:\Program Files\opencv2.4.5\build\include\opencv2
(3)在show directories for中,选择library files,加入目录
D:\Program Files\opencv2.4.5\build\x86\vc9\lib
6 具体OpenCV工程配置或者代码:
(1)打开VS 2008,创建一个Win32控制台程序OpenCV245ConfigTestProje ct;
(2)选择Solution Explorer里的OpenCV245ConfigTestProje ct项目,点击鼠标右键,选择Properties,选择Linker中Input(调试目录)。
(3)在Additional Dependencies 中添加如下目录:
opencv_core245d.lib
opencv_highgui245d.lib
opencv_imgproc245d.lib
opencv_ml245d.lib
opencv_stitching245d.lib
opencv_nonfree245d.lib(对应Debug)和 opencv_nonfree245.lib(对应Release)。
#include "stdafx.h"
#include "opencv2/opencv.hpp"
#include<iostream>
using namespace cv;
using namespace std;
//如果已经在工程的额外依赖文件中添加下面的lib库文件,那么这部分不必要
#pragma comment(lib, "opencv_core245d")
#pragma comment(lib, "opencv_highgui245d")
#pragma comment(lib, "opencv_imgproc245d")
#pragma comment(lib, "opencv_ml245d")
#pragma comment(lib, "opencv_stitching245d")
int _tmain(int argc, _TCHAR* argv[])
{
IplImage *img = cvLoadImage("lena.jpg");
cvNamedWindow("Image:",CV_WINDOW_AUTOSIZE);
cvShowImage("Image:",img);
cvWaitKey(0);
cvDestroyWindow("Image:");
cvReleaseImage(&img);
return 0;
}
7 测试工程代码如下:
#include "stdafx.h"
#include "opencv2/opencv.hpp"
#include<iostream>
using namespace cv;
using namespace std;
//如果已经在工程的额外依赖文件中添加下面的lib库文件,那么这部分不必要
#pragma comment(lib, "opencv_core245d")
#pragma comment(lib, "opencv_highgui245d")
#pragma comment(lib, "opencv_imgproc245d")
#pragma comment(lib, "opencv_ml245d")
#pragma comment(lib, "opencv_stitching245d")
int _tmain(int argc, _TCHAR* argv[])
{
}