Эффект Instagram Lux

Instagram недавно добавила кнопку Lux, которая позволяет автоматически контрастировать/выравнивать фотографии, которые вы делаете.

У меня есть куча картинок, которые мне нужно автоувеличить аналогичным образом, делая эти фотографии лучше. Если бы я хотел использовать командную команду с Imagemagick, какими были бы "секретные ингредиенты"? Должен ли я просто придерживаться настройки контрастности или играть с уровнями и т.д.?

Поскольку я не знаю, будет ли исходное изображение темным, ярким, уже контрастированным, мне нужно будет проанализировать рис. перед его обработкой.

Поэтому 2 вопроса:

  • Каковы настройки, на которые я должен обратить внимание при создании моей пакетной команды для Imagemagick, которая будет последовательно выводить более качественные фотографии?

  • Имеет ли смысл запускать пакет и возвращать "ложные срабатывания" вручную позже (у меня есть около 50 000 фото для обработки)?

1 ответ

Простым линейным способом выполнения "автоконтрастности" является линейное растяжение и смещение интенсивностей изображения. Идея состоит в том, чтобы найти параметры коррекции растяжения (контраста) и смещения (интенсивности), так что в исправленном изображении пятый процентиль будет отображаться в 0, а 95-й процентиль будет отображаться на 255.

Мой пример для изображения в оттенках серого. Для цветных изображений вы можете конвертировать в любое цветовое пространство с одним каналом интенсивности и двумя цветными каналами (например, Lab, HSV, YUV и т.д.) И выполнять это только по каналу интенсивности.

  • Создать гистограмму изображения
  • Найдите пятый и 95 процентиль серого значения (используйте накопленную сумму по значениям гистограммы).
  • Решите для a и b в этих двух простых линейных уравнениях: a*p5+b=0 и a*p95+b=255, где p5 и p95 являются пятым и 95 процентами серого значения соответственно.
  • a - контраст, а b - поправки интенсивности.
  • Теперь сопоставьте все ваши интенсивности серого пикселя в соответствии с уравнением: g'=a*g+b для всех g= 0..255.

Конечно, вы можете использовать разные значения для процентиля и фактических сопоставлений. Посмотрите, что работает для вас.

licensed under cc by-sa 3.0 with attribution.