OpenCV学习笔记(一) 环境配置
Visual Studio 2010
VS2010对应的OpenCV的lib文件(build\x86\vc10\lib)分为debug模式和release模式两种:debug模式牺牲速度,但能提供更多信息,例如内存是否泄漏,函数调用是否正确等;release模式不执行这些检查来提高速度。
首先在系统path变量中添加dll文件的路径:
C:\ProgramFiles\opencv249\build\x86\vc12\bin
在Visual Studio中新建一个项目,打开“视图->属性管理器”,在“Debug|Win32”中右键->“添加新项目属性表”(可命名为OpenCVProjectD.props),修改:
- “VC++目录”下的可执行文件目录、包含目录、库目录
- “链接器->输入->附加依赖项”,添加结尾为d的所有lib
可执行文件目录:
C:\ProgramFiles\opencv249\build\x86\vc12\bin包含目录:
C:\ProgramFiles\opencv249\build\include
C:\ProgramFiles\opencv249\build\include\opencv
C:\ProgramFiles\opencv249\build\include\opencv2库目录:
C:\ProgramFiles\opencv249\build\x86\vc12\lib附加依赖项:
opencv_calib3d249d.lib
opencv_contrib249d.lib
opencv_core249d.lib
opencv_features2d249d.lib
opencv_flann249d.lib
opencv_gpu249d.lib
opencv_highgui249d.lib
opencv_imgproc249d.lib
opencv_legacy249d.lib
opencv_ml249d.lib
opencv_nonfree249d.lib
opencv_objdetect249d.lib
opencv_ocl249d.lib
opencv_photo249d.lib
opencv_stitching249d.lib
opencv_superres249d.lib
opencv_ts249d.lib
opencv_video249d.lib
opencv_videostab249d.lib
Release|Win32中新建属性表OpenCVProjectR.props,操作类似,仅在附加依赖项中添加不带d的lib文件。
opencv_calib3d249.lib
opencv_contrib249.lib
opencv_core249.lib
opencv_features2d249.lib
opencv_flann249.lib
opencv_gpu249.lib
opencv_highgui249.lib
opencv_imgproc249.lib
opencv_legacy249.lib
opencv_ml249.lib
opencv_nonfree249.lib
opencv_objdetect249.lib
opencv_ocl249.lib
opencv_photo249.lib
opencv_stitching249.lib
opencv_superres249.lib
opencv_ts249.lib
opencv_video249.lib
opencv_videostab249.lib
按照这种方法配置会产生两个XML文件,之后再创建OpenCV项目时,只需将这两个文件导入该项目的属性管理器即可。
注意,OpenCV中文论坛上直接修改Microsoft.Cpp.Win32.user属性的方法不可取。这个文件在Debug和Release模式下是共用的,即Debug模式和Release模式共用所有lib,会导致一些错误,例如在Release模式下的imread函数无法运行。
Qt 5
Qt项目中的.pro文件添加以下代码:
INCLUDEPATH += D:\opencv\opencv\build\include\
INCLUDEPATH += D:\opencv\opencv\build\include\opencv\
INCLUDEPATH += D:\opencv\opencv\build\include\opencv2\ CONFIG(debug,debug|release) {
LIBS += -LD:\opencv\opencv\build\x86\vc10\lib \
-lopencv_core244d \
-lopencv_highgui244d \
-lopencv_imgproc244d \
-lopencv_features2d244d \
-lopencv_calib3d244d
} else {
LIBS += -LD:\opencv\opencv\build\x86\vc10\lib \
-lopencv_core244 \
-lopencv_highgui244 \
-lopencv_imgproc244 \
-lopencv_features2d244 \
-lopencv_calib3d244
}
P.S.
在实际运行中遇到错误:
- 转换到COFF期间失败:网上查找的解决方案是在微软上下载SP对MSVS2010进行升级
- cl.exe:工具->选项->构建和运行,取消“使用jom代替nmake”
OpenCV学习笔记(一) 环境配置的更多相关文章
- Qt5学习笔记(1)-环境配置(win+64bit+VS2013)
Qt5学习笔记(1)-环境配置 工欲善其事必先-不装-所以装软件 久不露面,赶紧打下酱油. 下载 地址:http://download.qt.io/ 这个小网页就可以下载到跟Qt有关的几乎所有大部分东 ...
- 【lua学习笔记】——环境配置
1 开发平台 windows7 64位 2 下载链接 http://www.lua.org/download.html 3 安装完成-环境配置 4 运行 WIN+R 运行 cmd 运行lua,显示配 ...
- 学习笔记-ionic3 环境配置搭建到打包
折腾了两周总算理清楚了,参考的链接如下: https://blog.csdn.net/zeternityyt/article/details/79655150 环境配置 https://segmen ...
- OpenGL 学习笔记 01 环境配置
以下教程仅适用于Mac下的Xcode编程环境!其他的我也不会搞. 推荐教程:opengl-tutorial 本项目Github网址 OpenGL太可怕了...必需得把学的记下来,不然绝壁 ...
- Maven 学习笔记——Maven环境配置(1)
在学习Selenium的过程中,接触到了Maven(项目管理工具),不至于学一路忘一路,左耳朵进右耳多出,还是决定边学边记录,毕竟听的不如 看的,看的不如写的吗.首先学一样东西,肯定得明确学的是什么, ...
- WP8 学习笔记(001_环境配置)
Step 1 WP8 的开发要求64位操作系统,Windows 8及以上版本,需要激活版,建议网上买一个注册码.详见安装双系统. Step 2 安装好系统并已经激活之后,需要安装Windows Ph ...
- tensorflow学习笔记(1)-环境配置
配置环境anaconda3+windows10+pycharm+python==3.5.2+tensorflow==1.1.4+cuda10.0+cudnn7 https://www.anaconda ...
- 学习笔记----php环境配置
Php开发环境自定义搭建 (万事开头难) 第一步:Apache安装(httpd-2.4.37-win64-VC15.zip) 下载已编译apache安装包:Apachelounge官方下载地址:htt ...
- 《基于Nginx的中间件架构》学习笔记---1.环境配置
一.环境调试确认 (四项确认) 1.确认系统网络 ping www.baidu.com 2.确认yum可用 yum list|grep gcc 3.确认关闭iptables规则 iptables -L ...
- JAVA学习笔记1——环境配置
·JDK 发展史 1995 java语言诞生 1996 JDK1.0发布 1997 JDK1.1发布 1998 JDK1.2发布(Java2),JFC/Swing技术发布 1999 Java被分成了J ...
随机推荐
- 【踩坑】socket.io服务器不能访问
今天在单机测试socket.io服务器时一切正常,但用jar包的方式部署在服务器时发现客户端无法连接. 于是做了一系列排查,如检查端口是否在占用,防火墙有没有开放该端口,阿里云终端是否有开放安全组,本 ...
- instancetype和id的区别,objective-c
instancetype clang 3.5 提供的关键字, 表示:某方法返回未知类型的OC对象 都知道id任意类型关键字,为什么还会出现一个新的关键字? 返回关联类型 1.类方法中,alloc ...
- 从零开始的全栈工程师——js篇2.8
DOM(document object model) DOM主要研究htmll中的节点(也就是标签) 对节点进行操作 可以改变标签 改变标签属性 改变css样式 添加事件 一.操作流程 1 ...
- click事件的累加绑定
click事件的累加绑定,绑定一次点击事件,执行多次. 在页面中为一个元素绑定事件,事件执行后页面未刷新且元素还在,然后你再次点击,元素又被绑定一个点击事件,这样第二次点击就会执行两次,以此类推. 如 ...
- 常用的Homebrew命令
一些常用的Homebrew命令: 更新:brew update 安装包信息检索:brew info 安装包搜索:brew search foo 安装包列表:brew list 过时信息:brew ou ...
- Eucalyptus-NC管理
1.前言 Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems (Eucalyptus) ...
- font:inherit
font:inherit 字体的设置 设置所有元素的字体保持一致: 所有元素:*{font:inherit;} /* IE8+ */ body体用percent:body{font:100%/1 sa ...
- hihocoder第三十六周 二分查找
题目链接:http://hihocoder.com/contest/hiho36/problem/1 , 一个比较简单的二分. 算法: 由于数据量比较大,O(nlogn)无法通过,所以不能先排序再查找 ...
- POJ 3233 Matrix Power Series (矩阵分块,递推)
矩阵乘法是可以分块的,而且幂的和也是具有线性的. 不难得到 Si = Si-1+A*Ai-1,Ai = A*Ai-1.然后矩阵快速幂就可以了. /*************************** ...
- 2017.12.20 Java中的 IO/XML学习总结 File类详细
IO / XML 一.File类 1.定义/概念 Java是面向对象的语言,要想把数据存到文件中,就必须要有一个对象表示这个文件.File类的作用就是代表一个特定的文件或目录,并提供了若干方法对这些文 ...