Простой способ создания масок сложной формы

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

Маски - это наиболее широко используемый способ оставить доступной для рисования или любого другого изменения только часть изображения. Кроме того, с помощью масок часто в фотографии вводятся новые объекты. Поэтому практически каждое действие, выполняемое компьютерным художником при творческой работе с фотографическими изображениями, начинается с создания маски.

Понятно, что если придется потратить на это полчаса, исчезнет всякое желание возиться с этими компьютерными картинками. Тогда проще сделать тот же коллаж дедовским способом с помощью ножниц и клея. Естественно, что авторы графических редакторов постарались оснастить свои программы богатым набором средств создания масок.

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

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

И наконец, не танцевать! То есть маску можно нарисовать. Простыми инструментами рисования - карандашом, кистью, аэрографом и т.п. С учетом присущих каждому из инструментов особенностей. Нарисованные маски не только могут достаточно точно (тут все зависит от вашего мастерства и упорства) повторять контуры реальных предметов, но и обладать управляемой художником полупрозрачностью.

В принципе маска представляется в редакторах полутоновым черно-белым изображением, на котором черные точки оставляют соответствующие расположению пикселы в основной картинке доступными изменению, белые, наоборот, полностью исключают любые изменения, а серые пропускают воздействие фильтра или инструмента в пропорционально своему оттенку ослабленном виде.

Благодаря этому подходу можно создавать маски сколь угодно сложной формы, включающие не менее хитроумные полупрозрачные области. Их можно легко записывать на диск и загружать с него при необходимости. По большому счету, любая черно-белая фотография может стать маской. Так что для сложности предела нет. Но вот как строить маски попроще, не тратя на это уйму времени и сил? И тут приходит естественная мысль - а не сделать ли маску из самой фотографии, вместо того чтобы ее рисовать вручную? Можно. Не всегда получается, но можно. Разумеется, для этого тоже есть свои приемы, неизвестные не только начинающим, но и многим профессионалам.

Рассмотрим проблему, как всегда, на несложном примере. Задача следующая. Имеется фотография снятой на фоне голубого безоблачного неба скалы в пустыне ( пример 1 ).

Такое небо нас не устраивает, и мы хотим затянуть его облачной дымкой. Выполним задачу средствами Adobe Photoshop 4.0. Я попробовал для сравнения ту же работу сделать в Corel Photopaint 7.0 и убедился, что, несмотря на исключительное богатство фильтров, типов кистей и прочие навороты, рисует он по-прежнему плохо, рывками какими-то, и потому его нельзя назвать лучшим выбором для таких работ.

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

И все же попробуем кое-что сделать. Фотография Rocks.tif у меня цветная, и для построения маски стоит посмотреть составляющие каналы - красный, зеленый и синий. Конечно, среди них найдется такой, на котором контраст между небом и остальными предметами сильнее, чем на фотографии в целом. Открываю палитру каналов Channels. В данном случае это синий канал, но для других снимков им может оказаться и красный, и зеленый.

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

О'кей, я остановился на синем канале. Для создания маски его надо скопировать на новый канал. В Photoshop это делается исключительно легко ( пример 2 ). Следует просто перетянуть мышкой в палитре Channels синий канал на кнопку создания нового канала (на пиктограмму чистой странички). Появился канал, обозначенный как #4, с которым можно безбоязненно работать, так как он не входит в цветовую модель и картинку поэтому не испортишь.

Я выбрал самый контрастный канал, такой, на котором небо - самое светлое, а все остальное - самое темное. Но все же не белое и не черное. Следовательно, предстоит усилить контраст, доведя картинку до того, чтобы в ней остались лишь эти два цвета.

Любой, кто проработал с графическими редакторами больше недели, сразу же скажет, что сделать это можно с помощью регулировки уровней полутонов (Levels) или кривой передачи (Curves). Это если хочется поточнее все выставить. Проще всего воспользоваться командой Image/Adjust/Threshold, которая передвижением всего одного ползунка позволяет задать точку, относительно которой более светлые полутона будут заменены белым, а более темные - черным. Регуляторами яркости и контраста ничего путного не добьешься, это даже совсем зеленые новички понимают.

И все-таки перечисленные средства не самые лучшие. Есть в арсенале Photoshop кое-что получше - инструменты тонирования Dodge (осветлитель) и Burn (затемнитель). Это очень интересные средства, которыми не любят пользоваться художники, не понимая сути их работы. А ведь любой фотограф знает (и умеет), как подправить при печати переэкспонированную с одного края фотографию. Для этого следует уменьшить время засветки (экспонирования) фотобумаги в том месте, где снимок слишком темный. Просто прикрыв от света проектора на несколько секунд этот край рукой.

По этому принципу и действуют инструменты Dodge и Burn. Применение первого соответствует сокращению времени экспонирования, а второго - увеличению. Основное отличие в том, что применять эти инструменты можно отдельно к светлым (highlights), к средним (midtones) или к темным (shadows) полутонам, не затрагивая другие по тональности пикселы. Это принципиальное отличие от действующих сразу на все пикселы независимо от их тона фильтров Layers, Curves и Threshold.

Смотрите. Мне надо довести небо (и только небо) до чистого белого цвета, а все остальное затемнить до черного. Но на скале есть участки, которые практически не темнее неба. Если воспользоваться фильтрами, то и они окажутся белыми и придется потом поработать карандашом. Я поступлю иначе.

