在 ImageMagick -auto-gamme 选项中输出计算出的 gamma

Output the calculated gamma in ImageMagick -auto-gamme option

我需要知道当我们使用以下命令时 ImageMagick 自动计算的伽玛校正级别

转换 in.jpg -自动伽玛 out.jpg

这可能吗?

谢谢

如果我没记错的话,-auto-gamma would call the AutoGammaImage方法,并应用下面的等式。

gamma = log(pixel_mean)/log(0.5)

因此,要计算应用的伽马校正值,您可以执行类似...

的操作
 pixel_mean=$(identify -format '%[mean]' rose:)
 echo "l($pixel_mean)/l(0.5)" | bc -l
 #=> -14.72189

正如Mark在评论中指出的那样,您也可以使用ImageMagick FX language来计算。

identify -format '%[fx:ln(mean*QuantumRange)/ln(0.5)]' rose:
#=> -14.7219

-auto-gamma 是一个实验性选项。对于每个颜色通道,它计算所有像素的平均值,然后应用

  gamma=log(mean)/log(0.5)

每个样本。直到现在我才尝试过,但在这张 question.

中曝光严重不足的照片上它确实效果很好

至于在转换后发现应用了什么 gamma,这不是直接报告的,但您可以在原始图像上使用 "identify" 并查看每个报告的 "mean"通道来找出将要使用的伽马,如 emcconville 的回答。