EmguCV学习笔记 VB.Net 2.1 颜色空间和颜色

 版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。

EmguCV学习笔记目录 Vb.net

EmguCV学习笔记目录 C#

笔者的博客网址:VB.Net-CSDN博客

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

2.1 颜色空间和颜色http://blog.csdn.net/uruseibest

由于在图像讲解中会遇到颜色操作,这里有必要先简单学习颜色空间和颜色相关知识。

2.1.1 颜色空间

颜色空间,也称为色彩模型。彩色模型是坐标系统和子空间的阐述。位于系统的每种颜色都有单个点表示。我们直接理解为

通常情况下,我们所见的颜色都可以用红色(R)、绿色(G)、蓝色(B)三种颜色按照不同比例混合而成,也就是RGB颜色空间。Vb.Net开发时,经常使用的也是RGB颜色空间,图像通道按照R-G-B的顺序排列。

图2-1 红绿蓝三原色

EmguCV也提供了RGB颜色空间,但是在使用EmguCV开发时,常使用的是BGR颜色空间,即与RGB相反的通道顺序。除此之外,EmguCV还提供了Gray、YCC、Hsv等多个颜色空间。

BGR颜色空间,使用蓝、绿、红三个通道来描述颜色。在EmguCV中,使用Image(Of Bgr Byte)来表示使用BGR颜色空间的图像。当使用Mat类来载入彩色图片时(使用ImreadModes.Color),就是用的BGR颜色空间,此时Mat类的对象包含3个通道,分别对应了蓝、绿、红。

Gray颜色空间,即灰度颜色空间,这是只有亮度信息而没有颜色信息的颜色空间,该颜色空间只有一个通道,使用数值0-255来划分表示,0表示纯黑色,255表示纯白色,0-255间是不同的灰度级别。此外,二值图像(即只有黑色和白色)在EmguCV中也是用Gray颜色空间来表示,但是此时只包含两个数值:0和255,0表示纯黑色,255表示纯白色。开发时,使用Image(Of Gray, Byte)类表示灰度颜色空间的图像。当使用Mat类来载入灰度图片时(使用ImreadModes.Grayscale),此时Mat类的对象仅有1个通道。RGB转为Gray的一个简易计算公式:

Gray = R * 0.3 + G * 0.59 + B * 0.11

YCC颜色空间,即YCbCr,在此颜色空间中,Y为颜色的亮度,Cb和Cr分别是蓝色和红色的色度。在EmguCV中,可以使用Image(Of Ycc, Byte)类表示YCC颜色空间的图像。RGB转为YCC的计算公式:

Y=0.299R+0.578G+0.114B

Cb=(-0.1687R-0.3313G+0.500B)+128

Cr=(0.500R-0.4187G-0.0813B)+128

HSV颜色空间,是一种比RGB颜色空间更直观的颜色空间,它使用色调(Hue)、饱和度(Saturation)和明度(Value)三个参数来描述颜色。在EmguCV中,可以使用Image(Of Hsv, Byte)类表示HSV颜色空间的图像。RGB转为YCC的计算公式比较复杂,这里不介绍,感兴趣的朋友请自行上网搜索。

2.1.2 颜色

MCvScalar是一种表示颜色或像素值的结构体。它用于指定像素的颜色和透明度,可以用于图像处理中的各种操作,如绘制图形、填充颜色、设置阈值等。

MCvScalar结构体包含4个浮点型成员变量:Val0、Val1、Val2和Val3,分别对应B(蓝色)、G(绿色)、R(红色)和Alpha通道的值。MCvScalar可以用于表示像素的颜色或灰度值,同时也可以用于表示图像的通道值。可以通过以下方式创建一个MCvScalar对象:

Dim color As New MCvScalar(B, G, R, Alpha)

其中,B、G、R和Alpha分别表示像素的蓝色、绿色、红色和透明度值,取值范围为0到255。

例如,下面的代码定义了红色:

Dim color As New MCvScalar(0, 0, 255) '红色

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

.Net学习

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值