2种颜色混合在一起。如果我得到的颜色的RGB和混合的其中一种颜色的RGB,那么我可以计算第二种颜色吗?
我会尝试用肉眼解释我想说的话。这是一个flickr链接
http://www.flickr.com/photos/48150615@N08/4407414157
我知道中间的圆圈的不透明度为20%
有没有办法知道圆的颜色值,以便我可以扣除它以获得与背景颜色相同的颜色值。
答案 0 :(得分:3)
如果我理解正确的任务......
让我们做一些学校数学
c是初始图像的颜色,t是透明色的颜色,a(对于alpha)是透明度,c'是结果颜色。
c' = (1 - a) * t + a * c
你想找到c。
c = (c' - (1 - a) * t) / a
你需要知道a,t和c'
答案 1 :(得分:3)
首先,这取决于你如何混合它们。也就是说,你可以平均RGB分量(这意味着蓝色(0,0,255)+黄色(255,255,0)==灰色(128,128,128)),或者你可以处理色调,饱和度和值,这通常会提供更多“如预期的那样”结果。
无论如何,无论如何,这是一些简单的数学:
C3 = (C1 + C2) / 2
C2 = (C3 * 2) - C1
答案 2 :(得分:1)
CIELAB色彩空间专门用于计算色彩之间的差异,但在您的情况下可能有点过分。可能HSV很容易为您解决。
答案 3 :(得分:0)
只需减去每个组件。组件通常以十六进制格式存储,在这种情况下,您需要将数字转换为十进制或进行十六进制数学运算。