将图像转换为灰度

时间:2011-04-14 21:38:05

标签: image colors

如何将图像转换为灰度?我从维基百科得到以下引用:

  

将任何颜色转换为灰度   首先表示其亮度   一个人必须获得红色的价值,   绿色和蓝色(RGB)原色   线性强度编码,通过伽玛   扩张。然后,加在一起30%   红色值,绿色值的59%,   和蓝色值的11%

我能正确理解这句话吗?我会做这样的事情:

For each pixel P
    For each color c in P
        P.c = round(
            (max(min((P.red^gamma), 255), 0) * 0.3) + 
            (max(min((P.blue^gamma), 255), 0) * 0.59) +
            (max(min((P.green^gamma), 255), 0) * 0.11))

这是对的吗? 伽玛应该是什么?

2 个答案:

答案 0 :(得分:0)

我一直用gamma = 1.0实现(换句话说,忽略了)。

您可以在此处找到有关伽马校正的更多信息:http://en.wikipedia.org/wiki/Gamma_correction

答案 1 :(得分:0)

是的,这是正确的。我将使用Gamma 2.2。根据您打算在此之后使用此灰度图像的内容,Gamma 1.0可以更快更有用。