OpenCV学习笔记(一):OpenCV2.4.13+VS2013环境配置

来源:互联网 发布:搜前途与搜弘网络 编辑:程序博客网 时间:2024/05/16 00:27

由于课题的需要,需要用到OpenCV来做相机的标定,所以专门在VS2013下配置了OpenCV2.4.13,同时也是想着能够养成随时记笔记的习惯。但是在配置的过程中,经常是每一个工程都需要重新配置,比较繁琐,所以特意做了Debug_PropertySheet.props和Release_PropertySheet.props的两个配置属性表。这样每次只要直接添加两个属性表就可以跑代码了。

1.下载和安装OpenCV SDK:

(1)在OpenCV官网的下载页面:http://opencv.org/downloads.html,找到对应OpenCV for SDK版本下载,本人使用OpenCV2.4.13。

(2)下载完成后双击“OpenCV-2.4.13”,弹出安装(解压)对话框,自行选择安装路径,本人是直接新建的opencv2.4.13文件夹,点击 “Extract”后开始(解压)安装。值得注意的一点是不需要在安装目录里额外建“opencv”的文件夹,OpenCV安装包解压出来的根目录就是“opencv”!


2.PC机的环境变量和路径设置:

(1)点击开始菜单,右击计算机->属性->高级系统设置->高级->环境变量,打开环境变量设置对话框,如下图:


(2)在用户变量里新建变量OpenCV,变量值:E:\opencv2.4.13\opencv\build;

(3)在系统变量里编辑(或添加)Path变量,变量值:E:\opencv2.4.13\opencv\build\x86\vc12\bin,注意要使用英文输入下的分号和前面已有的路径分开,添加完之后需要重启或注销计算机,环境变量才会生效。

在这里可能有人会有疑问:编译器是VS2013,变量值不应该是XX\vc13\bin吗?注意,在OpenCV配置中,vc11即对应VS2012,vc12对应的是VS2013。另一点要关注的是上述变量值到底应该是x86还是x64?这里x86还是x64的选择跟你的电脑是32位还是64位无关,vs2012编译环境默认的使用win32编译器,所以选择x86。

3.IDE工程项目属性配置:

新建Win32控制台应用程序,工程名命名为 OpenCV property sheet,在其后的选项里选择空项目,右击OpenCV property sheet工程->添加新建项,在弹出的对话框中选择C++ 文件(.cpp)添加源文件,命名为OpenCV property sheet.cpp。

【1】Debug|Win32下

(1)调出工程属性管理器,在属性管理器的Debug|Win32目录上右击选择“添加新项目属性表”,新建属性表,并命名为Debug_PropertySheet.props,如下图所示:



(2)双击打开属性表Debug_PropertySheet.props。选择通用属性->VC++目录,在包含目录里添加3个目录:

            E:\opencv2.4.13\opencv\build\include\opencv2

            E:\opencv2.4.13\opencv\build\include\opencv

            E:\opencv2.4.13\opencv\build\include


   同样在VC++目录下,在库目录里添加1个目录:E:\opencv2.4.13\opencv\build\x86\vc12\lib

(3)选择通用属性->链接器->输入->附加依赖项,在附加依赖项里添加库文件:

opencv_ml2413d.lib
opencv_calib3d2413d.lib
opencv_contrib2413d.lib
opencv_core2413d.lib
opencv_features2d2413d.lib
opencv_flann2413d.lib
opencv_gpu2413d.lib
opencv_highgui2413d.lib
opencv_imgproc2413d.lib
opencv_legacy2413d.lib
opencv_objdetect2413d.lib
opencv_ts2413d.lib
opencv_video2413d.lib
opencv_nonfree2413d.lib
opencv_ocl2413d.lib
opencv_photo2413d.lib
opencv_stitching2413d.lib
opencv_superres2413d.lib
opencv_videostab2413d.lib


【2】Release|Win32下(参见【1】)

(1)调出工程属性管理器,在属性管理器的Release|Win32目录上右击选择“添加新项目属性表”,新建属性表,并命名为Release_PropertySheet.props

(2)与Debug|Win32下相同

(3)选择通用属性->链接器->输入->附加依赖项,在附加依赖项里添加库文件:

opencv_objdetect2413.lib
opencv_ts2413.lib
opencv_video2413.lib
opencv_nonfree2413.lib
opencv_ocl2413.lib
opencv_photo2413.lib
opencv_stitching2413.lib
opencv_superres2413.lib
opencv_videostab2413.lib
opencv_calib3d2413.lib
opencv_contrib2413.lib
opencv_core2413.lib
opencv_features2d2413.lib
opencv_flann2413.lib
opencv_gpu2413.lib
opencv_highgui2413.lib
opencv_imgproc2413.lib
opencv_legacy2413.lib
opencv_ml2413.lib

保存本工程的属性配置文件Debug_PropertySheet.props和Release_PropertySheet.props到备用文件夹,至此,VS2013环境下配置OpenCV2.4.13的工作已经全部完成了,对于之后创建的OpenCV工程,只需要添加本工程的属性配置即可,不再需要一步一步重复配置。


4.最后让我们来测试一下所做的配置是否OK:

新建工程test opencv,添加如下代码:

// test opencv.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <iostream>  #include<core/core.hpp>  #include<highgui/highgui.hpp> using namespace cv;using namespace std;int _tmain(int argc, _TCHAR* argv[]){//读入图片,注意图片路径  Mat image = imread("D:\\boy.jpg");//图片读入成功与否判定  if (!image.data){cout << "you idiot!where did you hide boy!" << endl;//等待按键  system("pause");return -1;}//创建一个名字为“Lena”的图像显示窗口,(不提前声明也可以)  namedWindow("boy", 1);//显示图像  imshow("boy", image);//等待按键  waitKey();return 0;}

如果配置正确,编译运行后帅气的boy就会出现在屏幕上为我们敞开OpenCV的大门啦!



0 0