Win7系统Visual Studio 2013配置OpenCV3.1图文详解


OpenCV3.1对硬件加速和移动开发的支持相对于老版本都有了较大改进,支持新的开发工具,更易于扩展,配置方式也比以前简单一些。但一直用OpenCV2.4,直到最近准备写点东西才抽出时间更新了一下开发环境:Win7,64bit系统,安装VS2013并配置OpenCV3.1。因为OpenCV3.1只有针对vc12(对应vs2013)和vc14(对应vs2015)两个版本有编译好的文件,如果继续使用vs2013之前的版本则需要自己用CMake编译。本文主要包括以下内容:

下载安装Visual Studio 2013

下载安装OpenCV3.1

在工程中配置OpenCV3.1

测试安装的小程序

一、安装Visual Studio 2013

1.1 下载VS2103

可以在微软的官网下载各个版本的Visual Studio,下载地址:https://www.visualstudio.com/zh-hans/downloads/

1.2 安装VS2013

正常安装VS2013后,需要登录Microsoft账户,如果没有则需要新建一个并登录一次。

1.3 注册VS2013

如果不注册VS2013,评估版需要每隔30天登录一次Microsoft账户。如果有注册号则可通过以下方式注册:

启动Visual Studio 2013->帮助->注册产品->更改我的产品许可证->输入正确的产品密钥->注册成功

二、安装OpenCV3.1

OpenCV3.1版本的特性可参考以下博文:http://blog.csdn.net/wangyaninglm/article/details/50461054

2.1 下载OpenCV

可以在OpenCV的官网下载相应版本的OpenCV安装文件,下载地址:http://opencv.org/releases.html

根据需要下载对应的安装包,此处我们选择Win Pack


2.2 安装OpenCV3.1

下载完成后双击opencv-3.1.0.exe自解压文件,选择安装目录,这里我选择D盘根目录。

单击:“Extract”提取文件。

解压结束后即完成了“安装”。安装完成在指定安装目录下出现opencv目录,安装成功。

三、配置OpenCV3.1

要在vs工程中使用OpenCV需要手动完成以下配置:

设置用户环境变量(可选)

设置系统环境变量(必选)

配置工程的包含目录(必选)

配置工程的库目录(必选)

配置工程的附加依赖项(必选)

下面我们就来逐一完成以上配置。

3.1 设置用户环境变量

这一步是为了让我们在自己计算机上编写的程序便于移植到OpenCV安装目录不同的另外的计算机上而进行的操作。如果不配置用户变量,则注意在下面的几步中需要使用OpenCV安装的绝对路径。配置方法如下:

计算机->右键属性->高级系统设置->系统属性->高级->环境变量->用户变量->新建

我们新建一个用户变量名命名为OPENCV31,因本机安装在D盘根目录,所以变量值设为:D:\opencv\build

3.2 设置系统环境变量

设置系统的环境变量Path是为了让编译器在编译过程中能找到OpenCV的动态链接库。在刚才的界面下方,找到系统环境变量:Path,单击“编辑”,

增加:%OPENCV31%\x64\vc12\bin

注意相邻环境变量需要用英文的分号 ; 隔开。vc12是VS2013的版本号。

3.3 新建工程

启动vs2013,新建一个Visual C++的Win32控制台应用程序,命名为test_vs2013_opencv3.1

使用默认设置,点击“完成”。然后将项目属性->平台->x64,如果平台的下拉列表中没有x64,则通过右侧的“配置管理器“新建一个x64平台。

3.4 配置工程的包含目录

添加包含目录以便在工程中引用OpenCV库的头文件时编译器能找到这些.h头文件的位置。

项目->属性->配置属性->VC++目录->包含目录->编辑->添加:

$(OPENCV31)\include\opencv2

$(OPENCV31)\include\opencv

$(OPENCV31)\include

如果前面没有设置用户环境变量OPENCV31,则此处需要填绝对路径:

D:\opencv\build\include

D:\opencv\build\include\opencv

D:\opencv\build\include\opencv2

3.5 配置工程的库目录

配置工程的库目录是告诉编译器OpenCV的动态链接库的引入库.lib文件的位置在哪。

项目->属性->配置属性->VC++目录->库目录->编辑->添加:

$(OPENCV31)\x64\vc12\lib

同样,如果没有配置用户环境变量OPENCV31,此处使用绝对路径:

D:\opencv\build\x64\vc12\lib

包含目录和库目录都配置好后:

3.6 配置工程的附加依赖项

添加附加依赖项是告诉编译器,编译时用到了哪些.lib库文件。

项目->属性->配置属性->链接器->输入->附加依赖项->编辑->添加:

如果配置是Debug则添加opencv_world310d.lib;如果配置是Release则添加opencv_world310.lib

这个配置比2.x版本简单太多


四、测试代码

为了验证上述安装配置的正确性,我们在test_vs2013_opencv3.1.cpp中添加如下代码

#include "stdafx.h"
#include "opencv.hpp"

using namespace std;
using namespace cv;

int _tmain(int argc, _TCHAR* argv[])
{
	cv::Mat image = cv::imread("F:/images/Lena.jpg", 1);
	if (!image.data)
	{
		cout << "image load error" << endl;
		system("pause");
		return 0;
	}
	cv::imshow("Lena", image);
	cv::waitKey();
	return 0;
}

