Искусственное повышение резкости. Минусы и плюсы метода «High Pass - Overlay»

Nov 01, 2010 11:29

Предыстория: теория, рассуждения и практические выводы, Unsharp Mask, Smart Sharpen, , алгоритмы работы фильтра High Pass и режима наложения Overlay.

Разобравшись с алгоритмом работы High Pass и Overlay, можно начинать подсчитывать выигрыши от их применения и сопутствующие этому проблемы. В это раз картинок не будет, только анализ с полезными для практического применения выводами.

Минусы метода «High Pass - Overlay»

Минус первый: отсутствие Threshold (порога срабатывания).

Как я уже писал выше, Threshold не решает всех проблем, связанных с усилением шумов при нерезком маскировании, и если основным критерием работы является качество, нерезкое маскирование все равно требует серьезной ручной доработки. Однако если во главе угла стоит скорость обработки, регулятор Threshold оказывается серьезным подспорьем.

Вот мнение Дэна Маргулиса на эту тему, высказанное им в книге «Photoshop LAB Color» (врезка на стр. 135 русского издания): «Некоторые пользователи, пытаясь получить альтернативный эффект, дублируют слой, задают режим наложения Overlay и применяют фильтр High Pass из меню Filter \ Other. Этот способ не только более громоздкий, но и менее гибкий, поскольку в нем отсутствует параметр Threshold, что затрудняет подбор оптимального значения Radius».

С такой оценкой я категорически не согласен. Ниже будет показано, что метод «High Pass» является гораздо более гибким, чем Unsharp Mask, и открывает такие возможности обработки, которые даже не снились последнему. Да, он более громоздкий и долгий, чем простой вызов фильтра Unsharp Mask, но качество конечного результата того стоит.

Кроме того, как видно из описания принципов нерезкого маскирования, величина параметра Radius должна подбираться, исходя из особенностей конкретного изображения, но уж никак не из значения параметра Threshold. Изменение Radius в зависимости от величины Threshold - это компромисс в решении вечной дилеммы «увеличение резкости - усиление шумов», на который пользователи вынуждены идти ради единственной цели: скорости обработки. Единственное, в чем в данном случае прав Маргулис, это в упоминании второго минуса метода High Pass, пусть и в неверном контексте.

Минус второй: низкая наглядность процесса создания «карты маскирования».

Применяя фильтр к дубликату слоя, мы не можем посмотреть на результаты нерезкого маскирования, вместо этого мы видим серую картинку с едва проступающими контурами объектов. Можно cразу выставить верхнему слою режим наложения Overlay и только потом применять к нему High Pass, наблюдая в окне документа за изменениями изображения. Но эта картинка будет не совсем адекватна: мы меняем только один параметр Radius и видим промежуточный результат без учета последующей обработки «карты нерезкого маскирования» и подбора необходимой силы её воздействия на исходное изображение.

Это не чисто технический (как отсутствие Threshold), а скорее психологический минус, порождаемый отсутствием опыта у оператора. Начав использовать этот метод, вы достаточно быстро научитесь определять подходящий радиус даже по «серой картинке с контурами», а на первых порах можно использовать Unsharp Mask в качестве подсказчика. Вызовите Unsharp Mask, подберите подходящее значение Radius, сбросьте Unsharp Mask и используйте найденное значение Radius в фильтре High Pass.

Дополнение.
За полгода, прошедшие после первой публикации данного материала, я выработал методику практического применения метода High Pass, позволяющую не только обойти эту проблему, но и сохранить возможность последующего редактирования всех параметров нерезкого маскирования. Получился некоторый аналог корректирующего слоя «Unsharp Mask», но об этом чуть позже.

На этом недостатки метода «High Pass - Overlay», во всяком случае, те, которые сумел найти я, заканчиваются. Рассматривать «громоздкость» данного метода в качестве минуса несерьезно: при незатейливом скоростном применении время, затрачиваемое на него, равно (или как минимум сравнимо) времени работы с Unsharp Mask, а при серьезной вдумчивой обработке результат настолько превосходит «конкурента», что сравнение становится просто некорректным.

Плюсы метода «High Pass - Overlay»

И снова повторим: фильтр High Pass создает «карту нерезкого маскирования»: картинку, на которой отображены воздействия, оказываемые на исходное изображение при нерезком маскировании. Именно из факта разделения самого изображения и воздействия на него проистекает большинство плюсов данного метода. Между «картой» и изображением сохраняется только геометрическая связь (места расположения контрастных контуров), но полностью отсутствуют остальные связи: по цветовому тону, насыщенности и яркости.

