地点:湖南大学软件大楼211

时间:2013.12.19

昨天导师布置了个任务,要求是找出用相机拍出同一移动场景下的两张照片,计算机能根据其中的差异计算场景移动的距离和旋转角度。据说以前很牛逼的师兄完成过,好吧,江山代有才人出,长江后浪推前浪,伦我出场了。本系列也将记录该项目整个流程,一方面总结自己,二方面以供大家学习,一起进步。

一、OpenCV环境配置准备工作

1.下载软件:(http://sourceforge.net/projects/opencvlibrary/files/?source=navbar):根据需要下载合适的版本,当然我这里要说明的是我用的配置是:Win7+Visual Studio 2013+opencv-2.4.7.2

2.解压文件:点击下载好的.exe文件即进行文件解压,OpenCV是一个安装解压文件

3.配置环境变量

1)打开管理员模式的命令提示符,运行: setx -M OPENCV_DIR D:\opencv\build\x86\vc11  (这样做的目的是方便OPENCV_DIR 成为一个系统的变量)

2)->我的电脑->右键属性-高级系统设置->环境变量,找到path变量名,添加   ;%OPENCV_DIR%\bin    (为了与以前变量值分开,带分号是应该的)

4.配置VS环境

这里每次新建工程都需要手动配置,其实说白了是配置工程依赖项。

1)在工程属性页面下面配置“包含目录”和“库目录”两项(这里注意后面不要添分号,反正我添了不行)

$(OPENCV_DIR)\..\..\include                         ——包含目录

$(OPENCV_DIR)\lib                                       ——库目录

2)在连接器->附加依赖项中添加相关动态链接库,这一步很重要,否则会报错说无法解析外部指令,另外添加和版本相关,具体到bin文件夹下去查看,我的版本是opencv-2.4.7.2(注:我配置的是Release版,debug时报缺失MSVCP110D.dll 文件的错)

)3连接器中添加附加依赖项

a.debug模式添加

opencv_core247d.lib
opencv_imgproc247d.lib
opencv_highgui247d.lib
opencv_ml247d.lib
opencv_video247d.lib
opencv_features2d247d.lib
opencv_calib3d247d.lib
opencv_objdetect247d.lib
opencv_contrib247d.lib
opencv_legacy247d.lib
opencv_flann247d.lib

b.release模式添加

opencv_core247.lib
opencv_imgproc247.lib
opencv_highgui247.lib
opencv_ml247.lib
opencv_video247.lib
opencv_features2d247.lib
opencv_calib3d247.lib
opencv_objdetect247.lib
opencv_contrib247.lib
opencv_legacy247.lib
opencv_flann247.lib

5.测试

安装完成后可测试安装成功与否
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace std;
using namespace cv;
int main(int argc, char **argv)
{
if (argc<2)
{
cout << "No parameters.\n"
<< "You need to specify an image." << endl;
exit(1);
}
else
{
Mat img = imread(argv[1]); if (img.empty())
{
fprintf(stderr, "Error: load image failed.");
return -1;
}
namedWindow("image", CV_WINDOW_AUTOSIZE);
imshow("image", img);
waitKey();
}
return 0;
}

新手一步一步OpenCV+Win7+Visual Studio 2013环境配置的更多相关文章

  1. OpenCV2.4.9 & Visual Studio 2010 环境配置篇

    1. 准备工作 1.1. 安装 Visual Studio 2010, 需要安装 VC++ 相关功能.具体可求助度娘. 1.2. 下载 OpenCV 2.4.9 For Windows:https:/ ...

  2. 在 C 代码中嵌入 Python 语句或使用 Python 模块 (Visual Studio 2013 环境设置)

    1) 新建一个 内嵌 Python 语句的 C 代码, // This is a test for check insert the Python statements or module in C. ...

  3. OpenCV:Visual Studio 2013 Ultimate中OpenCV 2.4.8 配置

    配置环境: 操作系统:Win8.1  64位 IDE平台:Visual Studio 2013 Ultimate 一.准备OpenCV 2.4.8 1.下载:从官网下载 OpenCV2.4.8:   ...

  4. Visual Studio 2013环境下操作vc6/vc7/vc8等低版本平台项目【编译|生成|调试】

    现代化的开发环境,微软一直在推出更新换代,我们所处的技术环境在日新月异的变化:不过在中国多数人们一边疲惫的追赶着时代的步伐,一边坚守着自己所获悉所掌握的那些紧吧吧的知本.对技术工具的掌握并非他们所想要 ...

  5. Visual Studio 2013 sqlce 配置(转)

    Visual Studio 2013 把內建 SQL CE 的管理工具拿掉了 下载SQL Server Compact Toolbox by ErikEJ并安装 打开VS2013,新建一工程,在“视图 ...

  6. 从头开始学eShopOnContainers——Visual Studio 2017环境配置

    一.安装和配置Docker环境 1.安装Docker CE for Windows 从官方网站下载并安装,https://docs.docker.com/docker-for-windows/inst ...

  7. visual studio 2013 中配置OpenCV2.4.13 姿势

    首先在path中添加 “C:\OpenCV\opencv\build\x64\vc12\bin”   (地址随实际变化) 注:添加的都是*86不使用*64 在visualstudio 2013中配置 ...

  8. Visual Studio 生产环境配置方案:SlowCheetah

    原文 SlowCheetah 能满足你不同编译模式产生不同 app.config 配置的需求,已被微软纳入麾下,支持XML,JSON格式. 下面我们用XML的格式来试试如何使用SlowCheetah, ...

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

    Win7系统Visual Studio 2013配置OpenCV3.1图文详解 OpenCV3.1对硬件加速和移动开发的支持相对于老版本都有了较大改进,支持新的开发工具,更易于扩展,配置方式也比以前简 ...

随机推荐

  1. UVa 11526 H(n)

    题意: long long H(int n){ long long res = 0; for( int i = 1; i <= n; i=i+1 ){ res = (res + n/i); } ...

  2. jquery dialog-优雅的弹出框

    前面一章已经对datepicker的使用,做了简单的说明.这一章主要对dialog如何使用做个说明.         jquery ui-dialog在web开发中运用还是比较多的.最常见的例子就是登 ...

  3. Mysql的 时间戳转换 和 c# 的时间戳转换 (以秒来进行转换,非毫秒,主要是mysql不能存毫秒)

    Mysql 时间戳函数 => 从时间 转成 时间戳   UNIX_TIMESTAMP() 获取当前服务器时间的时间戳 UNIX_TIMESTAMP('2013-01-01 12:33:19') ...

  4. 监听某个div或其它标签的大小改变来执行相应的处理

    jquery 默认的resize只能监听到浏览器窗口大小的改变,但我们在实际使用过程中有可能还需要监听某个div或其它标签的大小改变来执行相应的处理,如果使用默认的resize就无能为力了.怎么办呢, ...

  5. linux下/etc/passwd和/etc/shadow文件

    /etc/passwd文件中保存的是用户的账号信息,而/etc/shadow文件中保存的是用户的口令信息. 一 /etc/passwd 一个用户对应着该文件中一行记录,一行记录由若干个字段组成,字段之 ...

  6. OutputCache缓存各参数的说明

    Duration 缓存时间,以秒为单位,这个除非你的Location=None,可以不添加此属性,其余时候都是必须的. Location Location当被设置为None时,其余的任何设置将不起作用 ...

  7. 【LeetCode 99】Recover Binary Search Tree

    Two elements of a binary search tree (BST) are swapped by mistake. Recover the tree without changing ...

  8. <转>如何测试大型ERP软件?

    大型ERP软件是一个在企业范围内部应用的.高度集成的软件,且操作频繁,数据在各业务系统之间高度共享.那么针对大型ERP软件的特点,我们应该怎么测试呢?要使用怎样的测试方法?需要什么样的测试人员?... ...

  9. 用javascript 面向对象制作坦克大战(四)

    我们现在还差一个重要的功能,没错,敌人坦克的创建以及子弹击中敌人坦克时的碰撞检测功能. 5.  创建敌人坦克完成炮弹碰撞检测 5.1   创建敌人坦克对象 敌人坦克和玩家坦克一样,同样继承自我们的坦克 ...

  10. MockMvc和Mockito之酷炫使用

    由于项目中需要添加单元测试,所以查询之后发现Mockito非常适合现在的web项目. 首先需要添加pom依赖: <dependency> <groupId>junit</ ...