Actions 3. Перенос информации между изображениями

Aug 11, 2013 02:29

Оригинал взят у zhur74 в Actions 3. Перенос информации между изображениями
Необходимость перенести изображение из одной картинки в другую обычно возникает в двух случаях.

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

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

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







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

Copy - Paste

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



Первая команда: выбор окна из которого мы заберем картинку. Если имя нового документа при сортировке по возрастанию располагается после имени исходного в экшен впишется команда Select next document, если до - Select previous document.



Вряд ли экшен сможет осмысленно забрать часть из новой картинки, скорее всего мы просто перенесем ее целиком, поэтому вторая команда: выделить все, Select -> Select All или просто «Cmd»+«A».



И, наконец, третья команда: поместить в буфер обмена, Edit -> Copy или «Cmd»+«C».



Выбираем исходное изображение.



И отдаем команду вставки из буфера: Edit -> Paste или «Cmd»+«V»

Вот и весь экшен. Правда, практическая его ценность не высока: сначала надо открыть оба документа и только потом запускать экшен. А что делать, если нужна пакетная обработка? Как ни странно, но надо… убрать Copy и оставить только Paste.

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

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

Иногда возникает обратная задача: собрать в один файл картинки из разных файлов. Документ, в который будут собираться изображение, нужно создать заранее и открыть его.



Такой экшен рассчитан на пакетную работу, поэтому начинается с команды открытия нового документа File -> Open



Далее уже привычные выделить все (Select All) и запомнить в буфер обмена (Copy)



Теперь можно просто отдать команду Close, вновь открытый файл будет закрыт а активным станет заранее подготовленное для сбора всех картинок изображение



И вставляем содержимое буфера (Paste).

Для большей устойчивости в работе я бы еще добавил команду Flatten Image сразу после открывания файла, а в конце при закрывании выбрал опцию Don't Save. Кстати, именно таким экшеном я собирал в один документ скриншоты, чтобы удобнее было делать иллюстрации.

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

Мы обязательно напишем такой экшен позже, а сейчас давайте подсчитывать особенности метода «Copy-Paste». Я специально не стал называть это «плюсы» и «минусы», поскольку в разных ситуациях одни и те же черты могут оказаться как положительными, так и отрицательными

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

Вторая особенность: данный метод подразумевает переключение между документами. В экшен такие команды прописываются как Select next document и Select previous document. А поскольку фотошоп выбирает документы по имени файлов, при большом количестве открытых изображений экшен может в них заблудиться. Можно сказать, что этот минус не существенный и предложить пользователю перед запуском экшена просто закрывать все остальные файлы, но иногда бывает очень обидно это делать.

Третья особенность: возможность переносить друг в друга изображения имеющие разные профили и даже находящиеся в разных цветовых моделях. В некоторых случаях это может оказаться плюсом, но есть и подводные камни. Во-первых, если в Color Settings установлен ключ Profile Mismatches: Ask When Pasting, каждый раз при несовпадении профилей экшен будет выдавать вам диалог с запросом, что с этим делать. Во-вторых, если этот ключ снят, при переносе изображение будет автоматически конвертироваться к профилю нового документа. А вы уверены, что именно такой подход вам нужен?

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

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

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

Apply Image

Альтернативой «Copy-Paste» является применение команды Apply Image (в русской версии она называется «Внешний канал»). Сразу оговоримся, что эта команда переносит изображения только в том случае, если их размеры в пикселях точно совпадают. Поэтому собрать в один файл разнокалиберные картинки с ее помощью не получится.

Зато ее очень удобно использовать для переноса элементов между копиями одного и того же изображения. Например, при необходимости забрать в исходный RGB файл содержимое каналов его же CMYK или Lab версии. Или сделать коррекцию через ложный профиль и вернуть изображение в исходный файл.



