OpenCV入门:(一:安装与配置)
看到的不是自己的,只有写下来的才是自己的,上次接触OpenCV实在三个月前,亢奋的看完了OpenCV自带的入门文档,觉得对图形处理有了一点点了解,现在三个月过去了,由于学习需要,想深入了解OpenCV,发现之前学过的知识在脑袋里零零散散的,所以想重读入门文档,同时将其记录下来。部分内容我会根据自己的理解选择性的记录,如对原理不理解,建议阅读官方文档。
开发环境VS2010+Win7x64。当前VS2010支持的最新的OpenCV是opencv-2.4.11。从官方网站下载。
1.安装
打开exe,选择一个目录即可将已编译好的OpenCV库和其源代码解压出来,笔者解压目录E:\openlib。若需要自行编译源码,请查看官网说明。
2.设置环境变量
为了开发软件和移植工程过程中更加方便,添加OPENCV_DIR环境变量。
(添加方法:计算机--属性--高级--环境变量--系统变量)
VS2010+32位系统 OPENCV_DIR E:\openlib\OpenCV\Build\x86\vc10
VS2010+64位系统 OPENCV_DIR E:\openlib\OpenCV\Build\x64\vc10
VS2012+32位系统 OPENCV_DIR E:\openlib\OpenCV\Build\x86\vc11
VS2012+64位系统 OPENCV_DIR E:\openlib\OpenCV\Build\x64\vc11
在path中增加 ;%OPENCV_DIR%\bin
3.VS2010环境配置(VS2012类似)
新建控制台工程
编辑属性表属性,在C/C++--常规--附加包含目录中添加 $(OPENCV_DIR)\..\..\include
连接器--常规--附加库目录中添加 $(OPENCV_DIR)\lib
链接器--常规--附加依赖项中添加
opencv_calib3d2411d.lib
opencv_contrib2411d.lib
opencv_core2411d.lib
opencv_features2d2411d.lib
opencv_flann2411d.lib
opencv_gpu2411d.lib
opencv_highgui2411d.lib
opencv_imgproc2411d.lib
opencv_legacy2411d.lib
opencv_ml2411d.lib
opencv_nonfree2411d.lib
opencv_objdetect2411d.lib
opencv_ocl2411d.lib
opencv_photo2411d.lib
opencv_stitching2411d.lib
opencv_superres2411d.lib
opencv_ts2411d.lib
opencv_video2411d.lib
opencv_videostab2411d.lib
其中2411代表当前版本号,d代表当前为调试版本。
Release配置中同样添加一个属性表。重复以上步骤。链接库如下:
opencv_calib3d2411.lib
opencv_contrib2411.lib
opencv_core2411.lib
opencv_features2d2411.lib
opencv_flann2411.lib
opencv_gpu2411.lib
opencv_highgui2411.lib
opencv_imgproc2411.lib
opencv_legacy2411.lib
opencv_ml2411.lib
opencv_nonfree2411.lib
opencv_objdetect2411.lib
opencv_ocl2411.lib
opencv_photo2411.lib
opencv_stitching2411.lib
opencv_superres2411.lib
opencv_ts2411.lib
opencv_video2411.lib
opencv_videostab2411.lib
4.测试环境
cpp文件中粘贴如下代码
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <iostream> using namespace cv;
using namespace std; int main( int argc, char** argv )
{
Mat image;
// 打开当前目录下的lena.jpg文件
image = imread("lena.jpg", IMREAD_COLOR); if(! image.data ) // 打开是否成功
{
cout << "Could not open or find the image" << std::endl ;
return -;
}
//创建一个窗口用来显示图片
namedWindow( "Display window", WINDOW_AUTOSIZE );
//显示窗口
imshow( "Display window", image );
//等待用户按键
waitKey();
return ;
}
当前目录下放入图片名为lena.jpg,运行程序,显示成功图片即配置成功。
5.属性表说明
为什么需要添加属性表?添加属性表的好处是属性表可以通用的,以后的项目如果需要使用OpenCV库,则可以直接添加现有属性表,完成OpenCV的配置。
本文结束。
OpenCV入门:(一:安装与配置)的更多相关文章
- OpenCV 第一课(安装与配置)
OpenCV 第一课(安装与配置) win10,opencv-2.4.13, 安装, vs2013, 配置 下载安装软件 官网OpenCV下载地址下载最新版本,我下载的是opencv.2.4.13,然 ...
- Redis入门 -- Redis安装与配置
Redis入门 -- Redis安装与配置 Redis的安装 Redis的安装,我这里使用的是虚拟机. 为了让主机和虚拟机之间可以顺利通信,按照以下步骤进行: 1. 将网络连接模式改为桥接 2. re ...
- Redis快速入门:安装、配置和操作
本文是有关Redis的系列技术文章之一.在之前的文章中介绍了<Redis快速入门:初识Redis>,对Redis有了一个初步的了解.今天继续为大家介绍Redis如何安装.配置和操作. 系列 ...
- OpenCV(c++)-1 安装和配置OpenCV4.4(Windows+visual studio 2019)
@ 目录 安装OpenCV4 在Windows系统安装OpenCV4 配置visual studio 2019 配置包含路径 验证配置结果 安装OpenCV4 OpenCV是一个基于BSD许可(开源) ...
- MongoDB一:入门(安装与配置)
一.简介 MongoDB 是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. mongoDB MongoDB 是一个介于关系数据库和非关系数据库 ...
- 学习MongoDB 一:MongoDB 入门(安装与配置)
一.简介 MongoDB一种非关系型数据库(NoSql),是一种强大.灵活.可扩展的数据存储方式,因为MongoDB是文档模型,自由灵活很高,可以让你在开发过程中畅顺无比,对于大数据量.高并发.弱事务 ...
- jenkins入门-----(1)安装、配置
Jenkins概念 Jenkins是一个开源的.可扩展的持续集成.交付.部署(软件/代码的编译.打包.部署)的基于web界面的平台.允许持续集成和持续交付项目,无论用的是什么平台,可以处理任何类型的构 ...
- RabbitMQ入门教程——安装及配置
RabbitMQ是一个消息代理,一个消息系统的媒介,提供了一个通用的消息发送及接收平台,并且能够保障消息传输过程中的安全.使用erlang语言开发,开源,在易用性.扩展性.高可用性等方面表现不俗 技术 ...
- Ansible 入门 (1) - 安装和配置
本文参考 <Ansible 自动化运维和最佳实践>,这两天刚读这本书,写写总结.主控机环境是 centos 7,被控机均是 centos 6.8 . 确保 python 版本大于 2.6 ...
- pytorch入门之安装和配置
pytorch是一种python接口的深度学习框架,其他的框架还有caffe,tensorflow等等. 1,pytorch目前支持linux和OSX两种系统.支持的Python版本有2.7,3.5, ...
随机推荐
- [转]关于VC++ MFC中的空闲Idle处理机制!
关键词: 先根据空闲标志以及消息队列是否为空这两个条件判断当前线程是否处于空闲状态(这个“空闲”的含义同操作系统的含义不同,是MFC自己所谓的“空闲”),如果是,就调用CWinThread::OnId ...
- 【洛谷P3853】 [TJOI2007]路标设置
路标设置 题目链接 此题和跳石头很相似,都是二分答案,模拟判断是否可行 #include<iostream> #include<cstdio> using namespace ...
- JavaScript闭包简单学习
因为实验室项目要用,所以最近在学习OpenLayers,但是从来没有做过前端呀,坑爹的,硬着头皮上吧 反正正好借这个机会学习一下JS,本来对这门语言也挺感兴趣的,多多少少写过一下JS代码了,差不多学一 ...
- AngularJS 四 服务
AngularJS服务: API: https://docs.angularjs.org/api/ng/service 下面只会介绍几种,需要的话可以去官网查看 AngularJS服务 ...
- Access用OleDbParameter更新/插入数据
/// <summary> /// 更新一条数据 /// </summary> public void Update(ZPY.Model.News model) { Strin ...
- 前端 new和instanceof JavaScript
new和instanceof的内部机制 new 代码例子 var Func=function(){ }; var func=new Func (); new共经过4个阶段 1.创建一个空对象 var ...
- 互联网高级Java面试总结
前不久刚换了单位,这段时间抽出时间来总结一下. 本人渣本毕业四年,无大厂工作经验,出来面高级Java. 上家单位是一个知名互联网平台,但是体量不大的小公司(5线互联网公司),但就是出名(职场人都知道~ ...
- 轻量ORM-SqlRepoEx (三)Select语句
一.示例用数据库为Northwind数据库,可在百度网盘下载 https://pan.baidu.com/s/1er0Mm48kUfeAsYkSW6DfnA 密码:r7pm 二.如何初始化SqlRep ...
- NPOI操作excel(通过获取批注信息给excel动态赋值)
private string fileName = null; //文件名 private IWorkbook workbook = null; private FileStream fs = nul ...
- pl sql 存储过程、函数
存储过程用于执行特定的操作,当建立存储过程时,既可以指定输入参数(in),也可以指定输出参数(out),通过在过程中使用输入参数,可以将数据传递到执行部分:通过使用输出参数,可以将执行部分的数据传递到 ...