RGB 到 Munsell/色调和色调转换

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

我想将颜色从 RGB 转换为色调和色调(色度和值)130 系统。我已经搜索过,但似乎没有直接的方法,并且没有可用的 python 库。一些参考文献说 RGB 应该首先转换为 sRGB,然后我们可以概括 Munsell(色度、值和色调)以从中得出色调和色调。另一种方法是我们应该将 RGB 转换为 XYZ,然后提取 Munsell 并用它来制作色调和色调版本。其他一些方法只是量化 RGB 直方图,并没有解释具体如何量化。有什么明确的方法可以做到这一点吗?如果有人知道请帮忙。

image-processing colors rgb hue srgb
1个回答
0
投票

Python 中有一个非常好的颜色科学库,称为 Colour,通过它您将能够执行从 sRGB 到 Munsell 的转换。代码将是这样的:


    import colour

    def sRGB2Munsell(sRGB):
    
        # sRGB is expected to have the following format: (R, G, B), where RGB values range from 0 to 1
        # e.g: sRGB = (0.96820063, 0.74966853, 0.60617991)
        C = colour.CCS_ILLUMINANTS["CIE 1931 2 Degree Standard Observer"]["C"]
    
        Munsell = colour.xyY_to_munsell_colour(colour.XYZ_to_xyY(colour.sRGB_to_XYZ(sRGB, C)))
        return Munsell

先在 Python 环境中安装该库,如下所示:pip install color-science

这里最主要的是要小心用于转换的光源常数,请阅读此内容以进行澄清 -> 颜色理论:如何将 Munsell HVC 转换为 RGB/HSB/HSL

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