Командой Image -> Duplicate создаем копию открытого изображения. Чтобы минимизировать размер изображения сразу поставим ключь Duplicate Merged Layers Only (чтобы это сделать нужно записывать экшен на многослойном изображении). А чтобы экшен в дальнейшем не запутался, присвоим новому файлу осмысленное имя.



Переводим ее в CMYK. Чтобы не зависеть от выбранного в Color Settings профиля это можно сделать командой Edit -> Convert to Profile, выбрав один из стандартных профилей CMYK. Если в работе экшена использовать нестандартный профиль, его придется передавать вместе с экшеном и устанавливать на новом компьютере до начала работы.



Возвращаемся в исходное изображение.



Создаем новый слой



И командой Apply Image переносим на этот слой содержимое черного канала из копии изображения. Если копия изображения еще понадобится, ее можно оставить. Если нет, не забудьте переключиться на копию и отдать команду закрыть ее. А теперь подсчитаем особенности. Я буду перечислять их в том же порядке, чтобы было удобнее сравнивать.

Первая особенность: Apply Image работает только с картинками одинакового размера. Бесспорно, это минус, но если перенос информации планируется между копиями одного и тог же изображения то им можно пренебречь.

Вторая особенность: так же как и в прошлый раз нам придется переключаться между файлами. И если открыто несколько изображений, при определенном сочетании их имен экшен может промахнуться при переходе между ними. К сожалению, эта проблема решается только одним способом: закрытием всех окрытых изображений перед запуском экшена.

Третья особенность: Apply Image не переносит композитные изображения, если у них разные цветовые модели. Из отдельного канала он просто заберет Grayscale изображение и закинет его во все каналы рабочего документа (именно поэтому так смешно перенос отдельного канала на слой работает в Lab). А если оба изображения в RGB, но с разными профилями, Apply Image перенесет поканальные яркости пикселей. То есть, фактически, при переносе изображения выполняется команда Assigne Profile, а не Convert to Profile. Это не плюс и не минус, а особенность работы. Просто помните о ней.

Четвертая особенность: Apply Image может забирать изображение не только с любого отдельного слоя (даже отключенного) но и текущую версию картинки, образованную всеми видимыми слоями. Это удобно, потому что позволяет не схлопывать изображение. В качестве альтернативы можно рассматривать команду Merge Visible при зажатой клавише «Alt» («Cmd»+«Alt»+«Shift»+«E»), но она не сработает если в файле всего один слой или активным является отключенный слой. Это однозначный плюс Apply Image, позволяющий сделать работу эушена стабильной и не зависящей от структуры слоев.

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

Шестая особенность: Apply Image не использует буфер обмена, что так же экономит время.

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

Если из копии картинки нужно забрать только дно изображение, эту проблему можно обойти при помощи Smart Object. Создайте новый пустой слой, командой Apply Image забросьте на него видимое изображение, сконвертруйте этот слой в смарт-объект, откройте его и совершив все необходимые манипуляции сохраните и закройте. В родительском файле появится слой с необходимым изображением, но при этом фотошоп не будет совершать переключение между файлами.

Это единственный способ обойти вторую особенность, который мне удалось найти. Правда, и он не без греха. Во-первых, работа со смарт-объектами происходит достаточно медленно. Во-вторых, если в Color Settings установлен ключ Profile Mismatches: Ask When Opening, а профиль файла отличается от вашего рабочего профиля, каждый раз при открывании смарт-объекта будет появляться диалог с запросом, что с этим делать. Мелочь, а неприятно.

В качестве заключения

В следующий раз рассмотрим экшен, собирающий на слои не только RGB, но и все каналы Lab и черный канал CMYK. И дальше постараемся обойтись без отдельной теории, разбирая некоторые тонкости непосредственно на практических примерах.

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

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

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

© Андрей Журавлев (aka zhur74), август 2013 г.
Первая публикаци http://zhur74.livejournal.com/53078.html

уроки фотошопа, экшн, photoshop, фотошоп, action

Previous post Next post
Up