发布于 2016-05-09 13:38:27 | 245 次阅读 | 评论: 0 | 来源: 网友投递
Microsoft Visual Studio Windows平台集成开发环境
Microsoft Visual Studio(简称VS)是美国微软公司的开发工具包系列产品。VS是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境(IDE)等等。所写的目标代码适用于微软支持的所有平台,包括Microsoft Windows、Windows Mobile、Windows CE、.NET Framework、.NET Compact Framework和Microsoft Silverlight 及Windows Phone。
从http://www.opencv.org.cn/index.php/Download上下载OpenCV 2.4.3 for Windows版本的安装文件OpenCV-2.4.3.exe,双击就会自动解压安装,选择目标目录。我个人选择为D:\Program Files\OpenCV。注意不要使用含有中文字符的文件目录。
下载并安装CMake
从http://www.cmake.org/cmake/resources/software.html上下载WWindows版本安装包cmake-2.8.10.2-win32-x86.exe文件,双击一路默认安装即可。
生成OpenCV源码工程此过程用于将安装OpenCV后得到的源码编译为相应版本的VS工程。详细步骤如下。
1、设置安装OpenCV后的文件目录和想要生成的工程存放目录;
2、点击左下方configure,在弹出的选项中选择Visual Studio 10(对应2010版本);
3、点击完成就会进行配置,配置后的界面如下图所示,选择需要加入的文件,我这里勾上BUILD_EXAMPLES其他选项默认;
4、修改完成后再次点击configure进行配置,完成后点击Generate,至此完成配置。
注:在配置源码工程时候有32位版本与64位版本之分,需要根据操作系统环境选择相应版本。
编译OpenCV版本库使用VS2010将上一过程所得到的OpenCV.sln工程文件打开,分别在Debug模式和Release模式下进行编译,步骤如下:
1、清理OpenCV解决方案;
2、生成OpenCV解决方案;
3、选择INSTALL项目,生成该项目。
配置VS配置include路径和lib路径
配置include路径的作用是告诉VS从哪里查找OpenCV的头文件,配置lib路径的作用是告诉VS从哪里查找OpenCV的库文件。
1、启动VS2010,新建一个Win32控制台应用程序OpenCV01;
2、打开OpenCV01项目属性,依次选择“配置属性”->“VC++目录”->“包含目录”,添加相应路径;
包含目录(编译版本库对应的目录)如下:
E:\Workspaces\Visual Studio\OpenCV\install\include
E:\Workspaces\Visual Studio\OpenCV\install\include\opencv
E:\Workspaces\Visual Studio\OpenCV\install\include\opencv2
如果使用OpenCV默认目录则是如下几项:
D:\Program Files\OpenCV\opencv\include
D:\Program Files\OpenCV\opencv\include\opencv
D:\Program Files\OpenCV\opencv\include\opencv2
库目录(编译版本库对应的目录)如下:
E:\Workspaces\Visual Studio\OpenCV\install\lib
如果使用OpenCV默认目录则是:
D:\Program Files\OpenCV\opencv\build\x64\vc10\lib
配置环境变量刚才设置的是动态库,因此还需要将OpenCV的dll文件所在的目录加入Path环境变量。dll文件目录(编译版本库对应的目录)如下:
E:\Workspaces\Visual Studio\OpenCV\install\bin
如果使用OpenCV默认目录则是:
D:\Program Files\OpenCV\opencv\build\x64\vc10\bin
加入后需要注销当前Windows用户(或重启)后重新登陆才生效。
OK,OpenCV的环境已配置完整,Enjoy It...
OpenCV世界的Hello World打开OpenCV01项目属性,依次选择“配置属性”->“连接器”->“输入”,为项目的Debug配置附加依赖项
opencv_calib3d243d.lib
opencv_contrib243d.lib
opencv_core243d.lib
opencv_features2d243d.lib
opencv_flann243d.lib
opencv_gpu243d.lib
opencv_highgui243d.lib
opencv_imgproc243d.lib
opencv_legacy243d.lib
opencv_ml243d.lib
opencv_objdetect243d.lib
opencv_ts243d.lib
opencv_video243d.lib
为项目的Release配置依赖项
opencv_contrib243.lib
opencv_core243.lib
opencv_features2d243.lib
opencv_flann243.lib
opencv_gpu243.lib
opencv_highgui243.lib
opencv_imgproc243.lib
opencv_legacy243.lib
opencv_ml243.lib
opencv_objdetect243.lib
opencv_ts243.lib
opencv_video243.lib
主文件源码如下:
// OpenCV01.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <opencv2/opencv.hpp>using namespace std;using namespace cv;int _tmain(int argc, _TCHAR* argv[]){const char* imagename = "Lena.jpg"; //从文件中读入图像Mat img = imread(imagename); //如果读入图像失败if(img.empty()){fprintf(stderr, "Can not load image %s\n", imagename);return -1;} //显示图像imshow("image", img); //此函数等待按键,按键盘任意键就返回waitKey(); return 0;}
添加Lena.jpg文件到项目文件夹,运行该项目,报如下错误:
目测应该是编译版本错误,在配置管理器中修改项目为x64类型,重新运行,顺利显示这位图像处理界的“名模”!