【opencv学习笔记一】opencv下载安装与VS2017开发环境配置
本文章摘录自浅墨博客,原文链接http://blog.csdn.net/poem_qianmo/article/details/19809337
目录
1.opencv下载与安装
2.计算机环境变量配置
3.VS目录包含
l 包含目录
l 工程录目录
l 附加依赖项
l 在Windows文件夹下加入OpenCV动态链接库
正文
一、opencv下载与安装
1.下载地址:官网下载地址https://opencv.org/ opencv为开源软件,可直接在官网下载最新版本。
2.软件安装:opencv其实并不需要安装,从官网下载的文件就是一个自解压的文件,所以从其它地方拷贝的解压好的文件夹也是可以用的。以opencv3.4.0版本为例,下载完后得到文件opencv-3.4.0.exe,双击运行该文件,会出现解压路径选择对话框
选择你想要放置的路径即可,点击Extract确定执行。出现下图
等待安装完成即可。
二、计算机环境变量配置
配置方法如下:
【计算机】->【(右键)属性】->【高级系统设置】->【高级】->【环境变量】->“双击”系统变量中的PATH->在变量值里面添加相应的路径。
路径:
对于opencv3.4.0只有64位;所以只要添加;……\opencv\build\x64\vc15\bin
举个栗子:
我的安装目录为D:\Program Files\opencv340所以添加D:\Program Files\opencv340\opencv\build\x64\vc15\bin
其中VC15为VS版本号对应VS2017,其它版本对应关系如下
配置过程如下图:
<1>
<2>
<3>
<4>
三、VS目录包含
之前看过的好多博文都说“每次新建工程都要重新配置”,其实不用这样麻烦的。
首先是在Visual Studio里面新建一个控制台应用程序,最好是勾好空项目那个勾。
<1>打开visual studio,新建window控制台项目,取个名字,比如叫test,然后选好路径,点确定.
<2>在属性管理器中进行一次配置,就相当于进行了通用的配置过程,以后新建的工程就不用再额外的进行重新配置了。
在菜单栏里面点<视图>--<其它窗口><属性管理器>,那么就会在visual studio中多出一个属性管理器工作区来。
<3>在新出现的“属性管理器”工作区中,双击项目->Debug|x64->Microsoft.Cpp.x64.user即可打开属性页面。
<4>打开属性页面后,就是一番配置了。
1.包含目录配置
在【通用属性】 ->【VC++目录】 ->【包含目录】中
添加上
D:\ProgramFiles\opencv340\opencv\build\include
D:\ProgramFiles\opencv340\opencv\build\include\opencv
D:\ProgramFiles\opencv340\opencv\build\include\opencv2 这三个目录。
当然,这是之前把OpenCV解压到D:\Program Files\opencv340\下的情况。实际的路径还要看你自己把OpenCV解压到了哪个目录下,根据你的实际情况来调节。
2.工程库目录配置
在【通用属性】 ->【VC++目录】 ->【库目录】中,
添加上D:\ProgramFiles\opencv340\opencv\build\x64\vc15\lib这个路径。
3.附加依赖项
依然是在“属性管理器”工作区中,双击项目->Debug|x64->Microsoft.Cpp.x64.user即可打开属性页面。【通用属性】 ->【链接器】->【输入】->【附加的依赖项】
对已经发行和未来即将发布的新版OpenCV,只需看opencv\build\x64\vc15\lib下的库是哪几个,添加成依赖项就可以了。
对于【OpenCV 3.4.0】想用debug版本的库,添加
opencv_world340d.lib
而想用release版本的库,添加
opencv_world340.lib
也可以把带d和不带d的两个都添加,这里不建议将两个库都添加到debug依赖项下,因为以后会出现两个同名窗口的现象。所以最好将带d的添加到debug依赖项下,将不带d的添加到release附加依赖项下。
其中的340代表我们的OpenCV版本为3.4.0,若是其他版本的配置则在这里要进行相应的更改。
Debug文件库名有d结尾,Release没有,如 opencv_world340d.lib(debug版本的lib)和opencv_world340.lib(release版本的lib)
4.在Windows文件夹下加入OpenCV动态链接库
如果运行文末的测试程序没有报错这步也可以不做。
这一步是各种介绍OpenCV的配置的相关博文中都没写出来的。根据这些博文配置出来的环境,在运行基于OpenCV的程序的时候,往往会得到这样类似的结果:
这种问题最简单粗暴的方法,是把相关的dll都拷贝到Windows操作系统的目录下。如果你的Windows安装在C盘,那么路径就是c:\Windows\System32。按照之前我的OpenCV的存放环境,这些dll存放在D:\ProgramFiles\opencv340\opencv\build\x64\vc15\bin目录下。
到这个目录下,复制对应dll,然后粘贴到c:\Windows\System32下面,简单粗暴地就完成了。
至此opencv便配置完成了
测试
#include "stdafx.h"
#include<opencv2\core.hpp>
#include<opencv2\highgui.hpp> using namespace cv; int main()
{
Mat img = imread("111.jpg");
namedWindow("hahaha");
imshow("hahaha", img); waitKey(); return ;
}
将图片111.jpg放到项目目录.......\tset1\test1下(与tset1.cpp同一目录),运行程序,可以显示111.jpg图片即OK。
注意:运行时需选择64位编译器
附代码:
#include "stdafx.h"
#include<opencv2\core.hpp>
#include<opencv2\highgui.hpp> using namespace cv; int main()
{
Mat img = imread("111.jpg");
namedWindow("hahaha");
imshow("hahaha", img); waitKey(); return ;
}
【opencv学习笔记一】opencv下载安装与VS2017开发环境配置的更多相关文章
- 学习spring1--跟我一起学Spring 3(2)–开发环境配置
http://www.importnew.com/13185.html#spring 首页 所有文章 资讯 Web 架构 基础技术 书籍 教程 我要投稿 更多频道 » - 导航条 - 首页 所 ...
- OpenCV学习笔记(一)安装及运行第一个OpenCV程序
1.下载及安装 OpenCV是一套开源免费的图形库,主要有C/C++语言编写,官网: http://opencv.org/ .在 http://opencv.org/downloads.html 可以 ...
- selenium学习笔记(selenium下载安装)
博主自己捣鼓的接口框架先到这里 等工作上正式开始使用再后续完善需求 还是继续学习python.学编程就直接动手写 就想看看python+selenium的组合 什么都不多说.先下载安装 博主这里已经安 ...
- python学习笔记(matplotlib下载安装)
最近博主在找工作换新环境.昨天电话面试中问到python中threading模块进行接口性能测试的时候.如何生成性能测试报告 我现在还停留在打印在屏幕中.所以今天想着是否可以生成相应的性能测试报告 首 ...
- python学习笔记(virtualenv下载安装)
之前博客评论中有人建议我面对多个python版本的情况.可以使用virtualenv这个python虚拟沙盒 首页是利用pip下载.关于pip如何下载安装前面的博客中已经提到就不细说 cmd直接进入p ...
- 吴裕雄--天生自然python学习笔记:python下载安装各种模块的whl文件网址
python下载安装各种模块的whl文件网址:https://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml
- ROS学习笔记八:基于Qt搭建ROS开发环境
1 前言 本文介绍一种Qt下进行ROS开发的完美方案,使用的是ros-industrial的Levi-Armstrong在2015年12月开发的一个Qt插件ros_qtc_plugin,这个插件使得Q ...
- cocos2d-x 2.1.4学习笔记01:windows平台搭建cocos2d-x开发环境
cocos2d-x的大致开发流程是,首先使用win32版进行代码编写并完成游戏,然后将代码迁移到对应的开发环境上进行交叉编译完成游戏打包,如iphone上是mac+xcode,android是ecli ...
- 【Cocos2d-X开发学习笔记】第01期:PC开发环境的详细搭建
本文使用的是cocos2d-x-2.1.4版本 ,截至目前为止是最新稳定版 所谓的开发环境就是制作游戏的地方,打个比方读者就会十分清楚了.比如提到做饭,人们都会想到厨房.这是 因为厨房有炉灶.烟机.水 ...
随机推荐
- C#中图片.BYTE[]和base64string的转换
在C#中 图片到byte[]再到base64string的转换: Bitmap bmp = new Bitmap(filepath); MemoryStream ms = ...
- ViewPager总结
https://github.com/youth5201314/banner compile 'com.youth.banner:banner:1.4.9' private void setBanne ...
- 网卡配置bond
在实际的生产环境中,服务器都需要配置bond环境的,以提高安全性及均衡能力.我公司网卡配置的是mode=1 类型,mode=1 是主备模式,当其中一块网卡不能工作时,另一块网卡立即代替.以下是mode ...
- Django Web开发指南笔记
Django Web开发指南笔记 语句VS表达式 python代码由表达式和语句组成,由解释器负责执行. 主要区别:表达式是一个值,它的结果一定是一个python对象:如:12,1+2,int('12 ...
- 九度OJ 1179:阶乘 (循环)
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:5149 解决:1523 题目描述: 输入n, 求y1=1!+3!+...m!(m是小于等于n的最大奇数) y2=2!+4!+...p!(p是 ...
- AWS:1.相关概念、创建云主机的过程
概念 EC2是弹性的云计算 云主机 也即虚拟机,由分配的CPU.内存.网络和磁盘等资源组成 好处:维护成本低(主机替换).环境升级成本低 AMI:映像 创建云主机的蓝图,指定初始状态1 预装什么操作系 ...
- 高德地图API开发二三事(一)如何判断点是否在折线上及引申思考
最近使用高德地图 JavaScript API 开发地图应用,提炼了不少心得,故写点博文,做个系列总结一下,希望能帮助到LBS开发同胞们. 项目客户端使用高德地图 JavaScript API,主要业 ...
- 【题解】UVA10140 [Prime Distance]
[题解]UVA10140 Prime Distance 哈哈哈哈\(miller-rabbin\)水过去了哈哈哈 还能怎么办呢?\(miller-rabbin\)直接搞.枚举即可,还跑得飞快. 当然此 ...
- DB Migrations更新数据库命令
在项目迭代的过程中,数据库结构常常需要跟随业务需求的变化做出调整,尤其在迭代的初期阶段,加一个字段减一个字段的需求更是家常便饭.在小型团队中,往往是负责开发功能模块的程序员在完成本地开发环境数据库的变 ...
- Swift 烧脑体操(四) - map 和 flatMap
前言 Swift 其实比 Objective-C 复杂很多,相对于出生于上世纪 80 年代的 Objective-C 来说,Swift 融入了大量新特性.这也使得我们学习掌握这门语言变得相对来说更加困 ...