VS2008 集成openCV过程

1.安装VC++ 2008 Express
安装OpenCV

http://www.opencv.org.cn/download/OpenCV-2.0.0a-win32.exe 下载OpenCV 2.0,并安装,本文档假定安装目录为:D:\Program Files\OpenCV2.0

2.安装CMake

http://www.cmake.org/files/v2.6/cmake-2.6.4-win32-x86.exe 下载 Windows (Win32 Installer) 安装。

3.编译OpenCV
(1) 找到"开始->所有程序->CMake->CMake(cmake-gui)"打开cmake-gui。如下图所示,在第一个路径处选 择opencv的安装路径,记得是CMakeLists.txt所在的那个路径。第二个路径是make得到的工程保存位置,可以随便设置,不过不能包含中 文。


(2)点击Configure并选择合适的编译器。(图上是2005,我们这里选2008)

 

(3)选择完编译器之后再次点击Configure就可以得到本图所示内容


(4)再次点击Configure可以得到下图


(5)点击Generate就可以生成我们想要的工程文件了,可以到目标路径下查看,如下图。

 

4.编译 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中。

可以被VC++ 2008 Express调用的OpenCV动态库生成完毕。


 

5.配置Windows环境变量Path

将D:\Program Files\OpenCV2.0\vc2008\bin加入Windows系统环境变量Path中。加入后可能需要注销当前Windows用户(或重启)后重新登陆才生效。

6.为VC++ 2008 Express配置OpenCV环境

打开VC++ 2008 Express,菜单 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

关闭VC++ 2008 Express。

7.使用OpenCV 2.0编程
打开VC++ 2008 Express,创建一个Win32控制台程序opencvhello;
选择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.jpg";

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;
}

原文地址:https://www.cnblogs.com/xiangshancuizhu/p/2102152.html