OpenCV2.4.13+VS2012开发环境配置
1.下载和安装OpenCV SDK
在OpenCV官网的下载页面: http://opencv.org/downloads.html 找到对应OpenCV for Windows版本下载。目前(2016/07/02)官网的最新版本是2015/12/21发布的Version 3.1.0,最新发布是2016/05/19日的Version 2.4.13。
Version 3.1.0只有64位的开发包,还没(不知道未来会不会)支持32位的编译环境,这里使用Version 2.4.13。
下载完成之后双击“opencv-2.4.13.exe”,弹出安装(解压)对话框:
选择安装路径,这里使用的是“D:\ProgramFilesD”,点击“Extract”后开始解压;
值得注意的一点是不需要在安装目录里额外建“opencv”的文件夹,OpenCV安装包解压出来的根目录就是“opencv”。
2.本机环境变量和路径配置
点击开始菜单,右击计算机->属性->高级系统设置->高级->环境变量,打开环境变量设置对话框,如下图:
在用户变量里新建变量OpenCV,变量值:D:\ProgramFilesD\opencv\build;
在用户变量里新建变量path,变量值:D:\ProgramFilesD\opencv\build\x86\vc11\bin;
在这里可能有人会有疑问:编译器是VS2012,变量值不应该是XX\vc12\bin吗?注意,在OpenCV配置中,vc11即对应VS2012,vc12对应的是VS2013。
另一点要关注的是上述变量值到底应该是x86还是x64?这里x86还是x64的选择跟你的电脑是32位还是64位无关,vs2012编译环境默认的使用win32编译器,所以选择x86。
在系统变量里编辑(或添加)Path变量,变量值:D:\ProgramFilesD\opencv\build\x86\vc11\bin,注意要使用英文输入下的分号和前面已有的路径分开,添加完之后需要重启或注销计算机,环境变量才会生效。
3. IDE工程项目属性配置
新建Win32控制台应用程序,工程名命名为MyFirstOpenCV,在其后的选项里选择空项目:
右击MyFirstOpenCV工程->添加新建项,在弹出的对话框中选择C++ 文件(.cpp),添加源文件,命名为MyFirstOpenCV.cpp:
在视图目录的下拉菜单中打开属性管理器,在属性管理器的Debug|Win32目录上单击选择“添加新项目属性表”,新建属性表,并命名为OpenCV_Debug_Setting.props,如下图所示:
双击打开属性表OpenCV_Debug_Setting.props。选择通用属性->VC++目录,在包含目录里添加3个目录:
D:\ProgramFilesD\opencv\build\include\opencv2
D:\ProgramFilesD\opencv\build\include\opencv
D:\ProgramFilesD\opencv\build\include
同样在VC++目录下,在库目录里添加1个目录:
D:\ProgramFilesD\opencv\build\x86\vc11\lib
选择通用属性->链接器->输入->附加依赖项,在附加依赖项里添加库文件:
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
OK,至此,VS2012环境下配置OpenCV2.4.13的工作已经全部完成了,对于之后创建的OpenCV工程,只需要添加本工程的属性配置即可,不再需要一步一步重复配置。
方法:首先保存本工程的属性配置文件OpenCV_Debug_Setting.props到备用文件夹,该属性配置文件在本项目中的路径是:
D:\VS2012Test\MyFirstOpenCV\MyFirstOpenCV
之后在新创建的工程中,在属性管理器中添加OpenCV_Debug_Setting.props属性表即可:
4.OpenCV项目测试
最后让我们来测试一下所做的配置是否OK。
在程序的源文件MyFirstOpenCV.cpp文件中加入如下代码,用于在窗口中显示一幅图片:
<pre name="code" class="cpp">#include <iostream>
#include<core/core.hpp>
#include<highgui/highgui.hpp>
using namespace cv;
using namespace std;
int main()
{
//读入图片,注意图片路径
Mat image=imread("D:\\Picture\\lena.jpg");
//图片读入成功与否判定
if(!image.data)
{
cout<<"you idiot!where did you hide lena!"<<endl;
//等待按键
system("pause");
return -1;
}
//创建一个名字为“Lena”的图像显示窗口,(不提前声明也可以)
namedWindow("Lena",1);
//显示图像
imshow("Lena",image);
//等待按键
waitKey();
return 0;
}
如果配置正确,编译运行后令我们魂牵梦绕的lena大美女就会出现在屏幕上对我们微笑了。
OpenCV的神奇美妙世界的大门已经为你敞开,Go for it!
OpenCV2.4.13+VS2012开发环境配置的更多相关文章
- OpenCV2.4.13+VS2013开发环境配置
List1:完成 写在前面:之前电脑很杂乱的装了OpenCV的2个版本,在配置OpenCV和VS2013环境时死活配不好.但是接下来的工作要用到,没有办法,还是得好好做.今天重新装了OpenCV2.4 ...
- OpenCV2.4.10 + VS2010开发环境配置
原文转载自:qinyang8513 一.开发环境 1.操作系统:Windows 7(64位) 2.编程环境:Microsoft Visual Studio 2010 3.OpenCV版本:2.4.10 ...
- OpenCV2.4.11+VS2012的环境配置+“fatal error LNK1112: 模块计算机类型“X86”与目标计算机类型“x64”冲突”的问题解决
本来OpenCV环境配置的问题是个基础问题,但是步骤有点小烦,所以几乎每次都要百度一下,加上这次遇到的“fatal error LNK1112: 模块计算机类型“X86”与目标计算机类型“x64”冲突 ...
- 二维码解码器Zbar+VS2012开发环境配置
Zbar条码解码器是一个开源的二维码(包括条形码)解码器,可以识别来至于视频流,图像文件.手持扫码器和视频设备(如摄像头)等二维码识别,支持EAN-13/UPC-A, UPC-E, EAN-8, Co ...
- QT creator+OpenCV2.4.2+MinGW 在windows下开发环境配置
由于项目开发的原因,需要配置QT creator+OpenCV2.4.2+MinGW开发环境,现对配置方法做如下总结: 1. 下载必备软件 QT SDK for Open Source C++ de ...
- 75.VS2013和opencv3.1.0开发环境配置
首先要做的就是 开发环境配置,具体过程如下: Step 1:OpenCV环境变量配置 我的电脑--->属性--->高级系统设置--->高级--->环境变量--->系统变量 ...
- (转)OpenCV 2.4.8 +VS2010的开发环境配置
转自: http://blog.csdn.net/poem_qianmo/article/details/19809337 自己可能需要再进行修改 本系列文章由zhmxy555(毛星云)编写,转载请 ...
- 【OpenCV入门教程之一】 安装OpenCV:OpenCV 3.0、OpenCV 2.4.8、OpenCV 2.4.9 +VS 开发环境配置
本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/19809337 作者:毛星云(浅墨 ...
- 开发环境配置--Ubuntu+Qt4+OpenCV(一)
同系列的文章 1. 开发环境配置--Ubuntu+Qt4+OpenCV(一) 2. 开发环境配置--Ubuntu+Qt4+OpenCV(二) 3. 开发环境配置--Ubuntu+Qt4+OpenCV( ...
随机推荐
- android获取手机号
private String getPhoneNum(){ //与手机建立连接 TelephonyManager tm = (TelephonyManager)getSystemService(Con ...
- SGU 107 数学题
题意:求平方后末尾9个数是987654321的数个数. 之前做此题,竟然愚蠢到用计算器 在哪里算,还加笔算,SB啊!不知道先打印一下吗! #include<iostream> #inclu ...
- P2085 最小函数值 洛谷
https://www.luogu.org/problem/show?pid=2085 题目描述 有n个函数,分别为F1,F2,...,Fn.定义Fi(x)=Ai*x^2+Bi*x+Ci (x∈N*) ...
- 【深入Java虚拟机】之五:多态性实现机制——静态分派与动态分派
方法解析 Class文件的编译过程中不包含传统编译中的连接步骤,一切方法调用在Class文件里面存储的都只是符号引用,而不是方法在实际运行时内存布局中的入口地址.这个特性给Java带来了更强大的动态扩 ...
- KernelHacking
https://kernelnewbies.org/KernelHacking-HOWTO/Debugging_Kernel
- LayUI后台管理与综合示例
一.LayUI介绍 layui(谐音:类UI) 是一款采用自身模块规范编写的前端 UI 框架,遵循原生 HTML/CSS/JS 的书写与组织形式,门槛极低,拿来即用.其外在极简,却又不失饱满的内在,体 ...
- Spring自带mock测试Controller
原文:http://blog.csdn.net/yin_jw/article/details/24726941 准备SpringMVC环境 注意:使用mock测试需要引入spring-test包 Ba ...
- 出现二个奇葩bug
1.js中少了个单引號,指定的href嵌套指定的地址.单双引號混合加入的情况下一点都不好找.让人头痛的是在chrome,ie11下没有出现js报错,在IE8下报html页面第一行出错.少了个;号 2. ...
- java中等待所有线程都执行结束(转)
转自:http://blog.csdn.net/liweisnake/article/details/12966761 今天看到一篇文章,是关于java中如何等待所有线程都执行结束,文章总结得很好,原 ...
- 提高系统性能——对SQL语句优化的思考
软件在研发的过程中自始至终都在留意着系统的可扩展性.但与此同一时候也在关注着系统的性能,SQL语句作为系统性能的一环不容忽视.从今天開始结合开发的经验,谈一下我对SQL语句优化的理解和认知: 1.在联 ...