# lab2rgb
将 CIE 1976 L*a*b* 转换为 RGB
函数库: TyImageProcessing
# 语法
rgb = lab2rgb(lab)
rgb = lab2rgb(lab;Name=Value)
# 说明
rgb = lab2rgb(lab) 将 sRGB 值转换为 CIE 1976 L*a*b* 值。示例
rgb = lab2rgb(lab;Name=Value) 使用一个或多个名称-值对组参量指定其他转换选项,例如 RGB 图像的颜色空间。示例
# 示例
将 L*a*b 颜色转换为RGB
将一个颜色值从 L*a*b* 颜色空间转换为标准 RGB 颜色空间。
using TyImageProcessing
lab2rgb([70.0 5.0 10.0])
ans =
1×3 Matrix{Float64}:
0.735865 0.656571 0.601011
将 L*a*b* 颜色转换为 Adobe RGB
将一个颜色值从 L*a*b* 颜色空间转换为 Adobe RGB (1998) 颜色空间。
using TyImageProcessing
lab2rgb([70.0 5.0 10.0]; ColorSpace="adobe-rgb-1998")
ans =
1×3 Matrix{Float64}:
0.708608 0.650655 0.597811
将 L*a*b* 颜色转换为指定白点的 RGB 颜色
将 L*a*b* 颜色值转换为指定 D50 白点的标准 RGB 颜色。
using TyImageProcessing
lab2rgb([70.0 5.0 10.0]; WhitePoint="d50")
ans =
1×3 Matrix{Float64}:
0.728178 0.65732 0.600687
转换 L*a*b* 颜色为 8 位编码的 RGB 颜色
将 L*a*b* 颜色转换为 8 位编码的 RGB 颜色
using TyImageProcessing
lab2rgb([70.0 5.0 10.0]; OutputType="UInt8")
ans =
1×3 Matrix{UInt8}:
0xbc 0xa7 0x99
# 输入参数
lab — L*a*b* 颜色值数值数组
要转换后 L*a*b* 颜色值,指定为数值数组,采用下列格式之一。
c×3 颜色图。每行指定一个 RGB 颜色值。
m×n×3 图像。
| 属性 | 描述 |
|---|---|
| L* | 图像的亮度。值在 [0, 100] 范围内,其中 0 指定黑色,100 指定白色。随着 L* 的增加,颜色变得更亮。 |
| a* | 图像中红色或绿色色调的量。大的正 a* 值对应于红色/品红色。大的负 a* 值对应于绿色。虽然 a* 没有单一范围,但值通常在 [-100, 100] 或 [-128, 127) 范围内。 |
| b* | 图像中黄色或蓝色色调的量。大的正 b* 值对应于黄色。大的负 b* 值对应于蓝色。虽然 b* 没有单一范围,但值通常在 [-100, 100] 或 [-128, 127) 范围内。 |
数据类型: Float32 | Float64
# 名称-值参数
将可选的参量对组指定为 Name1=Value1,...,NameN=ValueN,其中 Name 是参量名称,Value 是对应的值。名称-值参量必须出现在其他参量后,但对各个参量对组的顺序没有要求。
示例: rgb = lab2rgb([70.0 5.0 10.0];WhitePoint="d50")
ColorSpace — 输入 RGB 值的颜色空间"srgb" (默认) | "adobe-rgb-1998" | "prophoto-rgb" | "linear-rgb"
输入 RGB 值的颜色空间,指定为 "srgb"、"adobe-rgb-1998"、"prophoto-rgb" 或 "linear-rgb"。如果您指定 "linear-rgb",则 lab2rgb 假设输入 RGB 值是线性化的 sRGB 值。
数据类型: String
WhitePoint — 参考白点"d65" (默认) | "a" | "c" | "e" | "d50" | "d55" | "icc" | 1×3 向量
参考白点,以 1×3 向量或表中列出的 CIE 标准光源之一形式指定。
| 值 | 白点 |
|---|---|
"a" | 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]。模拟日出或日落时的暖日光,相关色温为 5003 K。也称为地平线日光。 |
"d55" | CIE 标准光源 D55,[0.9568, 1.0000, 0.9214]。模拟上午中间时刻或下午中间时刻的日光,相关色温为 5500 K。 |
"d65" | CIE 标准光源 D65,[0.9504, 1.0000, 1.0888]。模拟正午日光,相关色温为 6504 K。 |
"icc" | ICC 配置文件中使用的配置文件连接空间 (PCS) 光源。使用有符号 32 位定点数(具有 16 个小数位)的逼近 [0.9642, 1.000, 0.8249]。实际值:[31595,32768, 27030]/32768。 |
数据类型: String | Real
OutputType — RGB 返回值的数据类型"Float64" | "Float32" | "UInt8" | "UInt16"
返回的 RGB 值的数据类型可以指定为 "Float64"、"Float32"、"UInt8" 或 "UInt16"。如果没有指定 OutputType,输出类型将与输入类型相同。
数据类型: String
# 输出参数
rgb — 转换后的 rgb 颜色值数值数组
转换后的 RGB 颜色值,以与输入相同形状的数值数组返回。输出数据类型与输入数据类型相同,除非您指定了 OutputType 参数。