2016-08-10 66 views
4

RGB値(たとえば、0〜255の3つの座標)で表現された色をケルビン(またはmireds)のcolor temperatureからどのように生成するのですか?RGB値を色温度に変換する方法はありますか

私はthis questionとよく似ています。しかし、質問にはxとyが記載されています。an answerにはR1とS1がありますが、これはCIE XYZの色空間座標です。私はそれらのどちらにもどうやって到達するのかについてはあまりよく分かりません。他の人が紙にリンクしています。他の誰かsays RGB値は意味がありません。(私のモニターはRGB値から何かを単純に表示することにしましたか?)

他の場所を指すことなく、すべての色の用語がわかっていると仮定して、誰かが全体をレイアウトすることはできますか?

+0

あなたはRGBからケルビンまたはケルビンからRGBに変換する必要がありますか? – cameronroytaylor

+0

線形代数と(無限次元の)ベクトル空間であなたはどれくらい精通していますか? AFAIKの概念は、色理論の扱いについて実際に発明され、開発された(すでに以前に知られた有限次元ベクトル概念の一般化として)。したがって、答えがこれらの数学分野の概念、名前、表記法を使用することが許されているなら、この質問に答える方が簡単かもしれません。 –

+0

@cameronroytaylor RGBからケルビン。 – dfrankow

答えて

5

あなたはcolour.xy_to_CCT_Hernandez1999定義を使用してその計算を実行するためにColourを使用することができます。

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_Hernandez1999(xy) 
    print(CCT) 

    # 3557.10272422 
+0

すばらしい、ありがとう! – dfrankow

+0

@dfrankow:うれしかった!回答があなたの問題を解決した場合は、それを合格とマークしてください。質問がある場合は、私にpingを躊躇しないでください。 –

+0

明示されていないので、注意してください。これは、RGBカラーが実際にsRGBカラーであることを前提としています。これはおそらく間違っていますが、十分に近似しています。 –

関連する問題