EmguCV学习笔记 VB.Net 4.1 颜色变换

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。
教程VB.net版本请访问:
EmguCV学习笔记 VB.Net 目录-CSDN博客

教程C#版本请访问: EmguCV学习笔记 C# 目录-CSDN博客

笔者的博客网址:https://blog.csdn.net/uruseibest

教程配套文件及相关说明以及如何获得pdf教程和代码(博客上的教程内容会和pdf教程一致,教程中也会包含所有代码),请移步:EmguCV学习笔记****

4.1 颜色变换

颜色变换是图像处理的基础,大多数情况下,图像处理会把原图像处理成灰度图像,并进一步处理为二值图像后,再进行后续操作。

在EmguCV中,不同的颜色空间可以使用CvInvoke.CvtColor方法进行转换,该方法用于将图像从一种颜色空间转换到另一种颜色空间,它常用的一个声明:

Public Shared Sub CvtColor(src As IInputArray, dst As IOutputArray, code As ColorConversion, Optional dstCn As Integer = 0)

参数说明:

  1. src:输入图像。
  2. dst:输出图像。
  3. code:这是一个ColorConversion枚举,包括了很多颜色空间转换的成员,通常格式是(一种颜色空间)2(另外一种颜色空间),2是TO的意思。例如将BGR转灰度:ColorConversion.Bgr2Gray。笔者数了一下,一共提供了200余种颜色空间转换。

图4-1 ColorConversion枚举

【代码位置:frmChapter4】Button1_Click

'CvtColor更改颜色空间

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

Dim m As New Mat("C:\learnEmgucv\lena.jpg", ImreadModes.Color)

ImageBox1.Image = m

Dim mOut1 As New Mat

'Bgr转Hsv

CvInvoke.CvtColor(m, mOut1, ColorConversion.Bgr2Hsv)

ImageBox2.Image = mOut1

Dim mOut2 As New Mat

'Bgr转Gray

CvInvoke.CvtColor(m, mOut2, ColorConversion.Bgr2Gray)

ImageBox3.Image = mOut2

End Sub

运行后如下图所示:

图4-2 颜色空间转换

相关推荐
搞科研的小刘选手4 小时前
【香港大学主办&IEEE出版】第六届计算机视觉、应用与算法国际学术会议(CVAA 2026)
算法·计算机视觉·应用·学术会议
断眉的派大星6 小时前
YOLO实例分割详细解析
人工智能·yolo·计算机视觉
yqd6668 小时前
OpenCV
人工智能·opencv·计算机视觉
promising_xxx9 小时前
深度学习个人开源知识库 深度筑基 | DeepBase
人工智能·python·深度学习·计算机视觉·ai·语言模型·nlp
在水一缸9 小时前
OpenCV 5 深度解析:计算机视觉领域的“五年之变”与跨越式升级
人工智能·opencv·计算机视觉·开源项目·技术升级·opencv 5
Java小白笔记9 小时前
Codex 桌面应用设置功能完全指南
人工智能·opencv·目标检测·机器学习·计算机视觉·数据挖掘·语音识别
z小猫不吃鱼10 小时前
模型剪枝经典论文精读:Rethinking the Value of Network Pruning
人工智能·深度学习·计算机视觉
2601_9516599910 小时前
4.19华为OD机试真题 新系统 - WIFI设备网络规划 (JavaPyCC++JsGo)
深度学习·yolo·计算机视觉·yolo11·yolo26
格林威11 小时前
网口相机 vs USB相机:区别与适用场景(选型不再纠结)
人工智能·数码相机·机器学习·计算机视觉·视觉检测·机器视觉·工业相机
2601_9516599911 小时前
4.19华为OD机试真题 新系统 - 8位LED控制器 (JavaPyCC++JsGo)
深度学习·yolo·计算机视觉·yolo11·yolo26