119消防宣传活动总结:opencv2.3在VS2010下的配置

来源:百度文库 编辑:中财网 时间:2024/04/30 04:09:37

1.从http://sourceforge.net/projects/opencvlibrary/下载OpenCV

2安装CMake

从 http://www.cmake.org/cmake/resources/software.html 下载 Windows (Win32 Installer) 安装。 

2 用CMake导出VC++项目文件

步骤1:在CMAKE的界面中输入源码路径(Where is the source code)和目标路径(where to build the binaries)。

步骤2:点击【Configure】按钮,在弹出对话框中选择编译软件,如Visual sudio 10。

步骤3:点击下图中的【Generate】,开始编译

步骤4:Cmake编译结束界面,(再次点击【Configure】,红色消失)

3 编译 OpenCV Debug和Release版本库

完成上一步骤后,将在C:\OpenCV230_Vs2010目录下生成OpenCV.sln的VC Solution File,用VC++ 2010打开OpenCV.sln,然后执行如下操作:

步骤1:在Debug下,选择Solution Explorer里的 Solution OpenCV,点右键,运行"Rebuild Solution"; 

步骤2:如编译无错误,再选择INSTALL项目,运行"Build"。

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

此时,OpenCV的opencv_*d.dll文件(for debug)和opencv_*.dll文件(for release)将出现在C:\OpenCV230_Vs2010\bin目录中;OpenCV的opencv_*d.lib文件(for debug)和opencv_*.lib文件(for release)将出现在C:\OpenCV230_Vs2010\lib目录;头文件*.h出现在C:\OpenCV230_Vs2010\include\opencv中。 

到此,可以被VC++ 2010调用的OpenCV动态库生成完毕。

(这里,我在debug版和release版编译INSTALL时,提示opencv_ffmpeg230d.lib找不到,感觉这个好像是视频编码的,我就随便找了个lib命名成它,放进去)

4 设置Windows环境变量

用户工程运行时,需要调用OpenCV动态链接库,因而需要添加Windos动态链接库路径。

步骤1:

步骤2:

步骤3:

1)添加变量名为“path”,变量值为“C:\OpenCV230_Vs2010\bin\Release;C:\OpenCV230_Vs2010\bin\Debug”的用户环境变量。如果“path”已经存在,选择编辑,在原变量值后添加,以分号“;”隔离路径名。

2)通常需要重启后,才生效。

5 OpenCV的vs2010环境配置

步骤1 打开任意一个VC++项目。切换到VS2010左下角的标签,选择属性管理器(从菜单【视图】->属性管理器);

步骤2 双击任意“Microsoft.Cpp.Win32.user”,在弹出的属性页中设置VC++目录。该设置方法对所有VC++项目都有效。

需要修改包含目录include files、库目录library files到用CMake导出VC++项目文件的相关目录。本例中即以下4个:

C:\OpenCV230_Vs2010\install\include

C:\OpenCV230_Vs2010\install\include\opencv

C:\OpenCV230_Vs2010\install\lib

可执行文件目录executable files(C:\OpenCV230_Vs2010\bin)添加到Windows环境变量中,在此不需要添加。

步骤3 添加lib库文件

在配置debug里 项目属性 链接器 输入 附加依赖库 里加上

opencv_core230d.lib

opencv_highgui230d.lib

opencv_video230d.lib

opencv_ml230d.lib

opencv_legacy230d.lib

opencv_imgproc230d.lib

在配置release里  项目属性 链接器 输入 附加依赖库 里加上

opencv_core230.lib

opencv_highgui230.lib

opencv_video230.lib

opencv_ml230.lib

opencv_legacy230.lib

opencv_imgproc230.lib

6 OpenCV例程

#include "stdafx.h"

#include "highgui.h"

//using namespace cv;

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

{    

IplImage* pImg; //声明IplImage指针
 
    //载入图像
    pImg = cvLoadImage( "D:/pic/test.jpg", 1);

    cvNamedWindow( "Image", 1 );//创建窗口
    cvShowImage( "Image", pImg );//显示图像
 
    cvWaitKey(0); //等待按键
 
    cvDestroyWindow( "Image" );//销毁窗口
    cvReleaseImage( &pImg ); //释放图像

 

  return 0;