从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类型,重新运行,顺利显示这位图像处理界的“名模”!
新闻热点
疑难解答