Мы можем отдельно обрабатывать и изменять «карту нерезкого маскирования» (схему воздействия) и это не приведет к изменениям в изображении. В обратную сторону: мы можем как угодно обрабатывать (кроме, естественно, геометрических искажений) исходное изображение и это не вызовет изменения «карты нерезкого маскирования». Ситуация очень похожа на работу в Lab, где можно по отдельности работать с яркостью и цветом.

Плюс первый

Во время применения метода «High Pass - Overlay» практически не возникает проблемы появления светлых ореолов. Причиной этого является алгоритм наложения Overlay, описанный выше.

Плюс второй

Легко решается проблема появления цветных ореолов. Достаточно применить к «карте нерезкого маскирования» команду Image \ Adjustments \ Desaturate. В этом случае «карты» для всех каналов уравняются, что обеспечит одинаковое воздействие на все каналы и, следовательно, отсутствие цветовых искажений. Справедливости ради надо заметить, что алгоритм наложения Overlay не обеспечивает точного сохранения цветового тона, но реальные искажения настолько малы, что визуально не воспринимаются.

Плюс третий

«Карта» может быть подвергнута любой автоматической обработке без боязни повредить изображение. Простой пример: применив к «карте» Gaussian Blur, можно сгладить имеющиеся на ней шумы (ореолы вокруг шумов изображения), слегка пожертвовав резкостью ореолов нерезкого маскирования. Наложив теперь такую «карту» на исходное изображение, мы получим не такое сильное увеличение резкости, как до ее размытия (ореолы тоже пострадали от действия Gaussian Blur), но шумы на изображении будут усилены слабее, а главное - само изображение не будет нести на себе следов размытия. Провернуть такой фокус при использовании Unsharp Mask не получится: размытие затронет не только ореолы нерезкого маскирования, но и все остальные детали изображения.

Таким образом, пожертвовав Threshold, мы получили широчайшие возможности по автоматической (без ручного рисования) обработке «карты нерезкого маскирования». Все виды размытий, Dust&Scratches, Median, Despeckle к нашим услугам. Наиболее пытливые натуры могут даже попробовать сохранить «карту» в отдельный файл и обработать его в программе-шумодаве или использовать аналогичный плагин и применить его непосредственно к слою с картой. Все зависит только от вашего желания поэкспериментировать и найти для себя оптимальный инструмент.

Плюс четвертый

Если дело все-таки дойдет до ручного редактирования результатов нерезкого маскирования, а при серьезной работе над изображением это случится обязательно, то и здесь удобнее работать с «картой». Достаточно закрасить нейтральным серым те области, в которых нерезкое маскирование нежелательно. При этом сам слой «карты» может оставаться в режиме наложения Overlay, а вы будете видеть на экране, как вслед за кистью исчезает (или ослабляется) искусственное усиление резкости.

Я и сам так делал поначалу, но потом решил посмотреть, а что же происходит с «картой». Как ни странно, «серая картинка с призрачными границами объектов» оказалась очень визуально информативной при определении областей в которых происходит усиление шумов. Я сразу заметил области с недостаточным или чрезмерным усилением резкости.

Плюс пятый

Поскольку воздействие на исходное изображение еще не оказано (изменения не внедрены в само изображение), оно может быть усилено (можно просто сдублировать слой с «картой» столько раз, сколько потребуется, а можно почитать про шестой плюс), ослаблено (уменьшением непрозрачности слоя «карты») или совсем отменено (выключением слоя «карты») на любом этапе обработки изображения. То есть, работа с «картой» напоминает работу с корректирующим слоем. Это обеспечивает больше свободы и гибкости при обработке изображения.

Плюс шестой

На идею управления степенью воздействия ореолов с помощью инструмента Curves наталкивает сама структура построения карты: средне-серый (тон 128) не воздействует на исходную картинку, более светлый тон - осветляет, а более темный тон - затемняет изображение, причем тем сильнее, чем сильнее он отличается от средне-серого. Применим к слою с «картой» кривые, поставим центральную точку (Input 128, Output 128). Изменяя крутизну левой (для затемняющих ореолов) и правой (для осветляющих ореолов) половинок кривой мы можем управлять степенью их воздействия на изображение отдельно для затемняющих и осветляющих ореолов.

Причем, без «шаманских танцев» с несколькими слоями и режимами Darken/Lighten. Чем больше крутизна кривой, тем выше контраст ореолов и тем сильнее их воздействие на исходное изображение. Механизм аналогичен усилению/ослаблению цветности при работе с каналами a и b в режиме Lab. Увеличение крутизны кривой по сравнению с начальным значением аналогично увеличению параметра Amount фильтра Unsharp Mask больше 100% .

