Python 将 sRGB 值转换为 RGB

问题描述 投票:0回答:1

首先,我保证我已经读过很多这方面的内容,包括这里,但似乎没有什么可以接近的。我有三个值来表示颜色,全部在 sRGB 空间中,并且需要将它们转换为“常规”RGB(其中值从 0 到 255 呈一条直线)。

我尝试这个代码(推荐很多地方):

def srgb2lin(s):
   if s <= 0.0404482362771082:
        lin = s / 12.92
    else:
        lin = pow(((s + 0.055) / 1.055), 2.4)
    return lin

虽然这些值更好,但它们仍然不是我需要的值(例如:.4 输入返回 33,而我需要 59,至少就我手动输入 RGB 值时发生的情况而言)一个生成 sRGB 值的程序,然后在我的程序中查看我需要 RGB 值。如果这有意义的话)。

我知道转换并不是那么简单,但编码必须可用某处,对吗?

python rgb srgb
1个回答
0
投票

对不起,各位,但我是个白痴(在我看来,我是一个非常老的程序员 - 在 Basic 出现之前我就在 COBOL 中工作)。

在我的日常工作中,我无意中混淆了绿色和蓝色 - 由于某种原因(尽管我知道它是“RGB”),我将其设置为 RBG。因此,颜色肯定是不对的......但不是由于我正在做的事情(众所周知,计算机只是按照我们告诉它做的事情做。我告诉它行为不端)。

我不知道是否有办法删除这里的内容,但如果是的话(如果其他人可以)请这样做。现在,所有更改颜色空间的“正常”例程在我的程序中都可以正常工作。

© www.soinside.com 2019 - 2024. All rights reserved.