Недавно
ivan-moiseev подсказал тест, который наглядно демонстрирует, как работает инструмент Vibrance и чем он отличается от Saturation. Разрешите поделиться некоторыми размышлениями.
Насыщенность
Для начала давайте разберемся, что такое насыщенность. Если вас интересуют формулы, в доступном виде почитать об этом можно, например, в статье Алика Войтеховича
Повесть о цветовой насыщенности (часть 1.1). В рамках данного документа скажу лишь, что насыщенностью или интенсивностью цветового оттенка называют чистоту цвета, то есть его отличие от равного по яркости серого цвета. В цветовой модели RGB максимальной насыщенностью обладает любой цвет, в котором значение одного из каналов RGB равно нулю. Два других значения определяют цветовой оттенок, а максимальное значение - яркость цвета.
Если, например, взять чистый красный цвет (255,0,0) и начать снижать его насыщенность, то получим:
Как видно, с понижением насыщенности в чистый красный цвет как бы подмешивается серый цвет, уравновешивая его к аналогичному по яркости серому. При полностью сниженной насыщенности мы получили чистый серый цвет (равное значение во всех трёх каналах).
Обратное движение - насыщение цвета, происходит аналогично. Из красного как буд-то вычитается серый:
Нетрудно заметить, что значительное насыщение цвета в итоге грозит потерей информации в каких-либо каналах. Это особенно актуально для и без того насыщенных цветов - в этом случае даже незначительное насыщение может нивелировать разницу между двумя соседними оттенками, "схлопнув" их в один цвет. В итоге мы получаем зоны перенасыщения, без графической информации, в чём-то аналогичные пересветам.
Это хорошо видно на следующем примере. Возьмём плавный градиент от (255,0,0) к (0,0,0) и поднимем для него насыщенность +100%. Чёрной вертикальной линией обозначена зона насыщения - все цвета слева от этой линии превратились в один монотонный цвет (255,0,0). Т.е. Фотошоп не сделал различий между цветами, скажем, (254,0,0) и (210,0,0).
+100% насыщенности в реальной жизни, конечно, редко кто делает. Но даже реально используемые +15% в подобных случаях дают так называемый клиппинг - слипание близких оттенков и потерю графической информации:
Здесь надо сделать некоторое уточнение. Дело в том, что ползунок Saturation в Фотошопе работает по-разному в инструментах Hue/Saturation и Vibrance (появился в CS4). На текущем этапе не возьмусь описывать разницу, это отдельная тема для исследования. Чисто визуально насыщенность в новом инструменте Vibrance работает более деликатно, чем в старом Hue/Saturation. То же самое утверждается в анголязычной статье
Analyzing Photoshop Vibrance and Saturation американского фотографа Марка Мейера. Кроме этого, разница между Saturation и Vibrance интересна в первую очередь с точки зрения использования в RAW-конверторах, а сами инструмент Vibrance пришёл в Фотошоп именно из Adobe Lightroom и Adobe Camera RAW. Поэтому здесь и далее, говоря про Saturation, мы будем использовать соответствующий ползунок из инструмента Vibrance. И сравнивать его с ползунком Vibrance в этом же инструменте.
Для того, чтобы избежать описанного клиппинга перенасыщения и был придуман инструмент Vibrance. Его работу можно достаточно наглядно увидеть на следующем тесте.
Тест: Saturation и Vibrance
За основу берём цветной градиент типа "радуга". Крайние точки - красные (255,0,0), все промежуточные также максимально яркие и насыщеные - (255,0,255), (0,0,255), (0,255,255), (0,255,0) и (255,255,0).
Рисуем градиент горизонтально. Поверх создаём слой Vibrance, в котором уводим Saturation до -100% под вертикальной яркостной градиентной маской. Получаем вот такую картинку.
По горизонтали мы получили радугу цветов, по вертикали изменение их насыщенности от максимальной до нуля.
А теперь попробуем поднять насыщенность этой картинки двумя способами:
1. Saturation +100%
2. Vibrance +100%
Хорошо видно, что Saturation честно поднял насыщенность для всех цветов - как насыщенных, так и не насыщенных. В итоге в насыщенных цветах мы получили цветовой клиппинг. Vibrance же, даже при таком большом значении как +100% картинку не разрушил. Самые насыщенные цвета остались прежними, средне-насыщенные насытились существенно, мало-ненасыщенные также почти не насытились. Другими словами, Vibrance увеличивает насыщенность нелинейно. До определённого порога насыщенности (более-менее нейтральные тона, визуально примерно до 20% насыщенности) почти не трогает, сильно насыщенные (визуально примерно свыше 80%) также мало затрагивает, остальное (середина, т.е. примерно 20-80% насыщенности) насыщает сильнее. Зон перенасыщения, соответственно, также не появляется.
Надеюсь, эта статья оказалась вам полезной. Если кто знает, буду благодарен за информацию относительно различий действия Saturation в инструментах Hue/Saturation и Vibrance. Ну и вообще, можно критиковать - наверняка чего нового узнаю :) Спасибо!
UPDATE. Настоятельно рекомендую внимательно причитать комментарии к этой статье. Самые важные соображения и выводы именно там.