主要内容

rgb2lab

将RGB转换为CIE 1976 L*a*b*

描述

例子

实验室= rgb2lab (RGB将sRGB值转换为CIE 1976 L*a*b*值。

例子

实验室= rgb2lab (RGB名称,值使用一个或多个名称-值对参数指定其他转换选项,例如RGB图像的颜色空间。

例子

全部折叠

使用rgb2lab将RGB白色值转换为L*a*b。

rgb2lab ((1 1 1))
ans =1×3100.0000 0 0.0000

将Adobe RGB(1998)颜色值转换为L*a*b*色彩参数。

rgb2lab([。2。3。4),“色彩”“adobe rgb - 1998”
ans =1×330.1783 -5.6902 -20.8223

使用rgb2lab使用D50参考白色将RGB颜色转换为L*a*b。

rgb2lab([。2。3。4),“WhitePoint”“d50”
ans =1×331.3294 -4.0732 -18.1750

读取RGB图像到工作区。

rgb = imread (“peppers.png”);

将RGB图像转换为L*a*b*颜色空间。

实验室= rgb2lab (rgb);

显示L*a*b*图像的L*分量。

imshow(实验室(:,:1),100年[0])

图中包含一个axes对象。坐标轴对象包含一个image类型的对象。

输入参数

全部折叠

要转换的RGB颜色值,指定为以下格式之一的数字数组。

  • c3 colormap。每行指定一个RGB颜色值。

  • ——- - - - - -n3图片

  • ——- - - - - -n-by-3-by -p堆栈的图片

数据类型:||uint8|uint16

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名-值参数必须出现在其他参数之后,但对的顺序并不重要。

例子:lab = rgb2lab([0.25 0.40 0.10],WhitePoint="d50")

在R2021a之前,名称和值之间用逗号隔开,并括起来的名字在报价。

例子:lab = rgb2lab([0.25 0.40 0.10],"WhitePoint","d50")

颜色空间的输入RGB值,指定为“srgb”“adobe rgb - 1998”“prophoto-rgb”,或“linear-rgb”.如果您指定“linear-rgb”,然后rgb2lab假设输入的RGB值是线性化的sRGB值。

数据类型:字符串|字符

参考白点,指定为1 × 3矢量或表中列出的CIE标准光源之一。

价值 白色的点
“一个”

CIE标准光源A,(1.0985, 1.0000, 0.3558).模拟典型的家用钨丝照明,相关色温为2856 K。

“c” CIE标准照明灯C,(0.9807, 1.0000, 1.1822).模拟平均或北方天空日光,相关色温为6774 K。CIE弃用。
“e” 相等的能量散热器,(1.000, 1.000, 1.000).作为理论参考有用。
“d50” CIE标准光源D50,(0.9642, 1.0000, 0.8251).模拟日出或日落时的温暖日光,相关色温为5003k。也被称为地平线上的光

“d55”

CIE标准光源D55,(0.9568, 1.0000, 0.9214).模拟上午或下午的日光,相关色温为5500 K。

“d65” CIE标准光源D65,(0.9504, 1.0000, 1.0888).模拟中午日光与相关色温6504 K。
“国际” 在ICC型材中使用的型材连接空间(PCS)光源。近似的(0.9642, 1.000, 0.8249)使用带有16个小数位的定点、有符号的32位数字。实际值:(31595、32768、27030)/ 32768

数据类型:||字符串|字符

输出参数

全部折叠

转换的L*a*b*颜色值,作为与输入大小相同的数字数组返回。输出类型为除非输入类型是,在这种情况下,输出类型为

属性 描述
L * 图像的亮度。值的范围为[0,100],其中0指定黑色,100指定白色。作为L *增加,颜色变得更亮。
一个* 图像中红色或绿色色调的数量。一个很大的积极的一个*值对应红色/品红。一个大的负面一个*值对应绿色。虽然没有单一的范围一个*,值通常在[-100,100]或[-128,127)的范围内。
b * 图像中黄色或蓝色调的数量。一个很大的积极的b *值对应黄色。一个大的负面b *值对应蓝色。虽然没有单一的范围b *,值通常在[-100,100]或[-128,127)的范围内。

数据类型:|

提示

  • 如果指定输入RGB颜色空间为“linear-rgb”,然后rgb2lab假设输入值是线性化的sRGB值。如果您希望输入颜色空间是线性化的Adobe RGB(1998),则可以使用lin2rgb函数。

    例如,转换线性化Adobe RGB(1998)图像RGBlinadobe转换到CIE 1976 L*a*b*颜色空间,执行以下两个步骤:

    RGBadobe = lin2rgb (RGBlinadobe,“色彩”“adobe rgb - 1998”);实验室= rgb2lab (RGBadobe,“色彩”“adobe rgb - 1998”);

扩展功能

版本历史

介绍了R2014b

全部展开

Baidu
map