如何获取以RGB值表示的颜色(例如,三个坐标从0-255)并从中产生以开尔文表示的color temperature(或杂色)?
我看到this question看起来很近。但是,问题提到x和y,an answer提到R1和S1,我认为它们是CIE XYZ颜色空间坐标。我也不太确定该如何去那些人。其他人链接到论文。其他人says RGB值在没有“声明色彩空间”的情况下是没有意义的(我以为我的显示器决定仅从RGB值显示某些内容?)。
有人可以在不指向其他地方的情况下简单地布置整个事情,并且假设我知道所有颜色术语是什么吗?
最佳答案
您可以使用Colour使用colour.xy_to_CCT_Hernandez1999
定义执行该计算:
import numpy as np
import colour
# Assuming sRGB encoded colour values.
RGB = np.array([255.0, 235.0, 12.0])
# Conversion to tristimulus values.
XYZ = colour.sRGB_to_XYZ(RGB / 255)
# Conversion to chromaticity coordinates.
xy = colour.XYZ_to_xy(XYZ)
# Conversion to correlated colour temperature in K.
CCT = colour.xy_to_CCT(xy, 'hernandez1999')
print(CCT)
# 3557.10272422
关于python - 如何从RGB值转换为色温?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38876429/