VS2015+Windows 10下配置opencv3.0
博客园样式换了,原先的文章排版太乱了,新发一篇
0. 安装 opencv 3.0
首先去官网下载安装包(其实是个压缩包),释放到随便的一个路径里面为了方便描述,下面把这个路径称为 cvPath。
然后以管理员权限运行命令行,执行下面的命令:
setx -m OPENCV_DIR cvPath\build\x64\vc12
setx -m OPENCV_DIR cvPath\build\x86\vc12
1. 添加系统环境变量
桌面-此电脑-右键-属性-高级系统设置-环境变量
在 系统环境 List 中选择 Path,单击 编辑
添加下面的路径:
OPENCV_DIR\bin
重启电脑,使系统变量生效
2. 配置 VS2015
新建一个 C++ 的控制台项目
视图-属性管理器-展开你的项目-选择 Debug|Win32-右键-新建新项目属性表
建立好新的属性表后打开它,分别设置以下的项目:
- 通用属性
- C/C++
如果没有出现这个选项卡请向项目中添加一个 C/C++ 源文件常规
附加包含目录:$(OPENCV_DIR)\..\..\include
- 链接器
常规
附加库目录:$(OPENCV_DIR)\lib
输入
附加依赖项:opencv_ts300d.lib
opencv_world300d.lib
可以根据需要添加其他的库,以“d”结尾的库是在 debug 模式中使用的,opencv库的命名规则是
opencv_(The Name of the module)(The version Number of the library you use)d.lib
- C/C++
完成上面的设置后就可以保存了,这个属性表文件保存在项目的根目录中,如果要在其他的项目中使用 opencv 也可以使用以上方法,唯一的不同是之后的项目可以直接添加现有属性表。
3. Have fun!
#include <opencv2/core.hpp>
#include <opencv2/imgcodecs.hpp>
#include <opencv2/highgui.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main( int argc, char** argv )
{
if( argc != 2)
{
cout <<" Usage: display_image ImageToLoadAndDisplay" << endl;
return -1;
}
Mat image;
image = imread(argv[1], IMREAD_COLOR); // Read the file
if( image.empty() ) // Check for invalid input
{
cout << "Could not open or find the image" << std::endl ;
return -1;
}
namedWindow( "Display window", WINDOW_AUTOSIZE ); // Create a window for display.
imshow( "Display window", image ); // Show our image inside it.
waitKey(0); // Wait for a keystroke in the window
return 0;
}
这个小程序使用命令行参数运行,参数是一个图片文件的路径。
4. Naive!
哈哈哈哈,你以为这么容易就可以直接运行吗?你们啊,too young too simple,sometimes naive!
VS2015的编译器版本是 vc14 ,然后你是不是发觉了一些问题?
opencv 3.0 的使用的是 vc12 编译的,所以VS2015在编译你的程序的时候会使用更高级的库,这导致程序出错。
解决方法是把下面的两个文件放到cvPath\build\x86\vc12\bin里面。
http://pan.baidu.com/s/1hqF8nlU
然后,完美运行。
5.一些疑问
- 在 Nuget 中也有 opencv 包可以下载供 C++ 使用,从这里面下载的 opencv 要如何在程序中调用呢?
- opencv 只能在 x86 平台使用吗?因为我尝试生成 x64 的时候会提示模块计算机类型与目标计算机类型冲突。
- vc12 跟 vc14 到底是什么东西?我在上面是猜的。
参考文章:
OpenCV3.0.0+win10 64位+vs2015环境的下载,安装,配置与属性表的生成
Vs2015+opencv2.4.10出现msvcp120d.dll丢失 opencv2410.props
How to build applications with OpenCV inside the Microsoft Visual Studio
Installation in Windows
VS2015+Windows 10下配置opencv3.0的更多相关文章
- Windows 10 下ASP.NET4.0尚未在Web服务器上注册
系统换成Win10后,打开VS2012出现如下问题: 网上查找了,大部分都是 C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319 并管理员运行aspnet_ ...
- windows 10 下配置安装node.js
环境配置 node.js windows10 25.5k 次阅读 · 读完需要 6 分钟 5 在去年就自己配置安装过node.js,但是使用npm安装模块时安装成功后调用require('mo ...
- PHP-5.5.10+Apache httpd-2.4.9在Windows系统下配置实战
原文 PHP-5.5.10+Apache httpd-2.4.9在Windows系统下配置实战 环境配置: 程序准备: PHP windows版本下载地址: http://windows.php. ...
- 【Flutter 1-2】在 Windows 10下安装Flutter+Dart+Android Studio 配置Flutter开发环境
在 Windows 10下安装Flutter+Dart+Android Studio 配置Flutter开发环境 文章首发地址 配置环境变量 由于部分网站被墙的原因,我们需要先配置Flutter国内镜 ...
- (4)Linux(ubuntu)下配置Opencv3.1.0开发环境的详细步骤
Ubuntu下配置opencv3.1.0开发环境 1.最近工作上用到在Ubuntu下基于QT和opencv库开发应用软件(计算机视觉处理方面),特把opencv的配置过程详细记录,以供分享 2.步骤说 ...
- Mac下安装OpenCV3.0和Anaconda和环境变量设置
入手Mac几天了,想在Mac OS下玩玩OpenCV和keras,间歇捣鼓了两天,终于搞定zsh.OpenCV3.0以及Anaconda.OpenCV3.0刚发布不久,这方面的资料也不是很多,能够查到 ...
- Windows 10下mysql 64位 安装(mysql-5.7.11-winx64安装)
Windows下mysql 64位 安装(mysql-5.7.11-winx64安装) 系统Windows10 安装包mysql-5.7.11-winx64.zip 安装过程中遇到的问题,请留意4.0 ...
- 基于TDengine-ver-1.6.4.4在windows 10下cmake+msys2编译(windows cgo 使用)
目录 基于TDengine-ver-1.6.4.4在windows 10下cmake+msys2编译(windows cgo 使用) 背景 下载地址 仓库地址 安装部署 msys2 安装 配置环境变量 ...
- 【经验之谈】Windows环境下配置WordPress
前言 wordpress全球著名的开放博客平台,拥有成千上万个各式插件和不计其数的主题模板样式,使用php和mysql搭建,下面说下载windows环境下配置wordpress,经验之谈. 安装 关于 ...
随机推荐
- 转:python webdriver API 之 获取对象的属性
获取测试对象的属性能够帮我们更好的进行对象的定位.比如页面上有很多标签为 input 元素,而我们需要定位其中 1 个有具有 data-node 属性不一样的元素.由于 webdriver 是不支持直 ...
- ASP.NET的一般处理程序对图片文件的基本操作
以一个小项目为例: 验证码: public class VerifyCodeHelper { public VerifyCodeHelper() { this.ran = new Random(); ...
- 构造方法特点,void
构造方法特点: 1.和类有相同的名字 2.无返回值 3.被默认强制void void作用:====>>说明声明的方法没有返回值 构造方法作用: -->初始化实例属性 -->用于 ...
- mysql bin log日志
装mysql,运行一段时间后,在mysql目录下出现一堆类似mysql-bin.000***,从mysql-bin.000001开始一直排列下来,而且占用了大量硬盘空间,高达几十个G. 对于这些超大空 ...
- 南阳oj27题
水池数目 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 南阳理工学院校园里有一些小河和一些湖泊,现在,我们把它们通一看成水池,假设有一张我们学校的某处的地图,这个地图上 ...
- 转:V$SQL,V$SQLAREA,V$SQLTEXT
V$SQL*表用于查看Shared SQL Area中SQL情况 V$SQLTEXT V$SQLTEXT用途很简单,就是用来查看完整的SQL语句,V$SQL和V$SQLAREA只能显示1000 byt ...
- PHP商品秒杀倒计时
<?php //php的时间是以秒算.js的时间以毫秒算 date_default_timezone_set('PRC'); //date_default_timezone_set(" ...
- Swift标示符以及关键字
任何一种计算机语言都离不开标识符和关键字,下面我们将详细介绍Swift标识符和关键字. 标示符 程序员对程序中的各个元素加以命名时使用的命名记号称为标识符,如:变量名.类名.方法名等.构成标识符的字母 ...
- XMl的解析简单的方法
首先需要jia包 xstream-1.4.7.jar Vo类 package com.zld.day06_03zk3demo.bean; import java.io.Serializable; im ...
- socket的简单通信
///客户端 package com.ch.day11_myclient; import java.io.BufferedReader;import java.io.IOException;impor ...