Для реализации hiraloam такое управление ореолами вдвойне полезно. При классическом нерезком маскировании (с малым радиусом) яркость ореолов не значительно отклоняется от средне-серого. Поэтому единственное, чем реально стоит управлять - это общим уровенем отклонения яркости. В случае hiraloam отклонение яркости оказывается гораздо больше. Кривые открывают возможность регулировать силу воздействия ореолов отделбно для слабо и сильно осветленных/заиемненных участков.

Плюс седьмой

Появляется возможность создать «карту нерезкого маскирования» на основе изображения, отличного от исходного. Вряд ли кому-нибудь придет в голову создавать «карту» из другой фотографий, но предварительно обработать копию исходного изображения перед применением к ней High Pass вполне разумно.

Помните идею Маргулиса об усилении резкости в разных каналах с разной интенсивностью (дополнительной обработке слабых каналов)? Ее смысл не в том, чтобы внести изменения именно в слабый канал, а в том, чтобы усиление резкости происходило по «карте» слабого канала, содержащего минимум шумов. Используя Unsharp Mask, невозможно отделить схему внесения изменений от самого изображения, поэтому приходится усиливать резкость в отдельном канале. Но мы-то можем это сделать, изготовив «карту нерезкого маскирования» из одного канала и применив ее ко всему изображению.

Перед применением фильтра High Pass вместо простого обесцвечивания воспользуйтесь командой Image \ Adjustments \ Channel Mixer. Поставьте галочку Monochrome для получения изображения в градациях серого и задайте рецептуру смешения каналов для него. Можете понизить долю или вообще исключить из смеси самый темный и шумящий канал (как правило Blue), можете понизить долю среднего канала (для портретов можно понизить долю Green, в котором «живут» поры кожи), можете оставить только слабый канал.

При микшировании каналов можно уделить внимание усилению контраста отдельных деталей. Для большего эффекта после микширования можно применить инструмент Curves. Если есть желание, можно использовать и более сложные методики формирования изображения: поэкспериментировать с режимами наложения при смешении каналов, использовать Black & White, перевести копию изображения в CMYK и взять в качестве заготовки только черный канал и т.д.

Главное - помнить одну вещь: неважно, как выглядит заготовка перед применением High Pass, важно, чтобы на ней граничные переходы были максимально контрастны, а шумы минимальны.

Плюс восьмой

Я уже упоминал о негативных последствиях повторного нерезкого маскирования (см. рассуждение второе). При использовании метода «High pass - Overlay» появляется возможность накладывать на изображение несколько «карт нерезкого маскирования», сделанных с разными установками Radius или полученных из различным образом обработанных исходных изображений (см. плюс седьмой). Надо только соблюдать простое правило: первоначальным источником для получения любой «карты нерезкого маскирования» должно являться изображение, резкость которого не изменялась. В этом случае ореолы создаются только вокруг исходных контрастных контуров.

Можно создавать сложные карты нерезкого маскирования с широкими ореолами в областях, лежащих на границе ГРИП не имеющих мелкой детализации, и узкими ореолами в областях с мелкой детализацией и высокой резкостью; с разной степенью воздействия (отклонение яркости ореолов от средне-серого) в разных областях.

Для этого создайте группу слоев. Первым в ней поместите слой со средне серой заливкой (128,128,128). Поверх него кладите слои с различными «картами» нерезкого маскирования. Используйте маски слоя и различные режимы наложения для получения удовлетворяющей вас финальной «карты нерезкого маскирования». Теперь просто задайте группе режим наложения Overlay (вместо стоящего по умолчанию Pass Through).

Плюс девятый

Сохраняется возможность тоновой и цветовой коррекции исходного изображения. Так как ореолы еще не внедрены в изображение, коррекция не будет воздействовать на них. Фактически воздействие «карты нерезкого маскирования» всегда будет последней «операцией», какой бы дополнительной обработке ни подвергалось лежащее ниже изображение.

Плюс десятый

Возможность произвести нерезкое маскирование послойного (не слитого в один слой) изображения. Для создания заготовки «карты нерезкого маскирования» отдайте команду Merge Visible (из выпадающего меню палитры Layers), зажав клавишу Alt. В результате на новом слое появится копия изображения, которая является результатом объединения слоёв. Аналогичный результат можно получить комбинацией клавиш Ctrl-Alt-Shift-E. Такая возможность особенно удобна при работе со сложными коллажами или при серьезной глубокой обработке изображения, так как позволяет сохранить его в хорошо редактируемом виде.

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

Замечание от Дэна Маргулиса.

«Сравнение High Pass  и традиционного USM сделано сильно, но не произвело на меня впечатления, потому что аргументы выглядят примерно так:

