【问题标题】:is there a formula to convert rgb color to gray是否有将rgb颜色转换为灰色的公式
【发布时间】:2013-09-03 09:22:50
【问题描述】:

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

即50AA1E、2B94FF 和 D16E00 灰度为 808080

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

提前致谢。

【问题讨论】:

    标签: colors hex formula


    【解决方案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

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

    【讨论】:

      猜你喜欢
      • 2019-02-08
      • 1970-01-01
      • 1970-01-01
      • 2021-11-27
      • 2013-01-12
      • 2021-12-14
      • 2018-06-16
      • 1970-01-01
      • 2011-05-05
      相关资源
      最近更新 更多