• 使用C#+EmguCV处理图像入门(图像读取_显示_保存)二


    上个随笔已经介绍EmguCV的一些常用库和程序安装以及环境变量的配置,这次写的是如何使用这个类库对图像进行操作。

    EmguCV图像处理系统组成(个人见解):

    图像的基本操作:

    贴个代码:

    using Emgu.CV;   //使用命名空间
    using Emgu.CV.Structure;
    using Emgu.CV.CvEnum;
    using Emgu.Util; 
    static void Main(string[] args)
    {
       Mat srcImg = CvInvoke.Imread("1.jpg"); //读取图片
          CvInvoke.NamedWindow("img", NamedWindowType.AutoSize); //创建窗口
       CvInvoke.Imshow("img", srcImg); //显示图片
       CvInvoke.Imwrite("1.bmp", srcImg); //保存结果图片  
       CvInvoke.WaitKey(0); //暂停按键等待
    }

    函数解析:

    ①命名空间(必须的):
    using Emgu.CV ---封装了OpenCV基本图像处理函数,在CvInvoke类中
    using Emgu.CV.CvEnum ---OpenCV枚举类型,包含一些枚举类型宏定义
    Imread()函数:

     1)第一个参数,需要填入图片路径名,支持如下格式:

    Windows位图: *.bmp, *.dib
    JPEG文件: *.jpeg, *.jpg, *.jpe
    JPEG2000文件: *.jp2
    PNG图片: *.png
    便携文件格式: *.pbm, *.pgm, *.ppm
    Sun rasters光栅文件: *.sr, *.ras
    TIFF文件: *.tiff, *.tif
    2)第二个参数,指定加载图像的颜色类型,
      默认为ImreadModes.Color=1:

    NamedWindow()函数:

    1)第一个参数,设置作为标识的窗口名称
    2)第二个参数,窗口显示方式,取值如下:

    Normal:正常大小显示,用户可以改变窗口大小
    Autosize: 根据图像大小自动调整,用户不能手动改变窗口大小
    Opengl: 支持openGL
    Imshow()函数:

     1)第一个参数,设置需要显示的窗口名称
    2)第二个参数,填写需要显示的图像
    注:函数中出现InputArray/ OutputArray可先当做Mat类型
    ⑤Imwrite()函数:

    1)第一个参数,设置保存的文件名,需填写后缀,如"1.bmp"
    2)第二个参数,要保存的Mat类型图像数据
    3)第三个参数,表示特定格式保存的参数编码,一般采用默认值不填写
    WaitKey()函数:

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

    介绍一下ASCll表:

    还有一些常用的方法:

    1).IsEmpty 判断图像是否为空
    2).Rows 获取图像行数(高度)
    3).Cols 获取图像列数(长度)
    4).NumberOfChannels 获取图像通道数
    5).Depth 获取图像位深度



    出处:https://www.cnblogs.com/net-open/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。(尊重别人就是尊重自己,尊重笔者的劳动哦,转载请说明出处哦,商用请征得作者本人同意,谢谢!!!)
  • 相关阅读:
    C#中 ??、 ?、 ?: 、?.、?[ ] 问号各组合含义
    ASP.NET Core MVC配置差异(3.0和2.X)
    vs code搭建Django环境
    解决真机编译出现System.DllNotFoundException: 'libmono-native.so'错误都方法
    选择器
    Web.Config配置
    读Xamarin文档记录
    【前端自动化】Gulp的使用(一):安装gulp
    关于angularJS绑定数据时自动转义html标签
    【记录】两年程序生涯的点滴与反思
  • 原文地址:https://www.cnblogs.com/net-open/p/10310948.html
Copyright © 2020-2023  润新知