当组件类型为0-255时,计算像素的平均值

时间:2015-12-09 03:41:40

标签: image-processing

我想将像素值转换为其平均灰度值。 R,G,B分量是1字节整数(0-255)。有没有办法计算像素的平均值(R + G + B)/ 3而不将组件转换为另一种类型?

我还想避免(R / 3 + G / 3 + B / 3),因为边缘情况如(2,2,2)将变为0而不是2。

1 个答案:

答案 0 :(得分:1)

div是整数除法(某些语言为//),mod为模运算(某些语言为%

Rd = R div 3
Rm = R mod 3
Gd = G div 3
Gm = G mod 3
Bd = B div 3
Bm = B mod 3
Average = Rd + Gd + Bd + (Rm + Gm + Bm) div 3