Все о фотобанках и микростоках, купить и продать фото, работа для фотографа и иллюстратора
Информация
Сервисы
Форум
Вход:Запомнить
Регистрация

Работа с путями (Path) в Photoshop (часть 2)

Автор: Андрей Журавлев (специально для microstock.ru); Добавлено: 2008-03-17; Измененено: 2008-04-08;

Оглавление

Часть 1

Часть 2



Что можно делать с путями

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

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

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

Важно помнить:

  • если в палетке Paths выделен путь, но ни один из его контуров не активен (не выделен при помощи инструментов Path Selection Tool или Direct Selection Tool) - трансформироваться будут все контуры пути;
  • если выделена только часть контуров или их отдельные элементы - трансформироваться будут только эти контура или элементы.

В-третьих, путь можно править с помощью Illustrator'а. Остановимся на этом способе поподробнее.

Построив путь, дайте команду FileExportPaths to Illustrator. В дополнительной менюшке вы можете выбрать, какой из путей, находящихся в палетке Paths вы хотите экспортировать, либо экспортировать все пути одновременно. В результате выполнения этой команды, вы получите файл ***.AI, который сможете открыть в Illustrator.

После открытия в Illustrator, переключитесь на режим отображения ViewOutline и вы увидите: ваш путь и четыре пары нарисованных под прямым углом друг к другу черточек - это метки реза, они задают границы вашей исходной картинки. Дайте команду ObjectCrop AreaRelease, вместо меток реза на экране появится прямоугольник, соответствующий границам исходной картинки. Ни в коем случае не убивайте его и не сдвигайте относительно него экспортированные пути - после всех необходимых преобразований путей он позволит вам быстро и безболезненно вернуть их в исходную картинку, избежав проблем с позиционированием.

Когда вы будете готовы вернуть пути обратно в Photoshop, просто выделите их вместе с задающим формат прямоугольником, скопируйте (Copy) и вставте (Paste) в Photoshop. В появившейся менюшке Paste выберите опцию Path, ваш путь скопированный из Illustrator'а будет вставлен в активный в данный момент путь в палетке Paths, или, если ни один из путей в данный момент не активен - в созданный заново путь Work Path (не забудте, что такой путь может быть только один, и, если он уже был в вашем файле, старый путь Work Path будет уничтожен вместе со всем содержимым).

Важно!!! Обратите внимание При любых операциях вставки (Paste), Photoshop позиционирует центр вставляемого объекта по центру видимой на экране области изображения. Поэтому, чтобы путь встал на прежнее место, необходимо, чтобы на экране была видна вся картинка. Проще говоря, перед тем как вставлять путь, дайте команду ViewFit on Screen (Ctr+0). Прямоугольник, соответствующий границам картинки, отцентруется по этим же границам, а вместе с ним на свое место встанут все пути. В конце всех операций не забудте убить этот прямоугольник, и, вуаля - новый путь готов.

Теперь вернемся к главному вопросу: ради чего мы городили весь этот огород, и что же можно делать с путями в Illustrator'е? Возможности обработки кривых в Illustrator не просто в разы, а на порядки богаче, чем аналогичные возможности в Photoshop (что вполне естественно для специализированной программы). Вы можете воспользоваться любыми из них. Какими конкретно зависит только от стоящей перед вами задачи и вашего воображения. Чтобы подтолкнуть его приведу несколько примеров.

Пример 1. Равномерное "раздувание" пути наружу или "заваливание" его вовнутрь.

В полиграфии существует такое понятие - "вылет". Если изображение стоит в край обрезного (или, что аналогично, вырубного) формата, оно должно продолжаться за линией реза (высечки) на некоторое расстояние (обычно 2-5 мм). Делается это для того, чтобы при отклонении ножа (штампа) от заданной линии реза (высечки), а такое отклонение бывает всегда из-за погрешностей оборудования, у картинки не образовалась по краю белая полоска.

Для вырубки фигуры я построил путь по ее контуру (в дальнейшем этот путь использовался при изготовлении штампа), штампиком "растиснул" изображение фигуры по краю, теперь (чтобы все выглядело аккуратно и работать печатникам и высекальщикам было легче) мне надо обрезать изображение на расстоянии 2 милиметра от контура высечки. Тоесть, мне нужен путь, отстоящий на 2 милиметра наружу от уже имеющегося.

Экспортирую контур высечки в Illustrator, выделяю его, даю команду ObjectPathOffset Path, в поле Offset появившейся менюшки задаю 2 mm, убиваю исходный путь, новый путь перебрасываю в Photoshop. Задача решена.

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

При разрешении картинки 300 dpi один пиксел имеет размер 25,4 мм / 300 = 0,09 мм. Производим все операции, описанные выше, только в поле Offset вводим значение -0,09 mm (-1,8 mm если надо сдвинуть путь на 2 пиксела). Задача решена.

