rgb2lab
将RGB转换为CIE 1976 L*a*b*
描述
例子
将RGB白色转换为L*a*b*
转换颜色值为L*a*b*指定颜色空间
将Adobe RGB(1998)颜色值转换为L*a*b*色彩
参数。
rgb2lab([。2。3。4),“色彩”,“adobe rgb - 1998”)
ans =1×330.1783 -5.6902 -20.8223
将RGB颜色转换为L*a*b*指定参考白色
使用rgb2lab
使用D50参考白色将RGB颜色转换为L*a*b。
rgb2lab([。2。3。4),“WhitePoint”,“d50”)
ans =1×331.3294 -4.0732 -18.1750
转换RGB图像为L*a*b*和显示L*组件
读取RGB图像到工作区。
rgb = imread (“peppers.png”);
将RGB图像转换为L*a*b*颜色空间。
实验室= rgb2lab (rgb);
显示L*a*b*图像的L*分量。
imshow(实验室(:,:1),100年[0])
输入参数
RGB
- - - - - -RGB颜色值
数字数组
要转换的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”
颜色空间的输入RGB值,指定为“srgb”
,“adobe rgb - 1998”
,“prophoto-rgb”
,或“linear-rgb”
.如果您指定“linear-rgb”
,然后rgb2lab
假设输入的RGB值是线性化的sRGB值。
数据类型:字符串
|字符
WhitePoint
- - - - - -参考白色点
“d65”
(默认)|“一个”
|“c”
|“e”
|“d50”
|“d55”
|“国际”
|1×3向量
参考白点,指定为1 × 3矢量或表中列出的CIE标准光源之一。
价值 | 白色的点 |
---|---|
“一个” |
CIE标准光源A, |
“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。也被称为地平线上的光. |
|
CIE标准光源D55, |
“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*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”);
扩展功能
C / c++代码生成
使用MATLAB®Coder™生成C和c++代码。
使用注意事项和限制:
rgb2lab
支持C代码的生成MATLAB®编码器™).有关更多信息,请参见图像处理的代码生成.在生成代码时,所有字符向量输入参数必须是编译时常量。
GPU的代码生成
使用GPU Coder™为NVIDIA GPU生成CUDA®代码。
使用注意事项和限制:
的
色彩
名称-值参数只支持值“srgb”
,“adobe rgb - 1998”
,“linear-rgb”
.在生成代码时,所有字符向量输入参数必须是编译时常量。
线程环境
在后台使用MATLAB®运行代码backgroundPool
或使用并行计算工具箱™加速代码ThreadPool
.
这个函数完全支持基于线程的环境。有关更多信息,请参见在线程环境中运行MATLAB函数.
版本历史
介绍了R2014bR2022b:支持ProPhoto (ROMM RGB)颜色空间
rgb2lab
现在支持ProPhoto (ROMM RGB)颜色空间,它比sRGB和Adobe RGB 1998颜色空间有更宽的色域。若要使用ProPhoto颜色空间,请指定色彩
名称-值参数为“prophoto-rgb”
.
R2022b:支持基于线程的环境
rgb2lab
现在支持基于线程的环境。
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。