Как повторить результат фильтра Vibrance/Saturation из Photoshop в ImageMagick?

Всем привет!

Встала задача автоматически "улучшать" изображения, а именно увеличивать насыщенность.
Взял фотошоп и начал экспериментировать.
Исходное изображение
93fa1c3e37114651bc9a2e43aa1f6ca0.jpg

Есть в фотошопе 2 фильтра для увеличения насыщенности изображения:
Hue/Saturation и Vibrance.

Вот результат работы первого фильтра:
25bd80bf286741fd8f0b8d1d7b30fab9.jpg(вместе с настройками)

Вот второго:
6a1d8a102dd043c1a5d0c04bc9efc745.jpg(вместе с настройками)

Невооружённым взглядом видно, что разница есть и довольно значительная (просто посравнивайте оба варианта в соседних вкладках). Во втором случае цвета насыщеннее, более мягкие, меньше артефактов и "кислотности". Лазурное небо, голубое море, зелёная травка, нежно-жёлтый песочек.. Словно в рай попал!
На более крупных значениях в первом варианте кислотности становится только больше, цвета искажаются, артефакты заполоняют всю плоскость изображения.
А вот во-втором - даже при значении "100" артефактов практически нет.
Хотя казалось бы - одинаковое название, одинаковый диапазон значений - но всё же результат разный.

И запал мне в душу этот Saturation из фильтра Vibrance. Да на столько, что обычный hs(+40)l теперь вообще не радует.

Взял я ImageMagick и попытался повторить результат.
И сколько бы я не бился, сколько бы не гуглил - ничего подобного даже близко не получилось.

И так пробовал:
convert tmp.jpg -colorspace HSL \
  -channel B -evaluate multiply 1 \
  -channel G -evaluate multiply 1.40 \
  +channel -colorspace sRGB result.jpg

и сяк:
convert tmp.jpg -set option:modulate:colorspace hsl -modulate 100,140 result.jpg

и даже эдак:
convert i.jpg -sigmoidal-contrast 1x10% -alpha off i_contrast.jpg

convert -set option:modulate:colorspace HSB \( i_contrast.jpg -modulate 100,140,100 \) \
  \( -clone 0 \( -clone 0 -modulate 100,100,100 \) -compose difference -composite -auto-level -negate \) \
  -compose CopyOpacity -composite i_saturation_mask.jpg

composite i_saturation_mask.jpg i_contrast.jpg result.jpg


И всё это не то, всё это как-то.. никак.

Наиболее близким оказался вот такой вариант:
convert tmp.jpg -color-matrix "1.329212 -0.32496 -0.004252 -0.070788 1.07504 -0.004252 -0.070788 -0.32496 1.395748" result.jpg

И вот вроде всё хорошо, но "лазурности" неба и воды повторить не получилось. А это для меня самое главное.

Как же быть? Неужели даже всемогущий ImageMagick не способен повторить такое чудо? Ведь чувствую же, что способен, только вот нащупать никак не могу..

Господа и дамы, кто сталкивался? Кто знает? Кто подскажет? Очень уж хочется такого эффекта. Именно из-за "лазурности", ибо она как влитая ложится на тематику фотографий.
Кажется мне, что надо с color-matrix экспериментировать, но подбирать вручную - это неделю можно сидеть..

Очень надеюсь на вашу помощь!
  • Вопрос задан
  • 2546 просмотров
Пригласить эксперта
Ответы на вопрос 1
@derian1337
советую воспользоваться сайтом этих ребят https://filtruem.ru все расскажут, все покажут)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы