【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版本 ,截至目前为止是最新稳定版 所谓的开发环境就是制作游戏的地方,打个比方读者就会十分清楚了.比如提到做饭,人们都会想到厨房.这是 因为厨房有炉灶.烟机.水 ...
随机推荐
- 多文档自己主动文摘:Multi-Document Summarization,MDS
- 【BZOJ1222】[HNOI2001]产品加工 DP
[BZOJ1222][HNOI2001]产品加工 Description 某加工厂有A.B两台机器,来加工的产品可以由其中任何一台机器完成,或者两台机器共同完成.由于受到机器性能和产品特性的限制,不同 ...
- 基于live555实现的RTSPServer对底层进行性能优化的方法
在博客<EasyIPCamera高性能摄像机RTSP服务器RTSPServer解决方案>我介绍了基于live555实现的一套RTSPServer功能组件,当时开发者经过几个月的调试,已经将 ...
- Linux下监视GPU、CPU的使用情况
1.在运行Tensorflow等程序时会使用到NVIDIA的GPU,所以在程序运行时需要监控GPU的运行情况 使用 nvidia-smi 命令 ,显示如下: nvidia-smi 显示解读: GPU: ...
- java参数传递------真心是值传递
未完待续 不同意的请尽管去深入看一下. 对象是引用传递没错,参数传递是值传递.
- empty blank
非nil对象才能调用 empty nil: 对象是否存在empty: ”“ []blank: nil emptypresent: ! blank
- 解决/usr/bin/ld: cannot find -lmysqlclient错误
类似/usr/bin/ld: cannot find -xxxx的错误有很多, 首先我们可以最简单的判断一下: 这类情况一般是由于缺乏某某库文件, 又或者可能是由于已存在的库问题版本不对造成的 一般都 ...
- camera报错经典问题
--- 33u>: error: undefined reference to 'NSFeature::RAWSensorInfo<22133u>::impGetDefaultDat ...
- HDU 2138 How many prime numbers(Miller_Rabin法判断素数 【*模板】 用到了快速幂算法 )
How many prime numbers Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/O ...
- BZOJ 1198 [HNOI2006]军机调度:dfs
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1198 题意: 有n个雇佣军,m个任务. 第i个雇佣军能够参加cnt个任务,分别为temp[ ...