Instagram Lux效果

时间:2012-03-16 20:43:10

标签: image-processing imagemagick instagram

Instagram最近添加了一个Lux按钮,可以对拍摄的照片进行自动对比/调平。

我有一堆图片,我需要以类似的方式自动调整,使这些照片更好看。如果我想在Imagemagick中使用批处理命令,那么使用什么“秘密成分”?我应该坚持对比度设置,还是玩水平等?

由于我不知道原始图片是否暗,亮,已经对比,我需要在处理之前分析图片。

因此有2个问题:

  1. 在为Imagemagick创建批处理命令时,我应该注意哪些设置能够始终如一地输出更好看的图片?

  2. 运行批处理并稍后手动恢复“误报”是否有意义(我有大约50,000张照片需要处理)?

2 个答案:

答案 0 :(得分:29)

执行“自动对比”的简单线性方式是线性拉伸和偏移图像强度 想法是找到拉伸(对比度)和偏移(强度)校正参数,使得在校正图像中第5百分位将被映射到0,并且第95百分位将被映射到255.

我的例子是灰度图像。对于彩色图像,您可以转换为具有单个强度通道和2个颜色通道(例如Lab,HSV,YUV等)的任何颜色空间,并仅在强度通道上执行此操作。

  1. 创建图像直方图
  2. 找到第5和第95个灰度值百分位数(在直方图值上使用累加和)。
  3. 在这两个简单的线性方程中求解ab
    a*p5+b=0a*p95+b=255,其中p5p95分别是第5和95个灰度值百分位。
  4. a对比b强度更正。
  5. 现在根据等式g'=a*g+b为所有g = 0..255映射所有灰度像素强度。
  6. 当然,您可能希望为百分位数和实际映射使用不同的值。看看哪些适合你。

答案 1 :(得分:0)

对于那些在很长一段时间内没有解决线性方程式的人(例如I),这里公式中的Adi Shavit's answer(使用伪代码)中的必需参数-我将p5重命名为p95p1p2(因为5只是一个建议):

p_div := float(p1) / p2;
b := -255 * p_div / (1 - p_div);
a := (255 - b) / p2;

我不知道是否可以更轻松地完成此操作,但是您可以检查一下:

a * p1 + b  -> 0
a * p2 + b -> 255