注意载入图像时的路径的写法

cv::imread("F://images/Lena.jpg",1);  //√

cv::imread("F:/ images/Lena.jpg",1);  //√

cv::imread("F:\images\Lena.jpg",1);   //×

运行结果:

如果载入错误,命令行将提示如下信息:

转载请注明出处(本文更新链接):http://blog.csdn.net/iracer/article/details/75578683

Win7系统Visual Studio 2013配置OpenCV3.1图文详解的更多相关文章

  1. (转)CentOS 6下配置软RAID图文详解

    CentOS 6下配置软RAID图文详解 原文:http://blog.51cto.com/hujiangtao/1929620 一.RAID 简介 RAID 是英文Redundant Array o ...

  2. windows系统下如何正确安装Cygwin(图文详解)

    我的操作系统信息是 1.在官网https://cygwin.com/install.html下载win64位安装包 选择包的下载存放目录,点击“下一步”   为了使我们安装的Cygwin能够编译程序, ...

  3. 新手,Visual Studio 2013 配置Boost库,如何编译和选择

    QuantLib installation in VC++ 2010 and later 参考:http://quantlib.org/install/vc10.shtml 1,到官网下载最新的boo ...

  4. visual studio 2013 配置开发环境

    https://www.visualstudio.com/explore/xamarin-vs http://sourceforge.net/projects/easyeclipse/files/?s ...

  5. visual studio 2013 配置 ef+pgsql

    环境:VS2013,WIN7 准备工作: 1.有哪些供应商提供EF6的支持? 可以看msdn给出的答案:Which providers are available for EF6? 在本文使用 Dev ...

  6. [Note] Build your SDL2 Environment in Visual Studio 2013 配置你的SDL2运行环境

    Right key your project in "solution manager(解决方案资源管理器)", choose the "Property(属性)&quo ...

  7. win10系统 Visual Studio 2013 Color Theme Editor插件 安装出错

    下载这个版本,用vs2013打开安装即可:http://pan.baidu.com/s/1hrcfY1A

  8. Visual Studio 2013 配置多个Release版本,并为每个版本配置预编译的宏

    最近开发过程中,需要将同一份工程编译成两个版本,分别为ReleaseA和ReleaseB. ReleaseB比ReleaseA少了部分功能,所以希望在编译的时候,根据不同的版本编译工程中相应的代码. ...

  9. 新手一步一步OpenCV+Win7+Visual Studio 2013环境配置

    地点:湖南大学软件大楼211 时间:2013.12.19 昨天导师布置了个任务,要求是找出用相机拍出同一移动场景下的两张照片,计算机能根据其中的差异计算场景移动的距离和旋转角度.据说以前很牛逼的师兄完 ...

随机推荐

  1. soapUI-DataSource

    1.1.1.1 概述 - 数据源   Option Description   Properties DataSource属性表   Toolbar DataSource工具栏   Configura ...

  2. make clean 与 make distclean 的区别

    make clean仅仅是清除之前编译的可执行文件及配置文件. 而make distclean要清除所有生成的文件. Makefile 在符合GNU Makefiel惯例的Makefile中,包含了一 ...

  3. cocos代码研究(10)ActionEase子类学习笔记

    理论部分 缓动动作的基类,继承自 ActionInterval类.ActionEase本身是一个抽象的概念父类,开发者最好不要在代码中直接创建它的对象,因为它没有具体的执行效果,这一类的子类速度变化大 ...

  4. Quick中require与import的区别

    载入一个模块 import() 与 require() 功能相同,但具有一定程度的自动化特性. 假设我们有如下的目录结构: app/ app/classes/ app/classes/MyClass. ...

  5. Redis 入门之Redis简介

    Reids 是一个开源的高性能键值对数据库.它通过多种键值数据类型来适应不同场景下的存储需求,并借助许多高层级的接口使其可以胜任如缓存.队列系统等不同的角色. 1.Reids的诞生 Redis到底是在 ...

  6. 字典树 trie

    Trie树        Trie树,就是字母树.Trie树是多叉树,每个节点为一个字母.其根节点为象征节点(就是说没有含义,但是存在这个节点),从根节点开始建立,每个节点至多为26个子节点(不要我说 ...

  7. 怎样在linux下对U盘进行格式化和分区

    说明,为了不做无用功,首先必须卸载要分区的设备,分区才能执行成功.通过命令umount /media/?? 或者umount /mnt/??? 看你的实际情况,这一步必不可少.1.首先通过命令fdis ...

  8. Linux学习笔记之Linux计划任务Crontab

    0x00 cron 简介 cron 是 UNIX, SOLARIS,LINUX 下的一个十分有用的工具.通过 cron 脚本能使计划任务定期地在系统后台自动运行. 0x01 cron 命令 cront ...

  9. WinterCamp2017 游记

    Winter is coming! Day0 Day0前一天打了一轮CF,做完了ABCD,Div2 Rank59.然后就去开开心心的睡觉,准备第二天的行程. 快到一点的时候躺在了床上,睡不着,翻来覆去 ...

  10. 20145106 《Java程序设计》第5周学习总结

    教材学习内容总结 个人认为本周的学习在很大程度上是作为之前学习内容的补充.之前编译的程序相信所有人都会失败过,error算是我程序的老主顾了. 第八章名为"异常处理".本章中,我们 ...