是否有一个公式将rgb颜色转换为灰色

时间:2013-09-03 09:22:50

标签: colors hex formula

我需要像this one一样在RGB中创建徽标,在灰度中它必须看起来像一种颜色。

即。灰度级的50AA1E,2B94FF和D16E00是808080

是否有将rgb颜色转换为灰色的公式?

提前致谢。

1 个答案:

答案 0 :(得分:1)

转换算法似乎是:

Grey = NearestInteger(R*0.3 + G*.59 + B*.11)

50AA1E -> 80,  170, 30  -> 80*0.3  + 170*0.59 + 30*0.11  -> 24   + 100.3 + 3.3   = 127.6  -> hex(127.6)  = 80
2B94FF -> 43,  148, 255 -> 43*0.3  + 148*0.59 + 255*0.11 -> 12.9 + 87.32 + 28.05 = 128.27 -> hex(128.27) = 80
D16E00 -> 209, 110, 0   -> 209*0.3 + 110*0.59 + 0*0.11   -> 62.7 + 64.9  + 0     = 127.6  -> hex(127.6)  = 80

这是一种基于光度的转换形式,非常接近(但不完全)模型used by PAL and NTSC

我尝试了其他几种灰度转换公式,但这是唯一适合您给定测试数据的公式。