zoukankan      html  css  js  c++  java
  • HighGUI 图形用户界面

    参考 自opencv3编程入门一书

    图形用户界面主要内容包括图像载入,显示和输出到文件

    在opencv1.0时代 图像的存储结构体都是IplImage × 在2.0以后,采用Mat 类作为图像存储的数据结构

    1,Mat类  

      默认情况下大小是0 也可以指定大小,Mat(200,600,Scalar::all(0));

    2,图像的载入与显示

      imread 和imshow

      Mat imread(const string & filename,int flag = 1 );

      filename: 文件名字

      flag :载入标示

      在higui_c.h中可以找到枚举

      enum

      {

        CV_LOAD_IMAGE_GRAYSCALE = 0, 8位灰度图

        CV_LOAD_IMAGE_COLOR =1, 彩色图

        CV_LOAD_IMAGE_ANYDEPTH=2, 返回对应深度的图像

        CV_LOAD_IMAGE_ANYCOLOR=4, 返回对象颜色的图像

      }

      flag是int 类型变量

      flag >0 返回一个3通道的彩色图像

      flag =0 返回一个灰度图像

      flag>0 返回一个alpha 通道的图像   

      void imshow(const string &winname,InputArray mat);

      winname:窗口的名字

      mat :需要显示的图像

    3,创建窗口:namedWindow 函数

      原型:void namedWindow(const string &winname,int flag = WINDOW_AUTOSIZE)

      winname:窗口名字

      flag:窗口标示

      WINDOW_NORMAL 这个值用户可以改变窗口的大小

      WINDOW_AUTOSIZE 窗口会自动调整自适应图像

    4,输出图像到文件:imwrite 函数

      原型:bool imwrite(const string &filename,InputArray img,const vector<int> &params =vector<int>());

       filename:文件名称
      params:对于jpeg 图片 参数表示从0 到100 的图片质量 默认是95 ,对于png 的图片 这个参数表示压缩级别从0-9 默认是3

  • 相关阅读:
    T-SQL:事务锁下的并发处理(十五)
    C# Quartz定时任务corn时间设置详解
    C# QuartZ使用实例写成服务
    SQL SERVER 一个SQL语句的执行顺序
    SQL SERVER 如何判断是不是年,月最后一天
    SQL SERVER 如何声明一个变量
    SQL SERVER GO命令循环使用实例
    T-SQL:批GO使用实例(十四)
    VS2017进程为idXXXX 无法启动解决方案
    UI5-文档-4.20-Aggregation Binding
  • 原文地址:https://www.cnblogs.com/techdreaming/p/5191372.html
Copyright © 2011-2022 走看看