我需要创建一个像这样的 RGB 徽标,并且在灰度中它必须看起来像一种颜色。
即 50AA1E、2B94FF 和 D16E00 灰度为 808080
是否有将 rgb 颜色转换为灰色的公式?
提前致谢。
转换算法似乎是:
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
这是一种基于亮度的转换形式,非常接近(但不完全)PAL 和 NTSC 使用的模型。
我尝试了其他几种灰度转换公式,但这是唯一适合您给定测试数据的公式。