Чтобы сильнее осветлить светлое (то есть относящееся к верхней трети тонального спектра - highlights) небо, я активизирую инструмент Dodge, открываю палитру с опциями для него и выбираю в качестве зоны действия Highlights, то есть только светлые пикселы ( пример 3 ). Экспозиция (Exposure) должна быть в пределах 30 - 50%, чтобы, с одной стороны, не выбеливать слишком сильно, но, с другой, и не возиться долго. Осветлять небо предстоит вручную, и для этого рекомендую воспользоваться довольно большой кистью с мягкими краями.

Проводим мазками Dodge по небу до тех пор, пока оно не станет практически белым. Обратите внимание, что на скалу, даже когда по ней проходит инструмент, эффект почти не действует. Ну вот, с небом разобрались. Теперь остальные участки картинки. Их надо затемнить до черного. Приступаем к этому, переключив в палитре Options инструмент на Burn и область действия на Shadows. Кисть и экспозиция пусть остаются теми же.

Практически готово. Если у вас на канале #4 остались сомнительные места на границе между черной и белой областями или на скале кое-что не удалось затемнить, попробуйте переключить Burn на действие в средней части спектра (Midtones). Не расстраивайтесь, если с первого раза получится не очень точная маска. Как и при других ручных работах, надо немного набить руку. Раза с третьего-пятого вы почувствуете, до какой степени и с какой силой надо действовать Dodge и Burn, приловчитесь управляться с границей маски так, чтобы она не наползала на соседнюю область.

В крайнем случае проверить результаты и подправить отдельные места можно, перейдя в режим рисования маски Quick Mask. Для этого надо включить отображение цветовых каналов, выключить канал #4 и загрузить маску на его основе. Звучит устрашающе, а делается двумя щелчками мышки по пиктограмме канала #4 в палитре Channels. Щелкните с нажатой клавишей [Shift] - и переключите каналы, с клавишей [Ctrl] - и загрузите маску. Подправив маску, сохраните ее командой меню Select/Save Selection в канале #4, заменив его содержимое. Пусть маска в этом канале и болтается, кто знает, сколько раз она еще потребуется ( пример 4 ).

Когда маска готова, предстоит поработать со слоями. Для неба мне потребуется новый слой Sky, который я и сделаю, нажав на кнопку в палитре слоев Layers. Однако слой Sky лег над слоем со скалами, а должно быть наоборот. Чтобы поменять их местами, придется переименовать слой Background, сдвинуть который Photoshop не позволяет, в Rocks. Кстати, уже пора перенести результаты работы в файл. Многослойные изображения хранятся в формате Photoshop, а не TIFF, так что при сохранении надо изменить тип файла на PSD.

Если маска сброшена, загрузите ее. Небо надо удалить со слоя Rocks, но, перед тем как нажать на клавишу [Del], возьмите с картинки пипеткой голубой цвет неба - он понадобится для слоя Sky. Выберите наиболее темный оттенок. Удалив "родное" небо, переходим на слой с "синтетическим" и закрашиваем его полностью снятым с фотографии оттенком голубого.

Следующий шаг - генерация облаков. Если у вас под рукой есть фотография красивого облачного, лучше воспользоваться ею, затянув ее на слой Sky. Так получится естественнее. Но если неба нет, его можно получить, применив фильтр Filter/Render/Clouds. Запустите его несколько раз подряд, нажимая клавиши [Ctrl]+[F], пока не получите более привлекательную раскладку облаков относительно остальной части изображения ( пример 5 ).

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

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

Создаем новый слой Zenith, поместив его между скалами (Rocks) и небом (Sky). Этот слой будет использоваться исключительно для тонирования неба. Нарисуем на нем растяжку от черного к белому, направленную сверху вниз. Она соответствует степени ослабления голубого в нарисованном нами небе. Следовательно, зенит должен быть черным, а к белому стоит перейти немного выше линии горизонта.

Для совмещения характеристик двух слоев - Zenith и Sky - следует прибегнуть к специальному режиму наложения пикселов. Режимов этих много, так что практически всегда можно найти подходящий по действию. В данном случае следует применить для слоя Zenith наложение в режиме Screen, вызывающем "деление" исходного цвета (то есть с расположенного ниже слоя Sky) на вносимый (он берется со слоя Zenith). При делении черный цвет является как бы единицей и на результат не влияет. А более светлые полутона приводят к уменьшению насыщенности результата, причем белый цвет выбеливает добела ( пример 6 ).

Нам это как раз и требуется. Переключив в палитре слоев режим для Zenith на Screen, получаем уже нечто похожее на реальность. Чтобы ослабить эффект от "деления" тонов, следует передвинуть влево регулятор Opacity. Регулируя прозрачность слоя Zenith, имеет смысл подобрать наиболее подходящую для фотографии "погоду". В общем, на этом работу можно считать законченной ( пример 7 ).

Как видите, маску сложной формы удается создать на основе одного из цветовых каналов. Причем для этого лучше воспользоваться не фильтрами, а более тонко работающими инструментами тонирования, которые позволяют изменить экспозицию в заданной части спектра, не затрагивая другие полутона. А если при этом все-таки останется нежелательный ореол, его легко устранить, либо подправив маску в режиме Quick Mask, либо просто расширив ее на один-два пиксела командой Select/Modify/Expand.

А хорошая маска - это уже добрая половина работы.

Роман Соболенко


Компьютерная газета. Статья была опубликована в номере 35 за 1997 год в рубрике soft :: графика

©1997-2024 Компьютерная газета