Пример 2. Пересекающиеся друг с другом и самопересекающийся пути.

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

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

Выделю кривые, соответствующие внутренним контурам и вытащу их наверх командой Object Arrange Bring to Front. Дальнейшие манипуляции будут происходить в палетке Pathfinder: для каждого кольца я выделю оба контура (внутренний и внешний) и дам команду Subtract from shape Area (не забывая прижать при этом Alt), далее выделю обе получившиеся фигуры и дам команду Add to shape Area (не забывая прижать при этом Alt). Верну путь в Photoshop. Задача решена.

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

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

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

В результате получается контур с множественными самопересечениями, следующая задача - избавиться от них. Для этого: экспортирую путь в Illustrator, выделю его и дам команду Add to shape Area (не забывая прижать при этом Alt). Верну путь в Photoshop. Задача решена.

Пример 3. Контурение объектов постоянной ширины.

Рассмотрим фотографию той же самой веревки. Если она сделана "в лоб" (то есть перспективные искажения малы) и имеет практически постоянную ширину можно поступить еще проще. Вместо того, чтобы контурить обе ее границы, я просто построю осевую линию (кривую, проходящую по центру веревки), измерю ширину веревки (пусть она будет равна X мм) экспортирую путь в Illustrator, выделю его, в палетке Stroke задам параметр Weight равным X mm, дам команду ObjectPathOutline Stroke (или ObjectExpand), дам команду Add to shape Area (не забывая прижать при этом Alt). Верну путь в Photoshop. Задача решена.

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

В конце этой главы хочу добавить еще несколько общих мыслей.

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

Возможно, что в будущем, подобные операции можно будет проводить прямо в Photoshop'е (может быть некоторые можно делать уже сейчас, просто я об этом еще не знаю). Это еще не повод отказываться от возможностей обработки путей, предоставляемых Illustrator'ом. В конце концов, как говорил товарищ Христос: "Ищите и обрящите".

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



Что можно делать при помощи путей

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

Clipping Path.

Начнем с их первородной, но в наше время отошедшей на задний план задачи, а именно - команды Clipping Path.