a) имеются красная и зеленая машины, обе без бензина;

b) поскольку бензина нет, мы должны толкать их чтобы заставить двигаться;

c) красная машина меньше, поэтому ее легче толкать;

d) однако, если заправить зеленую машину, можно было бы поехать на ней и анализ ситуации показал бы, что управляя зеленой машиной, можно добраться до многих мест, куда невозможно было бы попасть толкая красную;

e) таким образом, зеленая машина лучше чем красная, Ч.Т.Д.

Мой коментарий в книге, косающийся сравнения High Pass и USM, сделан в контексте традиционного рабочего потока, когда повышение резкости делается быстро. Если, скажем, мы согласимся с тем, что повышение резкости должно быть сделано максимум за 20 секунд без применения каких-либо скриптов или экшенов, тогда, я полагаю, мы согласимся и с тем, что High Pass не выдерживает соревнования.

В этом случае можно:
a) сдублировать слой;
b) применить к нему USM с Amount 500%, Radius и Threshold по вкусу;
c) наложить поверх всего копию исходного слоя в режиме Darken с непрозрачностью 50%;
d) добавить настройки Blend If если необходимо управлять ореолами в тенях;
e) настроить непрозрачность слоя по вкусу

Можно получить аналогичный результат используя High Pass или, что то же самое, Gaussian Blur. Однако, каждый из этих путей потребует дополнительных шагов и в обоих случаях будет тяжело оценить, какими должны быть начальные настройки. Таким образом, при ограничении времени, нет смысла использовать High Pass.

Если есть больше времени, вы предлагаете ряд интересных вещей, которые можно реализовать используя результат действия фильтра High Pass. Все зависит от того, имеем ли мы карту ореолов.

Используя USM (или Gaussian Blur), можно легко создать такую же карту ореолов, просто вычтя оригинал из отшарпленной версии. С этой картой можно добиться всего того, что вы предложили сделать при помощи High Pass.

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

1) Я пришел к выводу, что насыщеный цвет - это аргумент против повышения резкости, а нейтральный - аргумент за. Поэтому мне понадобилось каким-то образом автоматизировать создание маски цетовой насыщенности.

2) Сегодня мы часто встречаемся с необходимостью вычищать грязь, которая возникает в результате избыточного шарпа в камере или в Raw-конвертере, когда мы не имеем исходной (не шарпленной) версии изображения. Это требует метода, который позволяет подчеркивать более слабые ореолы не затрагивая более сильные, этакой «обратной отсечки» ("Reverse Threshold").

Экшены делают это, как и многое другое, например, создание темных и светлых ореолов с различными радиусами. Однако они построены не на прямом применении USM, а на создании карт ореолов, подобных той, которую делает High Pass. RGB-экшен создает два слоя с ореолами на средне-сером фоне, наложенные в режиме Linear Light (так же, как делает High Pass). Ореолы создаются при помощи Gaussian Blur.

Lab-экшен, представляющийся более практичным, использует USM для создания темных ореолов на белом фоне и светлых на черном. Они накладываются на изображение в режимах Multiply и Screen.

По этой причине ваши выводы кажутся мне не очевидными, а возможность создания карты ореолов при помощи USM - невыявленной. Однако, это не должно умалять общую ценность статьи, которая весьма значительна.»

При моем искреннем уважении к Дэну, у него есть одна скверная привычка: в споре он ставит такие граничные условия, которые априори делают его позицию беспроигрышной. А кто сказал, что у меня «нет бензина»? Почему мы должны отводить на повышение резкости всего 20 секунд и обходиться при этом без экшенов?

Краткую версию моего ответа Маргулису, ее развернутый вариант с разбором практических приемов и реакцию Дэна можно будет прочитать в следующий раз.

Желающие посетить очные занятия по цветокоррекции и обработке изображений могут познакомиться с программами и списком ближайших мероприятий в  заглавном посте моего ЖЖ. Там же вы найдете ссылки на другие мои статьи.

Без предварительного согласования с автором разрешается перепечатка и размещение этого материала на любых ресурсах с бесплатным доступом при условии полного сохранения текста (в том числе и этого раздела), ссылок и иллюстраций, указания авторства и ссылки на первую публикацию.

Для коммерческого использования или перепечатки с внесением изменений необходимо согласование с автором. Связаться со мной можно по электронной почте zhur74@livejournal.com

© Андрей Журавлев (aka zhur74), ноябрь 2008 г.
Редакция вторая (октябрь 2010 г.) переработанная и дополненная.
Первая публикация http://www.microstock.ru/forum/showthread.php?t=3499

Повышение резкости, Теория, overlay, high pass

Previous post Next post
Up