我正在开发一个提供用户一些图像处理功能的Android应用程序。但在应用任何图像变换函数之前,我想进行伽马校正以改善图像质量。我知道如何执行伽马校正,但是不知道应该使用什么伽马值,因为图像本身没有记录创建图像时所使用的伽马值。有关如何为特定图像选择伽马值的任何信息将非常有帮助。
我正在开发一个提供用户一些图像处理功能的Android应用程序。但在应用任何图像变换函数之前,我想进行伽马校正以改善图像质量。我知道如何执行伽马校正,但是不知道应该使用什么伽马值,因为图像本身没有记录创建图像时所使用的伽马值。有关如何为特定图像选择伽马值的任何信息将非常有帮助。
看起来你真正想要的是调整图像的平均亮度来匹配某个最佳值。是的,伽玛函数可以实现这一点。实际上,在曝光过度或不足的情况下,简单的线性乘法可能更好。但是,现在让我们先使用伽玛。
测量图像的平均亮度,并称其为 a
,取值范围为 0-255。您有一个用于最佳亮度的目标,我们将其称为 t
。如果未知伽玛值为 g
,则可以得到以下公式:
t/255 = (a/255)^g
g
的公式为:g = log(t/255) / log(a/255)