一、介绍

  工欲善其事必先利其器,首先当然是配置环境安装软件啦。 
  我安装的vs2012+opencv2.48以及opencv3.0。具体安装步骤按照浅墨大神的博客进行即可:http://blog.csdn.net/poem_qianmo/article/details/19809337

  二、测试程序+示例程序

#include<opencv2/opencv.hpp>
using namespace cv;
using namespace std; void main()
{
cout << CV_VERSION << endl;
Mat src = imread("E://1.jpg");
imshow("img", src);
waitKey();//暂停按键等待
}
 #include<opencv2/opencv.hpp>//opencv简单程序标配头文件
using namespace cv;//使用cv命名空间 void main()
{
Mat src=imread("1.jpg");//读取图片,要提前将图片放在程序路径下
cvtColor(src,src,CV_BGR2GRAY);//转为灰度图
namedWindow("img");
imshow("img",src);
imwrite("E://1.bmp",src);//保存结果图片
waitKey();//暂停按键等待
}

  三、其他

  • 命名空间

    opencv中的C++类和函数都是定义在命名空间cv之内的,所以有如下opencv函数的两种调用方法: 
    ex1: 
    Mat srcImg = cv::imread(“1.jpg”); 
    ex2: 
    using namespace cv; 
    Mat srcImg = imread(“1.jpg”);

  • namedWindow()函数

    用法:namedWindow(“img”,x); 
    x=WINDOW_AUTOSIZE:用户不能手动改变窗口大小,默认为此 
    x=WINDOW_Normal:用户可以手动改变窗口大小 
    x=WINDOW_OpenGL:支持openGL

  • waitKey()函数

    int waitKey(int delay = 0); 
    1 )第一个参数,如果delay>0, 表示等待delay毫秒之后结束 
    如果delay=0, 表示无限等待,直到有按键按下结束 
    2)返回值为对应按下按键的ASCII码值,如Esc的ASCII码为27

opencv学习之路(1)、示例程序的更多相关文章

  1. opencv学习之路(32)、角点检测

    一.角点检测的相关概念 二.Harris角点检测——cornerHarris() 参考网址: http://www.cnblogs.com/ronny/p/4009425.html #include ...

  2. opencv学习之路(31)、GrabCut & FloodFill图像分割

    一.GrabCut 1.利用Rect做分割 #include "opencv2/opencv.hpp" using namespace cv; void main() { Mat ...

  3. opencv学习之路(2)、读取视频,读取摄像头

    一.介绍 视频读取本质上就是读取图像,因为视频是由一帧一帧图像组成的.1秒24帧基本就能流畅的读取视频了. ①读取视频有两种方法: A. VideoCapture cap; cap.open(“1.a ...

  4. luluzero的angularJs学习之路_angularJs示例代码

    最近开始自学 angularJs这个前端MVC框架,感觉在前端实现MVC很酷有木有.哈哈哈... 先说说我对前端MVC的一个基本的理解吧(刚开始学习接触得还比较浅显,理解可能会有些不到位,还请各位大神 ...

  5. opencv学习之路(41)、人脸识别

    一.人脸检测并采集个人图像 //take_photo.cpp #include<opencv2/opencv.hpp> using namespace cv; using namespac ...

  6. opencv学习之路(30)、分水岭算法及图像修补

    一.简介 二.分水岭算法 #include "opencv2/opencv.hpp" using namespace cv; void main() { Mat srcImg = ...

  7. opencv学习之路(24)、轮廓查找与绘制(三)——凸包

    一.简介 二.绘制点集的凸包 #include<opencv2/opencv.hpp> using namespace cv; void main() { //---绘制点集的凸包 Mat ...

  8. OpenCV 学习之路(2) -- 操作像素

    本节内容: 访问像素值 用指针扫描图像 用迭代器扫描图像 编写高效的图像扫描循环 扫描图像并访问相邻像素 实现简单的图像运算 图像重映射 访问像素值 准备工作: 创建一个简单函数,用它在图像中加入椒盐 ...

  9. Opencv学习之路—Opencv下基于HOG特征的KNN算法分类训练

    在计算机视觉研究当中,HOG算法和LBP算法算是基础算法,但是却十分重要.后期很多图像特征提取的算法都是基于HOG和LBP,所以了解和掌握HOG,是学习计算机视觉的前提和基础. HOG算法的原理很多资 ...

随机推荐

  1. iOS 开发笔记-加载/初始化

    ViewDidLoad 一般我们会在这里做界面上的初始化操作,比如往view中添加一些子视图.从数据库或者网络加载模型数据装配到子视图中 在自定义控制里 initWithFrame:一般用于添加控件, ...

  2. android怎么抓取双向认证https的包

    这里仅提供思路. 第一种方法: dex层面,可以直接用插日志方法,找到app使用的https库,这里以某app为例,使用okhttp, okhttp收发包相关代码: Request request = ...

  3. 从零开始一起学习SLAM | C++新特性要不要学?

    LAM,C++编程是必备技能.不过,大家在学校里学习的书本一般比较老,主要还是C++98那些老一套. 本文所谓的C++新特性是指C++11及其以后的C++14.C++17增加的新关键字和新语法特性.其 ...

  4. java多线程小题一瞥

    有如下线程类定义: public class MyThread extends Thread { private static int num = 0; public MyThread() { num ...

  5. C# 深拷贝和浅拷贝

    在编码中.经常会遇到赋值操作.值类型就不说了.如果是引用类型赋值.其实是引用传递,即赋值的是一个引用.比如: Person p1 = new Person("张三", " ...

  6. unity3d-游戏实战突出重围,第一天

           此游戏是根据书上一步一步敲的.是一个入门级别的游戏.         游戏状态机 说到游戏状态机,就不得不提到开发中最常用的MVC模式. MVC模式的全称是Model-View-Cont ...

  7. Oracle 10g使用amdu抽取数据文件

    环境:OEL 5.7 + Oracle 10.2.0.5 RAC 需求:实验在Oracle 10g环境使用amdu抽取数据库文件 本文主要目的是介绍3个知识点: 1.使amdu可以在oracle 10 ...

  8. css抖动动画

    button{ animation: beat 6s ease 0s infinite normal; } @keyframes beat { 0% { transform: translateY(0 ...

  9. 前端forEach在Array、map、set中的使用,weakset,weakmap

    数组: var s = ['a','b','c']; s.forEach(function(ele,index,array){ console.log(ele); }); Map: var map = ...

  10. python 正则基本方法

    2017-04-11 学习python,免不了应对爬虫,初学爬虫最难理解的就是正则表达式. 比如我们要爬去网页上的某些内容,就像下面这种形式: <p>safdsf</p>< ...