前些日子做一个人脸识别的程序,在VS2005下配置OpenCV2.1 我直接把当时写的文档 拷贝过来 图的话懒的放上去了,文字已经足够了.
本次项目开发采用VS2005+OpenCV 2.1,理由是经笔者测试在Win7系统下,OpenCV 2.0以下做视频采集时易发生未知错误,同时VC6.0本身版本也过老,对新系统支持不佳,终上所述,笔者采用VS2005+OpenCV2.1版本进行.
(1)准备工作
安装OpenCV
从 http://www.opencv.org.cn/index.php/Download 下载OpenCV 2.1,并安装,本文档假定安装目录为:C:Program FilesOpenCV-2.1.0
从 http://www.cmake.org/cmake/resources/software.html 下载 Windows (Win32 Installer) 安装。
(2) 用CMake导出VC++项目文件
运行cmake-gui,设置路径为OpenCV安装路径(本文档假定安装位置为:C:Program FilesOpenCV-2.1.0),并创建子目录C:Program FilesOpenCV-2.1.0VS2005 ,用于存放编译结果。 (见下图)
然后点 configure,在弹出的对话框内选择 Visual Studio 8 2005。
(见下图)
如果是VC++2008的Express版本,则不支持OpenMP,所以需要取消ENABLE_OPENMP选项,取消后再次选择“Congfigure”,完成后选择“Generate”。
(见下图)
(3) 编译 OpenCV Debug和Release版本库
完成上一步骤后,将在C:Program FilesOpenCV-2.1.0VS2005目录下生成OpenCV.sln的VC Solution File,请用VS 2008打开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)将出现在C:Program FilesOpenCV-2.1.0VS2005bin目录中;OpenCV的*d.lib文件(for debug)和*.lib文件(for release)将出现在C:Program FilesOpenCV-2.1.0VS2005lib目录;据中文官方网站文档描述,头文件*.h出现在C:ProgramFilesOpenCV-2.1.0VS2005includeopencv中。但据笔者亲测,该文件夹下并无文件,但可以直接使用C:ProgramFilesOpenCV-2.1.0includeopencv下的头文件.
同时,笔者在用VS2005编译时发生了缺少头文件错误,经过研究和搜索,解决办法如下:
1> 在VC++2008或其他含有“pmmintrin.h”的VC版本中搜索;
2> 复制该文件到C:Program FilesOpenCV-2.1.0include下;
(4) 配置Windows环境变量
将C:Program FilesOpenCV-2.1.0bin加入Windows系统环境变量Path中。加入后可能需要注销当前Windows用户(或重启)后重新登陆才生效。
(5) 为VS 2005配置OpenCV环境
打开VS 2005,菜单 Tools -> Options -> Projects and Solutions -> VC++ Directories Show directories for选择include files,加入目录C:Program FilesOpenCV-2.1.0includeopencv
Show directories for选择library files,加入目录C:Program FilesOpenCV-2.1.0VS2005lib .关闭VS 2005。
(见下图)
(6) OpenCV的使用
打开VS 2005,创建一个MFC工程;
选择Solution Explorer里的opencvhello项目,点击鼠标右键,选择Properties,在[链接器 LINKER]的[输入INPUT]中;
为项目的Debug配置增加依赖的库:cxcore201d.lib cv201d.lib highgui201d.lib(注意,文件名cv201d.lib 可能是cv***d.lib等形式,具体应查看C:Program FilesOpenCV-2.1.0VS2005lib )
为项目的Release配置增加依赖的库:cxcore201.lib cv201.lib highgui201.lib
(见下图)
接下来就可以在该工程里编写OpenCV程序了;
>> 本文固定链接: http://www.vcgood.com/archives/3564
前些日子做一个人脸识别的程序,在VS2005下配置OpenCV2.1 我直接把当时写的文档 拷贝过来 图的话懒的放上去了,文字已经足够了.
本次项目开发采用VS2005+OpenCV 2.1,理由是经笔者测试在Win7系统下,OpenCV 2.0以下做视频采集时易发生未知错误,同时VC6.0本身版本也过老,对新系统支持不佳,终上所述,笔者采用VS2005+OpenCV2.1版本进行.
(1)准备工作
安装OpenCV
从 http://www.opencv.org.cn/index.php/Download 下载OpenCV 2.1,并安装,本文档假定安装目录为:C:Program FilesOpenCV-2.1.0
安装CMake
从 http://www.cmake.org/cmake/resources/software.html 下载 Windows (Win32 Installer) 安装。
(2) 用CMake导出VC++项目文件
运行cmake-gui,设置路径为OpenCV安装路径(本文档假定安装位置为:C:Program FilesOpenCV-2.1.0),并创建子目录C:Program FilesOpenCV-2.1.0VS2005 ,用于存放编译结果。 (见下图)
然后点 configure,在弹出的对话框内选择 Visual Studio 8 2005。
(见下图)
如果是VC++2008的Express版本,则不支持OpenMP,所以需要取消ENABLE_OPENMP选项,取消后再次选择“Congfigure”,完成后选择“Generate”。
(见下图)
(3) 编译 OpenCV Debug和Release版本库
完成上一步骤后,将在C:Program FilesOpenCV-2.1.0VS2005目录下生成OpenCV.sln的VC Solution File,请用VS 2008打开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)将出现在C:Program FilesOpenCV-2.1.0VS2005bin目录中;OpenCV的*d.lib文件(for debug)和*.lib文件(for release)将出现在C:Program FilesOpenCV-2.1.0VS2005lib目录;据中文官方网站文档描述,头文件*.h出现在C:ProgramFilesOpenCV-2.1.0VS2005includeopencv中。但据笔者亲测,该文件夹下并无文件,但可以直接使用C:ProgramFilesOpenCV-2.1.0includeopencv下的头文件.
同时,笔者在用VS2005编译时发生了缺少头文件错误,经过研究和搜索,解决办法如下:
1> 在VC++2008或其他含有“pmmintrin.h”的VC版本中搜索;
2> 复制该文件到C:Program FilesOpenCV-2.1.0include下;
(4) 配置Windows环境变量
将C:Program FilesOpenCV-2.1.0bin加入Windows系统环境变量Path中。加入后可能需要注销当前Windows用户(或重启)后重新登陆才生效。
(5) 为VS 2005配置OpenCV环境
打开VS 2005,菜单 Tools -> Options -> Projects and Solutions -> VC++ Directories Show directories for选择include files,加入目录C:Program FilesOpenCV-2.1.0includeopencv
Show directories for选择library files,加入目录C:Program FilesOpenCV-2.1.0VS2005lib .关闭VS 2005。
(见下图)
(6) OpenCV的使用
打开VS 2005,创建一个MFC工程;
选择Solution Explorer里的opencvhello项目,点击鼠标右键,选择Properties,在[链接器 LINKER]的[输入INPUT]中;
为项目的Debug配置增加依赖的库:cxcore201d.lib cv201d.lib highgui201d.lib(注意,文件名cv201d.lib 可能是cv***d.lib等形式,具体应查看C:Program FilesOpenCV-2.1.0VS2005lib )
为项目的Release配置增加依赖的库:cxcore201.lib cv201.lib highgui201.lib
(见下图)
接下来就可以在该工程里编写OpenCV程序了;