Я не знаю, была ли такая команда (да и сами пути) во версии Photoshop 2, но в версии Photoshop 3.0 (с которой я начинал свою работу) она была точно. В те суровые времена машина, имевшая оперативку в 64 мегабайта, уже считалась графической станцией (на моей Quadr'е стояло 48, при этом на ней еще работал принт-сервер на весь пре-пресс), а 128 или даже 256 магабайт были пределом мечтаний большинства цветокорректоров и ретушеров. Операторы серьезно задумывались перед созданием в файле каждого нового слоя, вопрос выбора между разрешением 250 и 300 dpi был актуальным всегда, а фильтр Gaussian Blur на формате А4 мог обрабатываться по несколько минут.

В таких условиях не могло быть речи о больших (размером в полосу или разворот) коллажах, а ставить вырезанные картинки поверх фона все равно хотелось. Вот здесь и приходили на помощь пути и команда Clipping Path. Что же это такое?

CLIPPING PATH - это атрибут, присваеваемый одному из путей. Означает он следующее: программа (например Adobe Illustrator, Quark XPress и т.д.), понимающая язык PostScript, при подстановке картинки, содержащей путь с таким атрибутом и сохраненной в формате Photoshop EPS (ОБЯЗАТЕЛЬНО!), воспринимает его как команду вырезать картинку по контуру этого пути. Сделайте картинку с Clipping Path, сохраните ее, например, в EPS, TIF и JPG, подставте все три картинки в иллюстраторовский документ (FilePlace) и вы увидите, как это выглядит.

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

После появления PostScript Lavel 3, поддерживающего прозрачности, появилась возможность вставлять в верстку картинки с плавно размытыми краями, да и возросшие мощности компьютеров позволили делать чисто фотошопные коллажи, и Clipping Path тихо отошел на задний план.

Vector Mask.

Второй (и по-моему последней) возможностью непосредственного применения путей в Photoshop'е является "Векторная маска". Может применяться как к отдельным слоям, так и к группам слоев. Она оставляет часть изображения, содержащуюся внутри контура пути, остальное маскирует. Имеет те же минусы, что и Clipping Path - жесткая, выглядящая очень не натурально, обрезка по контуру. Вследствии этого чаще всего применяется или дизайнерами при изготовлении макетов в Photoshop'е (когда такая обрезка задумана) или во вспомогательно-технологических целях (например: при создании коллажа нижний объект выглядувает из-под верхнего в ненадлежащем месте, этот кусок удобно отрезать при помощи векторной маски, тем самым сохранив само изображение - мало ли, по ходу работы оно еще пригодиться).

Vector Mask может применяться совместно с Layer Mask. Чтобы создать векторную маску: в палетке Layers выберите слой (или группу слоев), к которым вы хотите ее применить; в палетке Paths выберите путь, который должен послужить основой для векторной маски, и дайте команду LayersVector MaskCurrent Path.

Stroke Path.

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

От друзей, учившихся в Бауманке, я слышал историю про профессора начертательной геометрии. Это был человек в преклонном возрасте, вследствии чего у него постоянно тряслись руки… пока он не брал карандаш. А потом он начинал наносить на чертеж штриховку без линейки от руки, каждую линию он рисовал в одно движение, причем линии получались будто вычерченные по линейке, шли с интервалом по ГОСТу, начинались и заканчивались точно на контуре детали. И делал он это с такой скоростью, с какой хороший картежник сдает карты.

Если вы не принадлежите к числу таких людей с "железной рукой", команда Stroke Path будет вам верным помошником. Для развития творческого подхода укажу еще один возможный путь ее применения. Перейдите в режим быстрой маски и поэкспериментируйте в ней. Возможности по формированию селекций ограничиваются только вашей фантазией.

Make Selection

Я специально оставил рассказ об этом способе применения путей напоследок, так как считаю, что это самый серьезный ресурс для их использования. Механизм работы этой команды очень простой: строите путь, нажимаете стрелку в правом верхнем углу палетки Paths, в выпадающем меню выбираете команду Make Selection, в дополнительно появляющемся меню задаете степень размытия границы Feather Radius (я всегда держу этот параметр равным 0, чтобы он случайно где-нибудь не подсуропил, а потом отдельно размываю границу селекции на нужную величину) и сглаживание Anti-aliased (обязательно поставте эту галочку!!!). Селекция готова.

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

Пример: строим круг, область выделения - круг; строим внутри него еще один круг, область выделения - кольцо (внутреннюю область окружают 2 пути, она не выделяется); строим внутри этой фигуры еще один круг, область выделения - кольцо с кругом внутри (внутреннюю область окружают 3 пути, она выделяется) и т.д.

Можно сделать селекцию, просто кликнув по соответствующему пути в палетке Paths при нажатой клавише Ctrl (для MAC'a). Я лично так и делаю - экономит время. Поэтому и держу Feather Radius равным нулю.

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

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

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

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



Практический пример к написанному выше: как сделать изолят

Здесь описана последовательность операций, которую я произвожу для изоляции (вырезания) объекта. Возможно, она пригодится вам в работе, или вы возьмете себе "на вооружение" отдельные приемы из нее. Итак, чтобы вырезать объект, я:

  1. Дублирую слой Background и всю работу с объектом произвожу на отдельном слое. Не удаляю ничего из картинки вплоть до отдачи файла в дальнейшую работу. Вместо этого использую Layer Mask. Всегда есть возможность откатиться и вернуть "удаленную" часть изображения.
  2. Сначала все явные границы, то есть все кроме волос и прочих лохматостей, обтравливаю путем. При этом сглаживаю границы обьекта (если нужно), убирая явные дифекты модели или композиции, но не "заваливаю" путь вовнутрь относительно контура картинки.
  3. Когда путь готов, делаю из него селекцию с параметром Feather=0. Далее, команда SelectModifyContract с параметром Contract By в 1 пиксель (для больших картинок бывает 2, редко и для очень больших картинок 3). Таким образом, селекция "заваливается" вовнутрь контура имиджа равномерно.
    Примечание: если вам не надо переносить вырезанный объект на другую картинку, а просто требуется отделить его от фона для производства над фоном каких-либо операций (например: выбелить фон до чистого белого), этот пункт можно пропустить.
  4. Даю размывку границ, селекции SelectModifyFeather с параметром, таким же как на предыдущем шаге.
    Примечание: иногда бывает полезно дать размытие меньше, чем сжатие селекции, например: Contract=2, Feather=1, но это нужно смотреть по конкретной картинке.
  5. Делаю леерную маску по существующей селекции LayerLayer MaskReveal Selection. Если в отдельных местах результат не устраивает - можно поправить вручную, рисуя кисточкой прямо в маске или откорректировать путь и повторить шаги 3-4.
  6. Когда на картинке присутствуют волосы - строя путь, оставляю вокруг них поле и формирую область выделения волос (а точнее - область выделения поля, оставшегося вокруг волос) отдельным способом. Способов таких достаточно много, но это теме отдельного разговора.
  7. Перед тем как отдать файл в дальнейшую работу даю команду LayerLayer MaskApply.
Источник: http://www.microstock.ru/
Автор: Андрей Журавлев (специально для microstock.ru)
Материалы по теме:
Новости по теме: