原文位置   https://www.cnblogs.com/linshuhe/p/5764394.html

何乐不为~

随笔-9  文章-0  评论-32

OpenCV学习笔记(一)——OpenCV3.1.0+VS2015开发环境配置

摘要:

由于最近AR(增强现实)这个概念非常火爆,各种基于AR的应用及游戏逐渐面向大众,而在AR中最重要的两个技术就是跟踪识别和增强渲染,其中跟踪识别是通过OpenCV这个开源的计算机视觉库来实现的,所以我就想着研究一下这个库,这里是个人的学习笔记,不是什么权威的教程,如果你们有错误也麻烦帮我指出哈。

=============================================分割线==================================================

前言:

什么是OpenCV?可能还有人不清楚吧,简单地说,OpenCV——Open Source Computer Vision Library,即开源计算机视觉库,它是基于C语言和部分C++语言来开发,可用于计算机视觉、图像处理以及模式识别和跟踪。

一、准备工作:

1.下载OpenCV安装包:

到OpenCV的官网(http://opencv.org/)下载最新版本的OpenCV安装包,由于OpenCV针对不同平台都有安装程序,所以我们只需要根据当前开发环境选择合适的平台版本即可,这里我们是在win7 64bit操作系统下进行开发,所以应该下载OpenCV for Windows:

我们选择了当前的最新版本3.1,下载完毕后,我们得到其安装文件:opencv-3.1.0.exe

2.安装Visual Studio 2015

二、安装配置:

1.安装:

双击打开下载好的opencv-3.1.0.exe文件,进行安装(其实是解压),选择安装目录:

安装完毕之后,在其安装目录下可以看到两个文件夹:build和sources,其中build是OpenCV使用时要用到的一些库文件,而sources中则是OpenCV为我们提供的一些demo示范源码:

2.环境变量配置:

上面步骤只是完成了安装,但是要能够正常使用OpenCV来进行开发,我们还需要进行环境变量的配置,我的电脑—>属性—>高级系统设置—>环境变量,找到Path变量,选中并点击编辑:

64位系统的需要在path添加“;opencv安装路径\build\x64\vc14\bin”(注:英文输入法中的“;”是分割符,用于与前面其他软件的配置参数分开),例如我的配置参数应该为:;E:\OpenCV\opencv\build\x64\vc14\bin。在之前的opencv版本中的配置时,32位系统应配置路径“;opencv安装路径\build\x86\vc14\bin”,但是3.1.0版本的OpenCV已经将x86这个目录删除了,也就是说在VS 2015环境下不能进行32位的OpenCV编译。

还有一个要注意的就是x64文件夹下分为vc12和vc14两个文件夹,他们对应于VS的版本,例如VS2013应使用vc2012,而这里我们使用的是VS 2015,所以应该使用vc14文件目录:

补充:vc8 = Visual Studio 2005,vc9 = Visual Studio 2008,vc10 = Visual Studio 2010,vc11 = Visual Studio 2012,vc12 = Visual Studio 2013,vc14 = Visual Studio 2015

注意:环境变量配置完毕之后,需要重启电脑才能生效!

3.VS 2015配置:

我们知道要在VS中使用外部的类库的话,需要进行引入的一下配置,这个配置就包括:外部库目录指定和外部包含文件指定。

打开VS 2015,新建一个空白的win32的控制台工程:

选择语言为C++,Win32类型中的控制台工程,并设置工程名称:

指定建立的工程为空白工程:

建立完工程之后,我们选中解决方案栏中的Resource Files目录(即源码目录),然后新建一个C++源码文件:

设置源码的文件名,例如:Main,然后创建此源码文件到工程中: 

在VS中有个叫做“属性管理器”的工具,用于进行VS整体参数的配置,配置一次之后,以后所有新建项目都能应用改配置,不用再一一进行配置操作,使用起来也非常方便。点击工具栏中的:View—>Other Windows—>Property Manger打开属性管理器:

在新出现的属性管理器栏中,展开目录,选中Debug|Win64中的Microsoft.Cpp.x64.user,并右键点击属性(Properties)进入属性界面:

1)配置包含目录:

在通用属性(Common Properties)—>VC ++目录—>包含目录,然后点击右侧三角标志选中Edit进入编辑:

向其中添加下面三个路径:

E:\OpenCV\opencv\build\include

E:\OpenCV\opencv\build\include\opencv

E:\OpenCV\opencv\build\include\opencv2

2)配置库文件目录:

完成上面的包含目录配置之后,我们还需要进行库文件的配置:回到属性界面,选择包含目录下面的Library Directories(库文件目录):

向库文件目录下添加OpenCV的库文件目录:E:\OpenCV\opencv\build\x64\vc14\lib,这个目录根据每个人自己在第一步安装OpenCV中选择的目录进行选定:

3)配置动态链接库:

我们可以查看步骤2)中添加的库文件目录下面.lib文件列表,发现在3.1.0版本的OpenCV中,仅剩下两个库文件,分别是:opencv_world310.lib和opencv_world310d.lib,这里两个库文件的区别就是:opencv_world310.lib是Release模式版本,而opencv_world310d.lib是Debug模式版本:

跟上述两个步骤相似,在属性界面中打开Linker(链接库)—>Input(输入)—>Additional Dependencies(添加依赖):

将我们刚刚在OpenCV库文件目录下看到的两个库文件其中一个添加到这里(根据模式需求Release模式或Debug模式):

其实,对已经发行和未来即将发布的新版OpenCV,只需看opencv\build\x86\vc10\lib下的库是哪几个,添加成依赖项就可以了。

三、实践:

在完成了上述所有配置工作之后,我们需要进行一次实测,用于验证以上配置是否成功。这里我们的测试demo功能很简单,就是在一个窗口中显示我们指定的一张图片。在之前的Main.cpp文件中添加以下代码:

#include <iostream>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>  using namespace cv;  int main(){  // 读入一张图片(游戏原画)    Mat img = imread("pic.jpg");  // 创建一个名为 "游戏原画"窗口    namedWindow("游戏原画");  // 在窗口中显示游戏原画    imshow("游戏原画", img);  // 等待6000 ms后窗口自动关闭    waitKey(6000);
}

将图片pic.jpg复制到工程目录下面,与源码位于同一目录:


    运行工程,假如一切都正常的话,会出现如下结果:

四、可能出现的问题:  

1.运行程序时,发现编译不通过,报一下错误:

这个错误出现的原因是:我们之前说过在VS 2015中不能进行32位的OpenCV的编译,而且我们整个配置过程都是针对于64位系统而进行的,那么我们要如何才能让VS 2015运行64的调试模式呢,其实很简单,在工具栏中切换一下就好:

2.无法加载图片,提示指针越位:

出现这个问题一般可能有两个原因:

一是图片后缀名不对或者是目录存放位置不正确;

二是属性配置中的动态库配置中,带d和不带d的两个库文件配置情况与当前调试模式不对应,可以在解决方案中直接选中当前工程,右键进入属性面板,然后修改其Linker中的Additional Dependencies:

标签: OpenCV

好文要顶 关注我 收藏该文

何乐不为~
关注 - 2
粉丝 - 16

+加关注

18

0

« 上一篇:Python 爬虫6——Scrapy的安装和使用
» 下一篇:Github+Jekyll —— 创建个人免费博客(一)从零开始

posted @ 2016-08-12 11:52 何乐不为~ 阅读(70363) 评论(32) 编辑 收藏

评论列表

#1楼 2016-10-26 14:33 朱晓霞

走遍天涯海角,终于就你的有用,谢谢大神~膜拜~~~

支持(0)反对(0)

#2楼[楼主] 2016-10-26 14:39 何乐不为~

@ 朱晓霞
客气了,互相学习

支持(0)反对(0)

#3楼 2016-10-31 09:42 dinding

博主这篇真是最详细的,最近用VS2015加载海思的第三方库,总是报错,看了博主的文章说VS2015不支持32位库,看来应该是这个原因了。问题来了,如果我要运行这个库,只能通过下载低版本的VS来实现了吗?

支持(0)反对(0)

#4楼 2016-11-30 13:32 jcjks

不错,收藏了。。。
不过楼主,Win下配置了环境变量不需要重启就可以生效的,打开命令提示符执行:echo %PATH%,就可以刷新它了。

支持(0)反对(0)

http://pic.cnblogs.com/face/13949/20170616080646.png

#5楼 2016-12-06 00:06 Scaactk

不得不赞系列,写的太好了

支持(0)反对(0)

#6楼 2016-12-26 20:57 百物易用是书生

我的opencv3.2 报错;
错误一:LNK1120 1个无法解析的外部命令
错误二:LNK2019 无法解析的外部符号WinMain,该符号在int_cdecl invoke_main(void)" (?invoke_main@@YAHXZ)中被引用 是MSVCRTD.lib中出问题;
不知怎么弄

支持(1)反对(0)

#7楼 2017-02-17 15:04 始如初见-纳兰

@ dinding
支持32位的,你自己用CMAKE 去生成
[url=http://blog.csdn.net/zmdsjtu/article/details/52335977]
上面一个大神自己生成的x86 lib/dll/staticlib

支持(0)反对(0)

#8楼 2017-03-01 10:49 niokit

很详细呀,我要开始学习了~~~

支持(0)反对(0)

http://pic.cnblogs.com/face/1005218/20180603140539.png

#9楼 2017-03-24 20:13 28LL

博主您好,我已经按照您的步骤做了,但是出现了很多size_t不是类型名,CvArr不是类型名,缺少显示类型等错误,请问是什么原因,计算机小白⊙﹏⊙

支持(0)反对(0)

#10楼 2017-03-28 22:17 light82

万分感谢。OpenCV终于可以运行啦。我用的是Visual Studio2013和OpenCV3.1,按照博主给的步骤可以最终运行。

支持(0)反对(0)

#11楼 2017-04-11 11:21 胡万霖

很不错的文章,VS2015+opencv3.2,成功

支持(0)反对(0)

#12楼 2017-07-18 21:48 卡耐基的热爱

严重性 代码 说明 项目 文件 行 禁止显示状态
错误 LNK1181 无法打开输入文件“opencv_world310.obj” TestOpencv11 D:\360安全浏览器下载\opencv\workplace\TestOpencv11\TestOpencv11\LINK 1
改了动态链接库但是没有效果。求解答,谢谢了!

支持(0)反对(0)

#13楼 2017-09-14 10:42 xcc1

博主 请教
为什么我新建工程,并在源文件里新建CPP的时候,并没有DEBUG|X64 这个选项啊,只有X32的!这样能行吗?

支持(2)反对(0)

#14楼 2017-10-16 21:39 彡枫

我想问一下我修改完path以后重启发现电脑上找不到Visual Studio 2015了,这是什么情况。

支持(0)反对(0)

#15楼 2017-11-06 20:15 他叫我丘

请问楼主,错误提示fatal error C1083: 无法打开包括文件: “opencv2/core/core.hpp”: No such file or directory该怎么办

支持(0)反对(0)

#16楼 2017-11-12 22:57 CuriousZero

好详细,膜拜大神。
BTW,试了好几次,读取图片不成功咋办?

支持(0)反对(0)

http://pic.cnblogs.com/face/818082/20160621093223.png

#17楼[楼主] 2017-11-13 09:49 何乐不为~

@ ScarlettSXL
有报错吗?

支持(0)反对(0)

#18楼[楼主] 2017-11-13 09:50 何乐不为~

@ 彡枫
这是没安装成功的接口?还是只是没创建快捷方式

支持(0)反对(0)

#19楼 2017-12-06 10:48 踏风追月

按楼主的方法,开始未能成功,后来检查原因,是因为X86与X64设置上出的原因,现在已经能正常使用,谢谢楼主的分享

支持(0)反对(0)

#20楼 2017-12-26 14:22 想飞的鱼吧

楼主真的厉害啊,我找了这么多都没配好,按照你的立马就配好了,不过我用的版本是3.2的,现在楼主是专门向计算机视觉方向发展的么?

支持(0)反对(0)

#21楼[楼主] 2017-12-26 14:26 何乐不为~

@ 想飞的鱼吧
能用就好,现在没往那方面发展,做游戏去了

支持(0)反对(0)

#22楼 2017-12-26 19:03 想飞的鱼吧

@ 何乐不为~
现在游戏行业前景怎么样呢?压力大么?

支持(0)反对(0)

#23楼[楼主] 2017-12-26 19:08 何乐不为~

@ 想飞的鱼吧
前景说不准,看自己运气,压力肯定是比软件那些要大

支持(0)反对(0)

#24楼 2017-12-26 19:12 想飞的鱼吧

@ 何乐不为~
感觉游戏行业还要更赚一点哦,但是国内的游戏开发人才还是太少了,没有开发出比较多的大型游戏引擎

支持(0)反对(0)

#25楼 2018-02-13 21:54 hillpig

解决无数人对安装opencv环境变量疑惑的终极答案:
https://jingyan.baidu.com/article/295430f19883ba0c7f005054.html
CentOS6.9 64位+opencv 2.4.13.5+Eclipse CDT开发环境搭建+用Hog进行行人检测:
http://blog.csdn.net/hillwolf/article/details/79318747

支持(0)反对(0)

#26楼 2018-03-12 17:43 x7chen

配置成功,谢谢分享

支持(0)反对(0)

#27楼 2018-03-19 14:35 Firmiana1220

我的出现了问题,求解答。
“由于找不到opencv_world340d.dll, 无法继续执行代码。重新安装程序可能会解决此问题”

支持(0)反对(0)

http://pic.cnblogs.com/face/1297140/20171211084316.png

#28楼 2018-03-20 19:17 raow

@ 他叫我丘
你好 我也出现这个问题 你解决了吗

支持(0)反对(0)

#29楼 2018-03-28 10:22 想学编程的Girl

我的vs2015不管运行什么程序都出现这个错误: LNK1104 无法打开文件“ucrtd.lib”,这是怎么回事啊?找了两天了,也没解决

支持(0)反对(0)

#30楼 2018-05-04 22:14 新晋小菜鸟

怎么没有后续更新了呢

支持(0)反对(0)

#31楼 2018-08-08 14:34 小嗷

先简单说说从opencv的目前状态,齐全的学习资料基本都是2016年以前的(无法一步到位,博客基本停更,或者写给自己看)。所以,小嗷开了个微信公众号:aoxiaoji,记录自己的爬坑历程。目的就是减少新手的上手难度。最终,一起学习一起进步。github博客:https://f600lt.github.io/2018/08/06/xiaoaoderichang/,公众号:aoxiaoji,吹比QQ群:736854977

支持(0)反对(0)

#32楼40576202018/9/4 15:02:19 2018-09-04 15:02 Matiz

@ Firmiana1220
dll在bin目录下,配置好path 重启后就没问题了

支持(0)反对(0)

刷新评论刷新页面返回顶部

注册用户登录后才能发表评论,请 登录 或 注册,访问网站首页。

【推荐】超50万VC++源码: 大型组态工控、电力仿真CAD与GIS源码库!
【免费】要想入门学习Linux系统技术,你应该先选择一本适合自己的书籍
【推荐】企业SaaS应用开发实战,快速构建企业运营/运维系统
【推荐】ActiveReports 报表控件,全面满足 .NET开发需求

最新IT新闻:
· 猫眼没有创始人 票房战争永不眠
· Linus Torvalds:我不看好量子计算
· 20年狂投132家公司!贝索斯说我比亚马逊更值钱
· 滴滴的套路,才是ofo的死穴?
· 腾讯的产品思维VS阿里的终局思维
» 更多新闻...

最新知识库文章:

· 如何招到一个靠谱的程序员
· 一个故事看懂“区块链”
· 被踢出去的用户
· 成为一个有目标的学习者
· 历史转折中的“杭派工程师”

» 更多知识库文章...

公告

昵称:何乐不为~
园龄:3年10个月
粉丝:16
关注:2

+加关注

< 2018年9月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 1 2 3 4 5 6

搜索

常用链接

  • 我的随笔
  • 我的评论
  • 我的参与
  • 最新评论
  • 我的标签

我的标签

  • Python(6)
  • 爬虫(6)
  • Jekyll(2)
  • OpenCV(1)
  • Ruby(1)

随笔档案

  • 2016年8月 (9)

最新评论

  • 1. Re:OpenCV学习笔记(一)——OpenCV3.1.0+VS2015开发环境配置
  • @Firmiana1220dll在bin目录下,配置好path 重启后就没问题了...
  • --Matiz
  • 2. Re:OpenCV学习笔记(一)——OpenCV3.1.0+VS2015开发环境配置
  • 先简单说说从opencv的目前状态,齐全的学习资料基本都是2016年以前的(无法一步到位,博客基本停更,或者写给自己看)。所以,小嗷开了个微信公众号:aoxiaoji,记录自己的爬坑历程。目的就是减少......
  • --小嗷
  • 3. Re:OpenCV学习笔记(一)——OpenCV3.1.0+VS2015开发环境配置
  • 怎么没有后续更新了呢
  • --新晋小菜鸟
  • 4. Re:OpenCV学习笔记(一)——OpenCV3.1.0+VS2015开发环境配置
  • 我的vs2015不管运行什么程序都出现这个错误: LNK1104 无法打开文件“ucrtd.lib”,这是怎么回事啊?找了两天了,也没解决
  • --想学编程的Girl
  • 5. Re:OpenCV学习笔记(一)——OpenCV3.1.0+VS2015开发环境配置
  • @他叫我丘你好 我也出现这个问题 你解决了吗...
  • --raow

阅读排行榜

  • 1. OpenCV学习笔记(一)——OpenCV3.1.0+VS2015开发环境配置(70362)
  • 2. Python 爬虫4——使用正则表达式筛选内容(2860)
  • 3. Python 爬虫3——第一个爬虫脚本的创建(843)
  • 4. Python 爬虫5——爬取并下载网页指定规格的图片(647)
  • 5. Python 爬虫6——Scrapy的安装和使用(361)

评论排行榜

  • 1. OpenCV学习笔记(一)——OpenCV3.1.0+VS2015开发环境配置(32)

推荐排行榜

  • 1. OpenCV学习笔记(一)——OpenCV3.1.0+VS2015开发环境配置(18)
  • 2. Github+Jekyll —— 创建个人免费博客(二)Ruby+Jekyll部署(1)
  • 3. Github+Jekyll —— 创建个人免费博客(一)从零开始(1)

Copyright ©2018 何乐不为~

芭蕉树上第十二根芭蕉--opencv配置问题相关推荐

  1. 【OpenCV新手教程之十四】OpenCV霍夫变换:霍夫线变换,霍夫圆变换合辑

    本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接: http://blog.csdn.net/poem_qianmo/article/details/26977557 作者:毛星云(浅墨) ...

  2. 【OpenCV入门教程之十二】OpenCV边缘检测:Canny算子,Sobel算子,Laplace算子,Scharr滤波器合辑

    本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接: http://blog.csdn.net/poem_qianmo/article/details/25560901 作者:毛星云(浅墨) ...

  3. 有人问数学家一个问题:树上有十只鸟,开枪打死一只,还剩几只?

    有人问数学家一个问题:     树上有十只鸟,开枪打死一只,还剩几只?     数学家反问:是无声手枪或别的无声的枪吗?     不是.     枪声有多大?     会震得耳朵疼.     那就是说 ...

  4. 看程序员如何回答,树上有十只鸟!!

    树上有十只鸟,开枪打死一只,还剩几只?  某日,老师在课堂上想考考学生们的智商,就问一个男孩:  "树上有十只鸟,开枪打死一只,还剩几只?"  男孩反问:"是无声手枪,还 ...

  5. 经典版 树上有十只鸟,开枪打死了一只,还剩几只!

    经典版 树上有十只鸟,开枪打死了一只,还剩几只! 某日,老师在课堂上想看看一学生智商有没有问题,问他"树上有十只鸟,开枪打死一只,还剩几只?" 他反问"是无声手枪或别的无 ...

  6. 【OpenCV入门教程之十四】OpenCV霍夫变换:霍夫线变换,霍夫圆变换合辑

    本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接: http://blog.csdn.net/poem_qianmo/article/details/26977557 作者:毛星云(浅墨) ...

  7. Python 计算机视觉(十四)—— OpenCV 进行霍夫变换

    参考的一些文章以及论文我都会给大家分享出来 -- 链接就贴在原文,论文我上传到资源中去,大家可以免费下载学习,如果当天资源区找不到论文,那就等等,可能正在审核,审核完后就可以下载了.大家一起学习,一起 ...

  8. Python 计算机视觉(十二)—— OpenCV 进行图像分割

    参考的一些文章以及论文我都会给大家分享出来 -- 链接就贴在原文,论文我上传到资源中去,大家可以免费下载学习,如果当天资源区找不到论文,那就等等,可能正在审核,审核完后就可以下载了.大家一起学习,一起 ...

  9. OpenCV 【十二】OpenCV如何扫描图像、利用查找表和计时

    目录 OpenCV如何扫描图像.利用查找表和计时 1.函数计算时间测试case 2. Mat图像的存储机理 3. 像素遍历的3--4种方式 4. 实例 OpenCV如何扫描图像.利用查找表和计时 如何 ...

  10. opencv画虚线_(四十四)OpenCV中的机器学习-SVM

    时间为友,记录点滴. 本来还想在特征点检测的道路上再走一走,学习一下Harr级联或者HOG什么的,但总有些概念感觉绕不过去.择日不如撞日,撞日不如今日.我们先揭开机器学习中的一个小角,看看大热的机器学 ...

最新文章

  1. 操作系统导论第四章课后习题
  2. 实战Nagios+Ganglia发送警告信息,短信,微信等
  3. iOS中 动态启动图GIF的简单设置 韩俊强的博客
  4. 实拍Jerry Wang去德国出差期间居住的美丽的德国小镇
  5. datatable使用groupby进行分组统计 [2]
  6. python循环写入csv文件_从for循环和列表中写入.csv文件
  7. linux sftp目录无法切换,linux – SFTP用户无法编辑或创建文件
  8. 大华摄像头解码 ffmpeg_解码矩阵配套液晶拼接屏系统解决安防行业设备过于复杂的问题...
  9. leetcode最小面积_LeetCode 题解 |力扣杯 LCP 13.寻宝
  10. Python爬虫实例(六)多进程下载金庸网小说
  11. SPSS实现距离分析
  12. virtualbox虚拟机安装及镜像安装
  13. java 天气api_基于JAVA的免费天气预报接口查询
  14. 进化计算(六)——NSGA II代码实现(Matlab)
  15. Hbuilder x想调试时却无法检测到IOS手机,但是安卓手机能检测到,这里有解决方案
  16. 网站出现iconfont not fount 404错误
  17. AIO,BIO,NIO详解
  18. create connection SQLException, url: jdbc:mysqlAccess denied for user ‘CC‘@‘localhost‘ (using passwo
  19. 《前端》初次使用webpack遇到的问题
  20. 2.6 实战天猫数据爬取

热门文章

  1. java liveness_并发 - 活跃度(Liveness) - 《Java 编程要点(Essential Java)》 - 书栈网 · BookStack...
  2. es6 扩展运算符 三个点(...)
  3. 往年计算机二级在线查询,2012年计算机二级查询
  4. 彻底清除狗太阳的3721病毒完全手册!
  5. 2's complement 与 1's complement
  6. 关于Android studio在ubuntu中真机测试运行出现Gradle build daemon disappeared unexpectedly的一个原因及解决办法
  7. 李宏毅2022机器学习HW4解析
  8. [ERROR] Failed to execute goal org.mortbay.jetty:jetty-maven-plugin:8.1.12.v20130726:run (default-cl
  9. Excel中的透视表和vlookup的用法简单讲解
  10. 英语4级的分数如何计算机,英语四级分数怎么算