gpt4 book ai didi

colors - 灰度 CMYK 像素

转载 作者:行者123 更新时间:2023-12-02 00:11:33 29 4
gpt4 key购买 nike

我需要将 CMYK 图像转换为灰度 CMYK 图像。起初我以为我可以使用与 RGB -> 灰度转换相同的方法,比如 (R + G + B)/3 或 max(r, g, b)/2 + min(r, g, b)。但不幸的是,这对 CMYK 效果不好,因为 CMY 和 K 是多余的。黑色 cmyk (0, 0, 0, 255) 将变为 64。我应该只使用

int grayscaled = max((c + m + y) / 3, k)

或者它会更棘手吗?我不确定,因为 CMYK 实际上是一种冗余颜色模型,相同的颜色可以用不同的方式编码。

最佳答案

RGB 转换为灰度有多种方法,提到的平均 channel 就是其中之一。使用来自颜色空间 YCbCrY channel 也是一个常见的选项,以及来自 LABL channel ,在其他选项中。

根据 http://www.easyrgb.com/index.php?X=MATH 中的公式,将 CMYK 转换为 RGB 很便宜,然后您可以使用众所周知的方法转换为灰度。假设cmyk在[0, 1]范围内,我们可以将其转换灰度亮度如下:

def cmyk_to_luminance(c, m, y, k):
c = c * (1 - k) + k
m = m * (1 - k) + k
y = y * (1 - k) + k

r, g, b = (1 - c), (1 - m), (1 - y)
y = 0.299 * r + 0.587 * g + 0.114 * b
return y

另见 http://en.wikipedia.org/wiki/Grayscale有关此转换为灰度的更多信息。

关于colors - 灰度 CMYK 像素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15026409/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com