天天看点

在vs2008中安装opencv2.0/opencv2.1的详细步骤

一、准备工作

1)这里我用到的平台是 Microsoft Visual Studio 2008 和OpenCV2.0 (注:若使用OpenCV2.1,安装步骤和下面的一样,只是需将2.0的地方改为2.1即可。)

2)OpenCV2.0下载地址 http://www.opencv.org.cn/index.php/Download。安装OpenCV2.0,假定安装目录为:D:/Program FilesOpen/CV2.0

3)CMake下载地址 http://www.cmake.org/cmake/resources/software.html (选择 Win32 Installer 安装版本)。

二、编译OpenCV

1. 用CMake导出VC++ 项目文件

■ 运行cmake-gui,设置路径为OpenCV安装路径(例如:D:/Program Files/OpenCV2.0),并创建子目录 D:/Program Files/OpenCV2.0/vc2008,用于存放编译结果。

■ 然后点 configure,在弹出的对话框内选择 Visual Studio 9 2008。

■ Microsoft Visual Studio 2008 正式版支持OpenMP,所以ENABLE_OPENMP这个选项要勾上;如果是Express版本,则不支持OpenMP,所以需要取消ENABLE_OPENMP选项。(说明:我使用的是Microsoft Visual Studio 2008 Express,没有出现ENABLE_OPENMP这个选项,从后面配置来看,也没出现什么问题,所以不需要管。)

■ 最后再点击Generate。

在vs2008中安装opencv2.0/opencv2.1的详细步骤
在vs2008中安装opencv2.0/opencv2.1的详细步骤
在vs2008中安装opencv2.0/opencv2.1的详细步骤

2. 编译 OpenCV Debug 和 Release版本库

    完成上一步骤后,将在D:/Program Files/OpenCV2.0/vc2008目录下生成OpenCV.sln的VC Solution File。

请用VC++ 2008 Express打开OpenCV.sln,然后执行如下操作:

■ 在Debug下,选择Solution Explorer里的 Solution OpenCV,点右键,运行"Rebuild Solution";如编译无错误,再选择INSTALL项目,运行"Build"。

■ 在Release下,选择Solution Explorer里的 Solution OpenCV,点右键,运行"Rebuild Solution";如编译无错误,再选择INSTALL项目,运行"Build"。

    此时,OpenCV的*d.dll文件(for debug)和*.dll文件(for release)将出现在D:/Program Files/OpenCV2.0/vc2008/bin目录中;OpenCV的*d.lib文件(for debug) 和*.lib文件(for release)将出现在D:/Program Files/OpenCV2.0/vc2008/lib目录;头文件*.h出现在D:/Program Files/OpenCV2.0/vc2008/include/opencv中。

    至此Microsoft Visual Studio 2008 调用的OpenCV动态库生成完毕。

在vs2008中安装opencv2.0/opencv2.1的详细步骤
在vs2008中安装opencv2.0/opencv2.1的详细步骤
在vs2008中安装opencv2.0/opencv2.1的详细步骤
在vs2008中安装opencv2.0/opencv2.1的详细步骤
在vs2008中安装opencv2.0/opencv2.1的详细步骤

三、配置Windows环境变量Path

    将D:/Program Files/OpenCV2.0/vc2008/bin加入Windows系统环境变量Path中。

加入后,必须注销当前用户或者重新启动才能生效。

在vs2008中安装opencv2.0/opencv2.1的详细步骤
在vs2008中安装opencv2.0/opencv2.1的详细步骤

四、为Microsoft Visual Studio 2008 配置OpenCV环境

打开Microsoft Visual Studio 2008,菜单 Tools -> Options -> Projects and Solutions -> VC++ Directories。

■ Show directories for选择include files,加入目录 D:/Program Files/OpenCV2.0/vc2008/include/opencv

■ Show directories for选择library files,加入目录 D:/Program Files/OpenCV2.0/vc2008/lib

在vs2008中安装opencv2.0/opencv2.1的详细步骤
在vs2008中安装opencv2.0/opencv2.1的详细步骤

五、使用OpenCV 2.0 编程

以后每创建一个OpenCV 的Win32 控制台程序,都需要添加依赖的库

■ 选择Solution Explorer里的 “项目名称”,点击鼠标右键,选择Properties;

■ 为项目的Debug配置增加依赖的库:cxcore200d.lib cv200d.lib highgui200d.lib;

■ 为项目的Release配置增加依赖的库:cxcore200.lib cv200.lib highgui200.lib

使用OpenCV 2.0编程实例:

1)打开VC++ 2008 Express,创建一个Win32控制台程序opencvhello;(在创建时,选择使用预编译头)

2)选择Solution Explorer里的opencvhello项目,点击鼠标右键,选择Properties;

为项目的Debug配置增加依赖的库:cxcore200d.lib cv200d.lib highgui200d.lib

为项目的Release配置增加依赖的库:cxcore200.lib cv200.lib highgui200.lib

编译运行下面的例程(需要将lena.jpg文件放在项目目录下)。

 /***********************************************************************

* OpenCV 2.0 测试例程

* 于仕琪提供

***********************************************************************/

#include "stdafx.h"

#include "highgui.h"

//所有的以新风格命名的函数都在cv 命名空间中

//如果希望不要每次都输入cv:: ,则可使用下面语句

//using namespace cv;

int _tmain(int argc, _TCHAR* argv[])

{

const char* imagename = "lena.png";

cv::Mat img = cv::imread(imagename); // Matlab风格的cvLoadImage 函数的另一种调用

if (img.empty())

{

fprintf(stderr, "Can not load image %s/n", imagename);

return -1;

}

// 检查是否正确载入图像

if (!img.data)

{

return -1;

}

cv::namedWindow("image", CV_WINDOW_AUTOSIZE); //创建窗口

cv::imshow("image", img); //显示图像

cv::waitKey();

return 0;

}

在vs2008中安装opencv2.0/opencv2.1的详细步骤
在vs2008中安装opencv2.0/opencv2.1的详细步骤
在vs2008中安装opencv2.0/opencv2.1的详细步骤
在vs2008中安装opencv2.0/opencv2.1的详细步骤
在vs2008中安装opencv2.0/opencv2.1的详细步骤
在vs2008中安装opencv2.0/opencv2.1的详细步骤

继续阅读