将RGB值转换为灰度值的简单算法

更新时间:2019年10月9日 11:07:04 作者:

本文主要介绍一种将RGB值转换为灰度值的简单算法。文章通过示例代码对其进行了非常详细的介绍。对于大家的学习或者工作都有一定的参考学习价值。有需要的朋友可以关注下面小编。我们一起来学习一下

RGB如何转换为灰度?这是一个长期困扰人们的谜题。

1、将RGB复合通道转换为灰度:转换后的色阶值仅与RGB空间相关,与作为目的地的灰度空间无关。也就是说,只要当前RGB空间不变,无论设置为哪个灰度空间,转换后的色阶值都会相同。

2. RGB 到灰度的单通道转换:转换后的色阶值不仅与 RGB 空间有关,还与作为目的地的灰度空间有关。但其灰度值K只与RGB色阶有关,与RGB空间和灰度空间无关。其值与RGB色阶X的关系为:K=1-X/255

3. RGB模式下,修改颜色设置中的RGB工作空间会影响复合通道的外观和灰度K值,以及单个通道的灰度值。但单通道的外观不会受到影响。

4、RGB模式下1.80,如果修改颜色设置中的灰度空间,会影响单色通道的外观以及单色通道和复合通道的灰度K值。但不会影响复合通道的外观。

以上见解供大家讨论!

1. RGB转灰度的原理

RGB转灰度时,使用LAB模式作为中介(这与PS中对LAB模式的一致解释完全一致)。基本过程是:首先将RGB转换为LAB,然后去除LAB中的颜色,使得A和B都为零,然后生成RGB等效的灰度,最后根据这个灰度转换到灰度空间。转变。

可见,等效RGB转换为灰度仅与原始RGB空间有关,与作为目标空间的灰度空间无关。

2、灰度计算

不同的RGB空间有不同的灰度计算公式。几种RGB空间常见的灰度计算公式如下:

1. 简化的sRGB -2.1 [gamma=2.20]

灰色 = (R^2.2 * 0.2126 + G^2.2 * 0.7152 + B^2.2 * 0.0722)^(1/2.2)

2.Adobe RGB (1998) [伽玛=2.20]

灰色 = (R^2.2 * 0.2973 + G^2.2 * 0.6274 + B^2.2 * 0.0753)^(1/2.2)

3.苹果RGB [伽玛= 1.80 ]

灰色 = (R^1.8 * 0.2446 + G^1.8 * 0.6720 + B^1.8 * 0.0833)^(1/1.8)

4.RGB[伽玛=1.8]

灰色 = (R^1.8 * 0.2750 + G^1.8 * 0.6581 + B^1.8 * 0.0670)^(1/1.8)

5. 简化柯达 DC [gamma=2.2]

灰色 = (R^2.2 * 0.2229 + G^2.2 * 0.7175 + B^2.2 * 0.0595)^(1/2.2)

3、灰度K的计算

由于RGB空间和灰度空间有各自独立的灰度系数(即GAMMA,设RGB空间的GAMMA为,灰度空间的GAMMA为),因此,灰度K有两种含义,一种是灰度K1相对一个是相对于RGB空间的灰度K2,一个是转换到灰度空间后相对于灰度空间的灰度K2(K2实际上是GAMMA转换后的灰度)。灰度K与灰度L的关系为:

K1=1-L/255

K2=K1^(/)=1-(L/255)^(/)

需要注意的两点:

1、只要RGB空间和灰度空间的GAMMA值相等,即=,则K1=K2=1-L/255。

2、如何知道某个色彩空间的GAMMA值?首先在“颜色设置”工作区中选择相应的工作区,然后选择“自定义(RGB空间或伽玛)”。弹出的对话框中,“gamma”即为设置的工作空间对应的GAMMA值。

4. RGB中不同颜色通道转换为灰度的方式不同。

1.将复合通道转换为灰度

将复合通道转换为灰度实际上意味着将整个图像转换为灰度。此时,采用转换配置文件的方法:即在转换过程中,保持颜色外观不变,但改变颜色数据。这里的颜色数据就是灰度K,色貌就是图像的外观显示及其对应的RGB值。

因此,复合通道转换为灰度后,其灰度值不是K1,而是K2。这是更改颜色数据的结果。对于RGB等价值的图像,转换为灰度后,虽然灰度值发生了变化,但图像的外观以及对应的RGB值并没有改变。这就是在转换过程中保留颜色的原因。外观结果。

2.将单色通道转换为灰度

不仅可以将复合通道(即整个图像)转换为灰度模式,而且单个颜色通道也可以转换为灰度模式。实际上,复制单色通道时,就是将单色通道从RGB转换为灰度的过程。与复合通道的转换不同,单色通道的转换采用指定配置文件的方式:即转换过程中保持颜色数据不变,颜色外观相应变化。

因此,当单色通道复制到ALPHA通道时,通道的灰度值K1保留,但通道的颜色外观(包括外观显示和对应的灰度值)发生变化。

3. 单色通道特殊显示

单色通道本身是灰度图像。按理来说,用灰度K来识别是最合适的。然而,单色通道属于RGB模式的彩色通道。从这个方面来说,是用RGB值来表示的。单色通道是完美的。面对这样的困境,PS采用了折衷的显示方案,即颜色数据使用RGB空间中的RGB值,而外观则使用转换为灰度后对应的外观。

4、识别信息调色板中RGB颜色通道的灰度显示值

应仔细识别信息调色板中显示的每个颜色通道的灰度值:

对于复合通道,显示的灰度值为转换为灰度模式后的灰度K2;

对于单色通道,应在不进行伽马转换的情况下显示灰度值K1。然而,当面对具有RGB等效值的RGB图像时,存在复合通道和单色通道不相等的情况。这种情况很容易让大家感到困惑。为了不迷惑大家,PS用了一个技巧,偷偷用伽马转换后的K2替换了原来的K1。可见,信息调色板中单色通道的灰度显示值是PS用来欺骗自己和他人的伎俩。请不要被它愚弄。

总之,对于大多数人来说,需要将RGB工作区的GAMMA和灰度工作区的GAMMA设置为相等的值。如果你这样做了,那么PS中很多看似混乱的事情就根本不会发生;否则,麻烦的事情很可能会接踵而至,让你一头雾水,无法理解事情。

以上就是本文的全部内容。希望对大家的学习有所帮助。也希望大家支持 Home。

未经允许不得转载! 作者:admin,转载或复制请以超链接形式并注明出处天心神途传奇手游发布网

原文地址:《1.80 将RGB值转换为灰度值的简单算法》发布于:2024-10-30

发表评论

表情:
验证码
评论列表 (暂无评论,51人围观)

还没有评论,来说两句吧...