这与我在 tex.stackexchange 上提出的一个问题有关,该问题具有颜色方面。该问题的结果如下图:
我在左边画了一系列灰色方块,右边有一个红色分支。目标是使不同的红色方块具有不同的饱和度,但都具有相同的灰度值。在 hsv 颜色模型中,它们都具有相同的v
,但是当我使用 Gimp 将图像转换为灰度时,它们不会转换为相同的灰度。视觉印象也是右边的红色方块比左边的更暗。
给定某种灰色,我如何计算具有某种色调和相同灰度值的颜色(或者,甚至更好,具有相同的灰度印象)?图像中使用的颜色都是经过计算的,所以我更喜欢包含计算的解决方案。
我可能在这里使用了错误的术语 - 我是一名机械工程师,所以请在适当的地方纠正我,或要求澄清。
使用 Lab 颜色空间的建议让我得出了一些结论:
我可以使用 Lab 模型的
L
值来为不同的颜色设置某种灰度值。在 hsv 模型中,这是v
. 我不确定我是否真的可以比较这些,但我会这样做,直到有人抱怨。在 hsv 模型中,我还可以设置一些在 Lab 模型中找不到的“基色”(色调)。
在 hsv 模型中,我有 2 个常量(在上图中:
h
= 0,v
= 0.375)和一个变量(s
)。到目前为止,我在 Lab 模型中只有一个常数。这不足以生成类似于我已经用 hsv 模型制作的东西。
我想是时候进行实验了。
完毕!在我运行转换代码后,这很容易。第一步是在右侧定义“目标红色”。我计算了RGB2Lab(255,0,0),把结果的L值改成了图中想要的L(L=62.5)。颜色是使用 Lab 空间中从 (L,0,0) 到 (L,aTarget,bTarget) 的线性插值计算的。结果:
谢谢!