上个随笔已经介绍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(); //暂停按键等待
}

函数解析:

①命名空间(必须的):
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 获取图像位深度

使用C#+EmguCV处理图像入门(图像读取_显示_保存)二的更多相关文章

  1. opencv入门系列教学(二)图像入门:读取、展示并保存视频

    一.从相机读取视频 通常情况下,我们必须用摄像机捕捉实时画面.让我们从摄像头捕捉一段视频(我使用的是我笔记本电脑内置的网络摄像头) ,将其转换成灰度视频并显示出来.        要捕获视频,我们需要 ...

  2. Opencv-Python:图像尺寸、图像的读取、显示、保存与复制

    Opencv-Python:图像尺寸.图像的读取.显示.保存与复制 原创 2017年11月23日 21:30:49 4440 在使用opencv的方法时,首先必须导入opencv包.新的opencv导 ...

  3. OpenCV中图像的读取,显示与保存

      图像的读取,显示与保存 相关函数:cv2.imread().cv2.imshow().cv2.imwrite() 1.读入图像: 用cv2.imread()函数来读取图像,cv2.imread(路 ...

  4. 图像的读取,显示与保存(基于skimage模块)

    一 skiamge模块 skimage包的全称是scikit-image SciKit (toolkit for SciPy) ,它对scipy.ndimage进行了扩展,提供了更多的图片处理功能.它 ...

  5. matlab数字图像处理-冈萨雷斯-读取,显示,保存图像

    图像读取:imread(filename) 显示图像‘ 显示多幅图像 保存图像 b 计算压缩比

  6. Emgu学习之(二)——图像读取、显示、保存

    visual Studio Community 2015 工程和源代码:http://pan.baidu.com/s/1o6u5Fdw 内容 在这篇文章中将提到以下内容: 从文件中读取图像 Image ...

  7. 第十二节,OpenCV学习(一)图像的读取、显示、保存

    一.读取图像 所谓的图像就是一个数组,对图像的处理就是对数字的处理 import cv2 import numpy as np img = cv2.imread('dog.jpg') print(im ...

  8. opencv中图像的读取,显示与保存1

    1.读入图像 用cv2.imread()函数来读取图像,cv2.imread(路径,图像颜色空间)(其中颜色空间默认为BGR彩图)     cv2.IMREAD_COLOR:读入一副彩色图像 cv2. ...

  9. python数字图像处理(2):图像的读取、显示与保存

    skimage提供了io模块,顾名思义,这个模块是用来图片输入输出操作的.为了方便练习,也提供一个data模块,里面嵌套了一些示例图片,我们可以直接使用. 引入skimage模块可用: from sk ...

随机推荐

  1. Welcome to Fan Ouyang’s website!

    Welcome to Fan Ouyang's website! 欧阳璠,哲学博士,湖南娄底人. 目前为浙江大学教育学院课程与学习科学系教育技术专业百人计划研究员. 2013-2018年 明尼苏达大学 ...

  2. Nginx笔记总结十七:nginx生成缩略图配置(http_image_filter_module)

    编译: ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_realip_module-- ...

  3. 了解DocumentFragment 给我们带来的性能优化

    首先我们需要了解 DocumentFragment 是什么? w3c 上面的详细解释:link here 我把关键点写下来了: DocumentFragment 节点不属于文档树,继承的 parent ...

  4. 吴裕雄--天生自然KITTEN编程:救救小兔子

  5. R内的gsub()函数

    今天遇到了一个问题就是,如果数据里面有逗号,那么如何转换他们.就像下面的这样: > exercise9_1$地区生产总值 [1] 16,251.93 11,307.28 24,515.76 11 ...

  6. Java Random函数

    Java中存在着两种Random函数: 1.java.lang.Math.Random: 调用这个Math.Random()函数能够返回带正号的double值,该值大于等于0.0且小于1.0,即取值范 ...

  7. 数据库事务(Transaction)

    事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit). 事务四大特性(ACID): 原子性(Atomicity):个事务是一个不可分割的工作单位,事务中包括的 ...

  8. 移动 H5 首屏秒开优化方案探讨

    转载bang大神文章,原文<移动 H5 首屏秒开优化方案探讨>,此文仅仅用做自学与分享! 随着移动设备性能不断增强,web 页面的性能体验逐渐变得可以接受,又因为 web 开发模式的诸多好 ...

  9. 使用TensorFlow训练自己的语音识别AI

    这次来训练一个基于CNN的语音识别模型.训练完成后,我们将尝试将此模型用于Hotword detection. 人类是怎样听懂一句话的呢?以汉语为例,当听到"wo shi"的录音时 ...

  10. 疫情期,如何用A/B测试快速迭代你的产品?

    作者:友盟+数据科学家 杨玉莲.陆子骏 冠状病毒来袭牵动着每个人的心,但是病毒影响的不仅仅是我们的健康,也以极快的速度极深远地影响了整个移动互联网的发展.主流阵地原本在线下的需求,如医疗和生鲜电商,快 ...