文档

lin2rgb

应用gamma校正线性RGB值

语法

B = lin2rgb(A)
B = lin2rgb(A,名称,值)

描述

例子

B= lin2rgb (<一个href="#d119e147191" class="intrnllnk">一个对图像中的线性RGB值应用gamma校正一个B为sRGB色彩空间,适合显示。

例子

B= lin2rgb (<一个href="#d119e147191" class="intrnllnk">一个,<一个href="#namevaluepairarguments" class="intrnllnk">名称,值使用名称-值对应用伽玛校正来控制其他选项。

例子

全部折叠

定义线性值的范围。这个向量定义了257个在0到1之间等间距的点。

Lin = linspace(0,1,257);

根据sRGB标准对线性值进行gamma校正。然后根据Adobe RGB(1998)标准对线性值应用gamma校正。

sRGB = lin2rgb(lin);adobeRGB = lin2rgb(lin,“色彩”“adobe rgb - 1998”);

画出修正后的曲线。

图绘制(sRGB林,“b”、林、adobeRGB“r”)标题(“伽玛校正与线性值”)传说(“sRGB”Adobe RGB (1998)“位置”“东南”

对于另一种可视化方法,绘制颜色条表示每个颜色空间。

Cb_lin = ones(30,257) .* lin;cb_sRGB = ones(30,257) .* sRGB;cb_adobeRGB = ones(30,257) .* adobeRGB;图次要情节(3、1、1);imshow (cb_lin);标题(“线性RGB”)次要情节(3、1、2);imshow (cb_sRGB);标题(“sRGB”);次要情节(3,1,3);imshow (cb_adobeRGB);标题(Adobe RGB (1998));

正如预期的那样,gamma校正的颜色空间比线性颜色空间更亮。

打开一个包含最小处理线性RGB强度的图像文件。

A = imread(“foosballraw.tiff”);

图像数据为校正黑色等级并缩放至16位/像素后的原始传感器数据。控件插入强度以重建颜色<一个href="//www.tianjin-qmedu.com/help/releases/R2018a/images/ref/demosaic.html" class="a">demosaic函数。彩色滤镜阵列图案为RGGB。

* * * * * * * * * * * *“rggb”);

显示图像。若要缩小图像,使其完全显示在屏幕上,请将可选的初始放大倍数设置为小于100的值。

图imshow (A_demosaiced,“InitialMagnification”、25)标题(“没有sRGB Gamma校正的传感器数据”

图像看起来很暗,因为它是在线性RGB颜色空间中。根据sRGB标准应用伽玛校正图像,存储双精度值。

A_sRGB = lin2rgb(A_demosaiced,“OutputType”“双”);

显示伽马校正图像,设置可选放大倍率。

图imshow (A_sRGB,“InitialMagnification”、25)标题(“传感器数据与sRGB伽马校正”);

正如预期的那样,伽玛校正后的图像看起来比线性图像更亮。

输入参数

全部折叠

线性RGB图像,指定为实的,非稀疏的,——- - - - - -n3数组。

数据类型:||uint8|uint16

名称-值对参数

的可选逗号分隔对名称,值参数。的名字参数名称和价值对应的值。的名字必须出现在单引号内(' ').您可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:B = lin2rgb(I,'ColorSpace','adobe-rgb-1998')应用gamma校正图像,,根据Adobe RGB(1998)标准。

全部折叠

输出图像的颜色空间,指定为由逗号分隔的对组成“色彩”而且“srgb”“adobe rgb - 1998”

数据类型:字符|字符串

输出RGB值的数据类型,指定为由逗号分隔的对组成“OutputType”而且“双”“单一”“uint8”,或“uint16”.缺省情况下,输出数据类型与的数据类型相同<一个href="#d119e147191" class="intrnllnk">一个

数据类型:字符|字符串

输出参数

全部折叠

经过伽玛校正的RGB图像,作为实的非稀疏图像返回,——- - - - - -n3数组。

算法

全部折叠

伽玛校正使用sRGB标准

将线性RGB三刺激值转换为sRGB三刺激值的gamma校正由以下参数曲线定义:

fu) = -f(-u),u< 0

fu) =cu, 0≤u<d

fu) =一个uɣ+bud

在哪里u用以下参数表示颜色值:

一个= 1.055

b= -0.055

c= 12.92

d= 0.0031308

ɣ= 1/2.4

Gamma校正使用Adobe RGB(1998)标准

将线性RGB三刺激值转换为Adobe RGB(1998)三刺激值的gamma校正使用了一个简单的幂函数:

vuɣu≥0

v= (-uɣu< 0

ɣ= 1/2.19921875

参考文献

[1]埃伯纳,马克。“伽马校正”。颜色恒常性.奇切斯特,西苏塞克斯:约翰·威利父子,2007年。

Adobe系统公司。“反转颜色分量传递函数。”adobergb(1998)彩色图像编码.第4.3.5.2节,2005年5月,第12页

另请参阅

在R2017b中引入

这个话题有用吗?