当我们使用以下命令时,我需要知道 ImageMagick 自动计算的伽马校正级别
转换 in.jpg -auto-gamma out.jpg
那可能吗?
谢谢
当我们使用以下命令时,我需要知道 ImageMagick 自动计算的伽马校正级别
转换 in.jpg -auto-gamma out.jpg
那可能吗?
谢谢
如果我没记错的话,-auto-gamma
会调用该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 语言来计算。
identify -format '%[fx:ln(mean*QuantumRange)/ln(0.5)]' rose:
#=> -14.7219
-auto-gamma 是一个实验选项。对于每个颜色通道,它计算所有像素的平均值,然后应用
gamma=log(mean)/log(0.5)
到每个样本。直到现在我才尝试过,但它在这个问题中严重曝光不足的照片上效果很好。
至于在转换后找出应用了什么伽玛,这不是直接报告的,但您可以在原始图像上使用“识别”并查看为每个通道报告的“平均值”以找出将是的伽玛使用,如 emcconville 的答案。