Что такое цветовое пространство lab. Значение - описание. Субтрактивные модели CMY и CMYK

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

Любой цвет в Lab определяется яркостью (Lightness ) и двумя хроматическими компонентами: параметром a , который изменяется в диапазоне от зеленого до красного , и параметром b , изменяющимся в диапазоне от синего до желтого .Яркость в модели Lab полностью отделена от цвета. Это делает модель Lab удобной для регулировки контраста, резкости и других тоновых характеристик изображения. Модель Lab является трехканальной . Ее цветовой охват чрезвычайно широк и соответствует видимому цветовому охвату для стандартного наблюдателя. Охват Lab включает охваты всех других цветовых моделей, используемых в полиграфическом процессе.


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


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


Y = R/3 + G/3+B/3


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


Y= 0.2125R+0.7154G + 0,0721В


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


Существует интерсный прием, позволяющий увидеть спектр Lab-цветов.



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


Этим, однако, трудно объяснить, зачем о свойствах Lab знать пользователю. Ведь большинство из нас не волнует, скажем, устройство файлов изображений (хотя это тоже очень важно) - мы просто поручаем файловые операции компьютеру. Однако Lab имеет и сугубо практические области применения. В этой модели легко выполнять многие распространенные операции. В их числе повышение резкости, тоновая коррекция (повышение контраста, исправление погрешности тоновых диапазонов) и удаление цветного шума (в том числе размывка растра и удаление регулярной структуры изображений в формате JPEG). Профессионалы используют это пространство даже для создания сложных масок и кардинальных изменений цветов документа. Поскольку модель имеет огромный цветовой охват, перевод в нее не связан с потерями. Вы можете в любой момент перевести изображение из RGB в Lab и обратно, и при этом его цвета не изменятся.


Определение каналов Lab основано на том, что точка не может быть одновременно черной и белой, одновременно красной и зеленой, одновременно синей и желтой. Первый канал - это канал яркости. Яркость измеряется от самой тёмной (чёрной) до самой яркой (белой). Каналы a и b отображают только цвета. Каждый хроматический канал содержит информацию о двух противоположных цветах (см. первый рисунок главы).

В этой модели любой цвет определяется светлотой (Lightness) и двумя хроматическими компонентами: параметром а, который изменяется в диапазоне от пурпурного (magenta) до зеленого (green), и параметром Ь, изменяющимся в диапазоне от желтого (yellow) до синего (blue) (рис. 5).

Многие программы используют цветовую модель Lab в ка­честве модели-посредника при любом конвертировании из одной цветовой модели в другую.

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

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

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

RGB чаще применяется при работе с изображениями, кото­рые после будут просматриваться на мониторе.

В HSB и Lab есть отдельный канал освещенности, позволя­ющий углублять цвета более эффективно и быстро, чем в любой другой модели.

Рис. 5. Цветовая модель Lab

3. Основы растровой графики

Растровая графика (raster, bitmapped graphics) - это область цифровой графи­ки, в которой изображение представляется совокупностью пикселов (рис. 6).

Рис. 6. Пример растрового изображения

3.1. Общие сведения

Компьютерное растровое изображение представляет собой прямоугольную матрицу, каждая ячейка которой имеет вид цветно­го «квадратика» и называется битовой картой (bitmap). Битова якарта представляет собой набор (массив) троек чисел: две коорди­наты пиксела на плоскости и его цвет.

Один из основных параметров этого вида графики - разре­шение.

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

Единицами измерения разрешения для растрового изображе­ния обычно является ppi (pixels per inch - «пикселов на дюйм»), для печатающих устройств -dpi (dots per inch - «точек на дюйм»).

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


За нормальное сейчас принято разрешение 72 пиксела на один линейный дюйм. Оно обычно используется в электронных до­кументах и Интернете. В газетной печати - разрешение до 150 пик­селов на дюйм, для качественной полиграфии обычно около 300.

Часто на стадии редактирования изображения возникает не­обходимость изменения его размера или разрешения. Для реали­зации изменения в большинстве современных графических редакторов предусмотрена возможность использования операции Resampling, которая может быть реализована двумя способами: с фиксированным разрешением и с переменным разрешеним.

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

В основе выполнения операции Resampling лежит использо­вание методов интерполирования.

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

Следующим важным параметром битовой карты изображе­ния является глубина цвета (количество бит, которые отводятся на задание цвета пиксела).

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

Исходя из значений глубины цвета, различают следующие типы изображений:

Черно-белые штриховые изображения (bitmap);

На каждый пиксел такого изображения отводится один бит, а одним битом можно закодировать только два цвета: черный (0) или белый (1) - рис. 7. Промежуточных состояний не бывает.

Бит (bit) - это минимальное количе­ство информации, составляющее выбор одного из двух возможных вариантов: «О» или «1». В компьютерной графике служит в качестве единицы глубины цвета.

Количество цветов можно определить как 2 п, где п - количество бит на пиксел.

Рис. 7. Пример черно-белого изображения (Bitmap)

Изображения в градациях серого (grayscale);

Если каждый пиксел кодировать восемью битами, то можно получить 2 8 =256 градаций серого, или так называемую серую шкалу (grayscale).

Каждый пиксел характеризуется значением яркости, которое изменяется в диапазоне от 0 (черный) до 255 (белый). Такого числа уровней вполне достаточно, чтобы правильно отобразить черно-белое полутоновое изображение.

Полноцветные изображения (truecolor).

В этих изображениях каждый пиксел описывается восемью двоичными разрядами, в сумме это составит 24 бита. Это дает воз­можность закодировать 16,7 млн оттенков, что достаточно много.

Существуют также их варианты:

Дуплексные изображения (duotone);

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

Изображения с индексированными цветами (indexed colors).

Индексированные цвета кодируются в виде так называемых цветовых таблиц (color lookup table, LUT), т.е.серий таблиц цветовых ссылок (индексов), в которых цвета уже предопределены как мелки в коробке пастели.

Индексированные цветные изображения обычно характеризуются глубиной цвета от 2 до 8 бит на пиксел, поэтому используемая палитра может содержать от 2 2 =4 до 2 8 =256 цветов и оттенков соответственно.

Файл с индексированным изображением содержит заголовок, поясняющий прикладным программам структуру таблицы и способ цветового кодирования для каждого пиксела.

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

С разрешением и глубиной цвета непосредственно связан и размер графического файла.

Объем файла растровой графики зависит от трех параметров: от геометрических размеров, от значения разрешения и от значения глубины цвета. Объем файла в байтах равняется произведению длины изображения (в дюймах) на разрешение (в ррі), ширины изображения (в дюймах) на разрешение (в ррі) и на глубину цвета (в байтах на пиксел).

3.2. Источники получения и средства работы

с растровой графикой

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

Сканеры;

Цифровые камеры;

Видеосъемка;

Программы генерации текстур и узоров;

Графические редакторы;

Анимационные программы;

Программы для создания трехмерных изображений;

Программы для копирования фрагментов экрана.

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

Средства создания растровых изображений: MS Paint, Corel Painter, Fauve Mattisse.

Средства обработки изображений: Adobe Photoshop,Corel PHOTO-PAINT, Paint Shop Pro, PhotoDraw 2000 и другие.

Средства захвата экрана, начиная от поддерживаемой всеми операционными системами возможности фотографирования содержимого экрана путем нажатия клавиши Print Screen или комбинации клавиш Alt+Print Screen до специальных программ типа Corel Capture.

Средства каталогизации изображений: MS Imaging, Canto Gamulas Desktop и другие. Эти средства предназначены для создания графических баз данных в виде архивов изображений и фотографий. Их каталогизация позволяет экономить время при поиске и отборе иллюстративного материала.

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

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

Тоновая коррекция (Tonal Correction) - изменение яркостей пикселов изображения с целью более равномерного их распределения по всему диапазону яркостей. С помощью тоновой коррекции можно добиться выявления деталей, скрытых в тенях (темных тонах изображения) или светах (светлых тонах изоб­ражения).

Цветокоррекция (Color Correction)- изменение цветовых параметров пикселов (яркости, контрастности, цветового тона, насыщенности) с целью достижения оптимальных результатов.

Цветоделение (Color Separation) - это процесс разложения цветного изображения на несколько изображений,которые будут напечатаны соответствующими типографскими красками.

Слой (layer) - дополнительный уровень для рисования. Слои можно сделать невидимыми, поменять местами. Можно рисовать только на одном слое, не затрагивая другие. Каждый слой повторяет все параметры основного изображения.

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

Канал (channel) - это компьютерная форма отображения каждой составляющей цветовой модели. Так, изображение в формате Grayscale имеет один канал, в цветовых моделях RGB и Lab - три канала (рис. 8,а,в), а в модели CMYK - четыре канала (рис. 8,6). В растровых редакторах цветовые каналы генерируются автоматически при создании или открытии изображения.

Рис. 8. Цветовые каналы, соответствующие различным цветовым моделям: а - CMYK; б- Lab ; в -RGB

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

Альфа-канал (alpha-channel) - это дополнительный канал с восьмибитным представлениеми зображения. Используется для создания и хранения масок, на печать, как правило, не выводится. В некоторых графических форматах служит маской прозрачности. Количество альфа-каналов ограничено только возможностями компьютера. Оформление маски в виде отдельного альфа-канала дает возможность свободного редактирования с помощью любых рисующих инструментов.

Маска (Mask) - объект, форма которого является границей отсечения маскируемого изображения.

Фильтры (filters или plug-ins) и спецэффекты (Effects) представляют собой небольшие программы, выполняющие заранее установленную последовательность команд. Они автоматически вычисляют значения и характеристики каждого пиксела изображения и затем модифицируют их в соответствии с новыми значениями.

Ретушь (retouch) - коррекция изображения с целью устранения мелких дефектов, исправления тонального и цветового балансов.

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


3.3. Достоинства и недостатки растровой графики

К достоинствам растровой графики относятся:

Аппаратная реализуемость.

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

Программная независимость.

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

Фотореалистичность изображений.

Как правило, характерными особенностями фотореалистичности являются множество цветов, градиенты, сложное освещение, наличие мягких тоновых переходов (дымка, туманы, облачность и т.п.).

Недостатки растровой графики:

Значительный объем файлов.

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

Сложности трансформирования растровых изображений.

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

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

Аппаратная зависимость.

Таким образом, перед созданием изображения (например, перед сканированием) пользователь уже должен представлять условия вывода изображения на визуализирующих устройствах.


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

4. Основы векторной графики

4.1. Общие сведения

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

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

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

Рис. 9. Кривая Безъе

Если рассмотреть произвольный простейший отрезок кривой Безье между двумя несовпадающими точками (рис. 9), то для его описания потребуется всего восемь цифр: ХY-координаты первой опорной точки, ХY-координаты первой управляющей точки, ХY-координаты второй опорной точки и ХY-координаты второй управляющей точки.

На форму кривой влияют угол наклона касательной и длина ее отрезка.

Математический аппарат построения кривых Безье позволяет на основе этой информации построить и визуализировать линию.

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

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

Замкнутые линии приобретают свойство заполнения. Охватываемое ими пространство может быть заполнено другими объектами (текстуры, карты) или выбранным цветом (10, б). Заполнение бывает растровым и векторным. В последнем случае иногда используют элементы фрактальной графики, являющейся частным случаем векторной. Основные языки программирования при выводе графических примитивов также используют понятия векторной графики.

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

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

Рис. 10. Пример векторного изображения

4.2. Средства создания векторных изображений

Векторные изображения могут быть созданы несколькими видами программ.

Программами векторной графики.

Программами САПР, типичным представителем которых является программа AutoCAD. Ее векторный формат - DXF (Dynamic Exchange Format) понимается многими современными программами.

Специализированными программами конвертирования растровых изображений в векторные. Одна из таких программ - CorelTrace, входящая в состав интегрированного продукта CorelDraw. Другая известная программа этого класса - Adobe Streamline.

К векторным объектам относятся также текст и PostScript-контуры вроде тех, которые можно найти также в файлах, созданных с помощью текстовых процессов типа MS Word или программ верстки типа PageMaker.

На платформе Windows наибольшее распространение из программ векторной графики получил редактор CorelDRAW - мощный, удобный, но в то же время требовательный к ресурсам. Из других программ этого класса следует отметить Adobe Illustrator и Macromedia Freehand. Среди компактных и универсальных программ векторной графики можно отметить Corel Хага. С ее помощью можно создавать иллюстрации любого уровня сложности для web-сайтов, полиграфии и т.п.

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

4.3. Достоинства и недостатки векторной графики

Достоинства векторной графики:

Минимальный объем файла.

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

Свобода трансформаций.

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

Аппаратная независимость.

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

Объектно-ориентированный характер этого вида графики.

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

Недостатки векторной графики:

Отсутствие аппаратной реализуемости.

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

Программная зависимость.

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

Жесткость векторной графики.

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

Строго говоря, ни один современный профессиональный графический пакет не является чисто векторным или чисто растровым совмещает в себе элементы как того, так и другого вида графики. Например, векторный редактор CorelDRAW имеет как собственные, так и подключаемые (plug-ins) инструменты для редактирования растровых изображений, а в последних версиях растрового редактора Photoshop расширены инструментальные возможности для работы с векторными объектами.

Подключаемый модуль (Plug-in) -

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

Способ организации информации в файле носит название формата.

5. Форматы графических изображений

5.1. Общие сведения

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

Наряду с разрешением, формат файла оказывает влияние на качество изображения, в частности на размер файла.

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

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

Хранящие изображение в растровом виде (BMP, TIFF, PCX, PSD, JPEG, PNG, GIF);

Хранящие изображение в векторном виде (WMF);

Универсальные, совмещающие векторное и растровое представления (EPS, P1CT, CDR, AI, FH*, FLA и т.п.).

Основные критерии выбора формата - это совместимость программ и компактность записи.

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

5.2. Алгоритмы сжатия графической информации

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

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

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

Сжатие без потерь (lossless), когда информация полностью восстанавливается;

Сжатие с потерями (lossy), когда информация до сжатия и после сжатия отличается в определенной и регулируемой степени.

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

В качестве примеров алгоритмов сжатия без потерь можно рассмотреть следующие:

Кодирование длин серий;

Алгоритм Хаффмана;

Алгоритм LZW.

Кодирование длин серий. Растровое изображение при сохранении фактически вытягивается в цепочку, в которой могут встречаться цепочки (последовательности) одинаковых байтов. Самым простым способом, который позволяет уменьшить объем файла, является поиск повторяющихся кодов (символов, цвета и т.п.) - серий одинаковых значений (Run Length Coding). Каждая такая серия фиксируется двумя числами: первое указывает количество одинаковых значений, а второе - само значение.

Алгоритм рассчитан на деловую или декоративную графику - изображения с большими областями локального (повторяющегося) цвета.

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

Алгоритм LZW (Lempel-Ziv-Welch) сжимает данные путем поиска одинаковых последовательностей (называемых фразами) во всем файле. Затем выявленные последовательности сохраняются в таблице, где им присваиваются более короткие маркеры (ключи). Сжатие с потерями лучше всего работает с теми изображениями, на которых нет повторяющихся узоров или больших областей однотонной заливки.

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

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

Рис. 11. Примеры сжатия изображения: а - сжатие без потерь (LZW); б - bitmap - битовое изображение; в - сжатие формата GIF - индексированные цвета; г - сжатие JPEG

5.3. Растровые форматы

Графический формат BMP (сокращение от слова bitmap) - это разработка фирмы Microsoft для операционной системы Windows, он представляет собой чрезвычайно простую структуру и служит для описания и визуализации небольших изображений- пиктограмм (icons), широко применяемых в графических интерфейсах.

Графический формат GIF (Graphics Interchange Format) разработан фирмой Сотри-Serve как экономный формат для хранения растровых изображений с компрессией (сжатием по алгоритму LZW) и обмена графическими файлами по телефонной сети с помощью модемов. Этот формат допускает хранение нескольких изображений, что нашло широкое применение в так называемых «анимированных GIF-изображениях».Формат позволяет присвоить одному или нескольким цветам прозрачность, что дает возможность размещать такие изображения на любом фоне. Ограничение состоит в том, что поддерживается только палитра индексированных цветов (256 цветов).Формат нашел широкое применение на Web-страницах для размещения изображений с небольшим количеством цветов, т. е деловой и декоративной графики (надписи, знаки, логотипы,кнопки, элементы оформления и т.д.)

Графический формат JPEG (Joint Photographie Experts Group) предназначен для хранения полноцветных фотореалистичных изображений. Основанный на особенностях человеческого зрения, этот формат использует алгоритмы сжатия с потерями и обеспечивает значительное уменьшение объема графического файла.

Формат JPEG широко используется во всемирной сети.

Формат TIFF (tagged image file format, TIF) разработан совместно фирмами Aldus Corporation и Microsoft и является одним из самых распространенных среди известных в настоящее время форматов. Ему доступен весь диапазон цветовых моделей - от монохромной до RGB и CMYK. Формат поддерживается практически всеми основными пакетами растровой и векторной графики, программами редактирования и верстки текста.

Формат TIF поддерживает ряд дополнительных функций:

Использование дополнительных каналов (альфа-каналов, или, как их еще называют, каналов масок);

Использование сжатия;

Возможности выполнения предварительного цветоделения.

На сегодняшний день формат TIF является лучшим выбором при импорте растровой графики в векторные программы и издательские системы.

5.4. Универсальные и векторные графические форматы

Формат WMF (Windows Metafile) применяется для хранения векторных изображений, например в этот формат конвертируются векторные изображения при переносе через буфер обмена Clipboard, поэтому для редактирования данного формата никакого специального приложения не существует.

Формат EPS (Encapsulated PostScript) является вариантом PostScri pt-файла. Он разработан фирмой Adobe Systems как универсальный формат для нужд цифровой графики и полиграфии.

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

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

Формат PDF (Portable Document Format) - это оптимизированная версия языка PostScript, ориентированная как межплатформенный формат, интегрирующий макет страницы с иллюстрациями, как векторными, так и пиксельными, шрифтами, гипертекстовыми ссылками, звуками и анимационными фрагментами. Для обеспечения небольшого размера используются разные способы компрессии.

Формат PDF - «родной» формат программы Adobe Acrobat, которая является основным средством электронного распространения документов на платформах Macintosh,Windows,Unixn DOS.

Формат AI принадлежит фирме Adobe и является внутренним форматом векторного редактора Adobe Illustrator.

Формат CDR принадлежит фирме Corel и является внутренним форматом векторного редактора CorelDRAW.

Формат FH с порядковым номером версии принадлежит фирме Macromedia и является внутренним форматом векторного редактора FreeHand.

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

6. Взаимные преобразования растровой и векторной графики

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

Важно и то, что принципы векторной и растровой графики допускают взаимные преобразования друг в друга: растеризацию и трассировку.

Растеризация - это процедура преобразования векторных контуров в битовую карту и совокупность пиксельных элементов.

Преобразование растровой графики в векторную называется векторизацией (vectorisation) или трассировкой (trasing).

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

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

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

Другим вариантом растеризации является экспортирование в растровый документ векторного изображения целиком или только выделенных объектов. В программах векторной графики существуют команды, позволяющие осуществлять такую растеризацию, например Bitmap Export (Экспортирование в битовый формат).

Противоположным действием процедуры растеризации является преобразование растровой графики в векторную.

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

По способу выполнения существуют следующие виды трассировки:

Ручная трассировка (обводка), выполняемая с помощью обычных векторных инструментов;

Автоматическая трассировка, выполняемая специализированными средствами программы (трассировка внутри векторной программы).

Автоматическая трассировка, выполняемая специализированными программами.

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

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

В некоторых векторных программах (например, Adobe Illustrator и Macromedia Free Hand) предусмотрены специализи­рованные инструменты, которые позволяют выполнить трасси­ровку несложных пиксельных изображений. В CorelDRAW, например, эта функция является дополнительной для обычных инструментов.

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

Из программ трассировки наиболее известны следующие:

Adobe Streamline, которая распространяется независимо;

CorelTRACE, входит в пакет CorelDRAW.

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

Метод трассировки «по очертанию» (outline) предназначен для трассировки изображений с четкими цветовыми областями (пятнами различной величины и линиями неодинаковой толщины). Названным методом можно обрабатывать как двухцветные, так и многоцветные изображения. Принцип работы контурного метода состоит в очерчивании контуром цветной области в пределах допуска и заполнении ее соответствующим цветом (рис. 12).

Рис. 12. Пример трассировки методом «по очертанию»: а - исходное растровое изображение; б - результат трассирови

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

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


7. Основы трехмерной графики

7.1. Общие сведения

Наряду с программами традиционной 2D-графики в последнее десятилетие широкое распространение и популярность получили программы ЗD-моделирования, анимации и визуализации. При этом такие известные программные решения, как 3D Studio МАХ от компании Discreet (подразделения Autodesk, Inc.) или Maya от компании Alias|Wavefront являются, по сути, гибридными графическими пакетами. С одной стороны, они предоставляют дизайнеру возможность манипулирования 2D- и 3D- векторными объектами, с другой, результатом работы (финальной визуализации) является растровое изображение - отдельный кадр или видеоролик.

В упрощенном виде для пространственного моделирования объекта требуется:

Спроектировать и создать виртуальный каркас («скелет») объекта, наиболее полно соответствующий его реальной форме;

Спроектировать и создать виртуальные материалы, по физическим свойствам визуализации похожие на реальные;

Присвоить материалы различным частям поверхности объекта («спроектировать текстуры на объект»);

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

Понятно, что традиционная 2D-плоскость рисунка (как, например, в графических редакторах CorelDRAW, Adobe Illustrstor или Macromedia Free Hand) для этой цели не подходит. В данном случае требуется такое описание рабочего пространства, в котором можно создавать не только геометрическую форму моделируемых трехмерных объектов, но и их взаимное расположение как в статике, так и в движении.

Все программы 3D-графики, прежде всего, позволяют использовать декартову (картезианскую) систему координат (Cartesian coordinate system).

Реже, но все же достаточно часто, используются полярная цилиндрическая система координат (polar cylindrical coordinate system) и полярная сферическая система координат (polar spherical coordinate system).

7.2. Рабочее пространство

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

Чаще всего программы трехмерного моделирования предоставляют следующие варианты пространств:

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

Мировое пространство (world space) используется для размещения объектов на сцене, осуществления аффинных трансформаций (перемещения, поворота и масштабирования объектов), описания освещения сцены, вычисления столкновений между объектами при моделировании динамики их движения и т.п.Это единое пространство для всех объектов.

Видовое пространство (view space) ассоциировано с виртуальным наблюдателем (обычно камерой) или определенной проекцией сцены (например, фронтальным видом) и описывает ту часть сцены, которая доступна для просмотра и работы в видовом окне (viewport). Это своего рода точка зрения.

Экранное пространство (screen space) - это D-пространство (плоскость), в котором отображаются аксонометрические (axonometric) или перспективные (perspective) проекции 3D-объектов на плоскость поверхности монитора.

UVW-параметрическое пространство (UVW parametric space) используется при математическом моделировании сложных кривых и поверхностей (например, NURBS-объектов) или для задания UVW-координат текстурирования поверхностей (UVW mapping coordinates).

7.3. Моделирование объектов

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

Другими словами, геометрические объекты будут присутствовать в визуализированном кадре явно (как кривые или поверхности), а негеометрические опосредованно (в виде бликов, теней,ускорений и т.п.).

Основные типы объектов и технологии их моделирования рассмотрены на примере пакета 3D Studio МАХ компании Discreet.

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

Сплайновые кривые (spline curves) - рис. 13 - это смоделированные таким образом кривые (Безье или NURBS), что они могут служить заготовками для построения поверхностей (экструзии, тела вращения или лофтинга) или их можно использовать в качестве траектории движения.

Рис. 13. Сплайновые кривые

Полигональные объекты (polygonal objects) -

рис. 14 - это полигональные примитивы (polyg­onal primitives), описываемые наборами динамически изменяемых параметров (например, длин, радиусов) или полигональные сетки (polygonal meshes), определяемые как наборы граней (faces), ограниченных ребрами (edges), попарно соединяющими вершины (vertices).

Рис. 14. Полигональные объекты

Поверхности Безье (Bezier patches) - рис. 15 - это математически гладкие поверхности, описываемые расположением вершин Безье. Эти вершины определяют их кривизну при помощи дополнительных управляющих точек (control points) на концах касательных к поверхности векторов (tangent vectors). Подобные поверхности требуют большей нагрузки для вычислительной системы, зато позволяют моделировать сложные криволинейные (например, даже органические) формы объектов

Рис. 15. Поверхность Безье

NURBS-поверхности (Non-Uniform Rational B-splines surfaces) - рис. 16 - это наиболее универсальный и эффективный способ моделирования неоднородных криволинейных поверхностей. Такие поверхности описываются в особом четырехмерном гомогенном (однородном) пространстве (homogeneous space), в котором каждая управляющая вершина (control vertex), кроме трех координат х,у и z, имеет еще и дополнительную весовую (weight) характеристику. Изменяя положение и относительный вес вершины, можно предельно точно управлять формой объекта.

Рис. 16. NURBS - поверхность

Составные объекты (compaund objects) - рис. 17 представляют собой комбинацию двух или более смоделированных заранее заготовок. В зависимости от того, какое именно составное тело создается, заготовками могут служить кривые или объемы (поверхности). Типичными примерами составных объектов служат: лофт-объекты (loft objects) - тела, построенные по сплайно- вым сечениям; булевы объекты (boolean objects) - результаты булевских операций (объединения, вычитания или пересечения)между объемами; морф-объекты (morph objects) - анимационные объекты, изменяющие свою форму за счет интерполяции положения вершин поверхности между базовым (base) и целевыми (target) объектами.

Рис. 17. Составные объекты

Системы частиц (particle systems) - рис. 18 - это объ- екты-эмиттеры (emitters), генерирующие по заданному алгоритму частицы с определенной формой, начальной скоростью, сроком «жизни» и другими характеристиками. Такие анимационные объекты используются для моделирования дождя, пузырьков газа в жидкости, осколков взрывающихся снарядов и тому подобных образцов объективной реальности.

Рис. 18. Система частиц

Динамические объекты (dynamics objects) - рис. 19 позволяют моделировать объекты, реагирующие на приложенные к ним внешние силы: пружины (springs) и амортизаторы (dampers). Используются при моделировании динамики движения объектов, когда пружина, например, сама растягивается под воздействием подвешенного на ней груза.

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

Рис. 19. Динамически объекты

Продолжая рассматривать в качестве примера программу 3D Studio МАХ, кратко рассмотрим основные типы негеометричес­ких объектов.

Источники света (light objects) - рис. 20 - используются при моделировании наружного (exterior) и интерьерного (interior) освещения. Различные типы источников реализуют различные алгоритмы распространения света: всенаправленные лучи из точечного источника (omni light); сфокусированный луч из прожекторного источника (spotlight); параллельные лучи из направленного источника (direct light). При этом испускаемый источниками свет может быть по-разному окрашен (light color), он может затухать на определенном расстоянии (attenuation),а также порождать тени от объектов (shadows). К сожалению, большинство 3D-nporpaмм (и 3D Studio МАХ здесь не исключение) не моделируют корректно рассеянный свет (ambient light), что напрямую сказывается на фотореалистичности итоговой визуализации.

Рис. 20. Источник освещения

Камеры (cameras) позволяют полностью контролировать отображение объектов в плоскости кадра (рис. 21). Важнейшей характеристикой является фокусное расстояние объектива камеры (focal length), определяющее ее поле зрения (field of view - F0V).06a этих параметра взаимосвязаны и измеряются в милли­метрах и градусах соответственно. Еще одной важной характерис-тикой камеры являются плоскости отсечения (clipping planes),ограничивающие видимую по глубине (расстоянию от наблюдателя) часть сцены.

рис. 21. Пример установки камеры

Системы сочленений (bones systems) - рис. 22 - это структуры, состоящие из иерархически связанных «костей», описывающих сложную кинематику движения (kinematics) моделируемого объекта (например, человека). Обычно они применяются при использовании инверсной кинематики (inverse kinematics - IK) как метода манипулирования связанными структурами объектов. Оставаясь невидимыми при визуализации, они являются своеобразной арматурой (скелетом) анимируемого объекта или нескольких объектов.

Рис. 22. Пример сочленений

■ Искривители пространства (space warps) - рис. 23 - реализуют динамические воздействия внешних сил на объекты. Примерами могут служить волновая деформация поверхности (wave) или ударная волна (pbomb), разбрасывающая фрагменты объекта в пространстве.

Рис. 23. Искривитель пространства

7.4. Материалы и карты

По окончании процесса моделирования для полученной геометрии создаются материалы и текстурные карты.

Материалы определяют визуальные свойства поверхностей, т. е. описывают то, как поверхность объекта взаимодействует с освещением сцены.

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

В качестве карт могут быть использованы изображения (image textures), сохраненные в файлах различных форматов (BMP,TIF,JPG,EPS и некоторых других), либо процедурные текстуры (procedural textures), являющиеся наборами правил (процедурами) быстрого построения нужного узора.

Типичным примером использования карт при "моделировании материалов является описание их с помощью текстурирования цвета поверхности или ее рельефа (bump mapping).

Для точного управления текстурированием (texture alignment) обычно требуется дополнительно указать способ проецирования («переноса») текстуры на поверхность объекта (projection type) и режим отображения на ней (mapping mode).

Основные способы проецирования текстур следующие:

Ортографический (orthographic) - рис. 24,а - когда текстура проецируется на плоскость, описанную тремя точками. Такой способ очень часто называют планарным (planar) проецированием;

Цилиндрический (cylindrical) - рис. 24, б - это «заворачивание» объекта в текстуру, проецируемую на цилиндр, описанный двумя полюсами (верхним и нижним) и линией шва (соединения кромок текстуры);

Сферический (spherical) - рис. 24, в - способ, аналогичный предыдущему,но проецирование происходит на сферу, заданную верхним полюсом, центром и швом;

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


Рис. .24. Способы проецирования текстур

а - ортографический; б - цилиндрический", в - сферический; г - UV-координатный

В зависимости от конкретной программы трехмерного моделирования предлагается различная совокупность дополнительных свойств материалов. Например, пакет 3D Studio МАХ позволяет моделировать динамику твердых тел (dynamics of rigid bodies),что приводит в этом случае к необходимости задать коэф-фициент упругости материала (bounce coefficient) и коэффициенты силы трения покоя (static friction) и трения скольжения (sliding friction).

7.5. Анимация

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

Под движением подразумевается как непосредственно перемещение или поворот объекта в пространстве сцены,так и любое изменение его формы,цвета и т.п.

Большинство анимационных программ реализуют метод ключевой анимации (keyframe animation) объектов, заимствованный из традиционной мультипликации. Суть этого метода состоит в разделении кадров на ключевые (keyframes) и промежуточные (tweens). B ключевых кадрах фиксируются ключевые (критически важные, опорные) фазы анимации объекта, например положение спортсмена непосредственно перед прыжком или верхнюю точку полета волейбольного мяча. В промежуточных кадрах сама программа интерполирует остальные фазы анимации объекта, используя при этом дополнительную информацию, полученную от аниматора.

Однако ключевая анимация не всегда является оптимальным выбором. Например, если необходимо «заставить» объект совершить сложный пируэт в пространстве, то проще нарисовать для него нужную сплайновую траекторию, чем определять десятки (а то и сотни) ключевых кадров. Такая, не требующая задания большого количества ключевых кадров, анимация называется параметрической (parametric animation). Обычно она реализована как набор предустановленных анимационных эффектов, plug-in-модулей, например случайного изменения параметра или движения по траектории. Достаточно задать время начала и завершения такого эффекта, настроить его параметры, а обо всем остальном позаботится анимационная программа.

7.6. Визуализация

Итоговая визуализация (rendering) - заключительный этап работы со сценой.

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

Цвет каждой точки на поверхности отрисовываемого объекта вычисляется исходя из физических свойств материала и освещающего его света. Для описания того, как поверхность отражает или пропускает свет, существует два основных алгоритма тонирования (shading algorithms). Они называются алгоритмами локального (local illumination) и глобального освещения (global illumination).

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

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

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

Трассирования лучей (ray tracing);

Излучательности (radiosity).

Алгоритм трассирования лучей отслеживает в обратном направлении (backward) прохождение лучей света от глаза наблюдателя через каждый пиксел итогового изображения к поверхностям визуализируемых объектов.

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

Высокая сложность и, как следствие, малая скорость вычислений;

Подмена просчитанного непрямого освещения (indirect lighting) на «абстрактный» окружающий свет (ambient light), что приводит, например, к отсутствию рефлексов на поверхностях.

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

Полученное таким образом изображение сцены является корректным с точки зрения отражений света между поверхностями (diffuse interreflections), но имеет и свои неустранимые недостатки:

Большие затраты памяти при вычислениях;

Отсутствие в полученном изображении отражений и преломлений света в прозрачных поверхностях.

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

Рис. 25. Итоговая визуализация трехмерного изображения с использованием алгоритмов трассирования лучей и глобального освещения


8. Пример разработки нового изделия

с использованием средств автоматизации дизайна

В качестве примера рассмотрена разработка нового промышленного изделия - электроскутер, выполненная в Центре проектирования новых изделий (ЦПНИ) ОАО АК «Туламашза- вод» (дизайнер Гаврилин К.В.).

ОАО АК «Туламашзавод» в 1994 году одной из первых в J J России установила в своем ЦПНИ систему автоматизированного проектирования (САПР): графическую станцию Indigo 2 и графический суперкомпьютер Оnyx компании Silicon Graphics (рис. 26).

Рис. 26. Рабочее место дизайнера

8.1. Система программного обеспечения Alias|Wavefront

При дизайнерской проработке изделия специалистами данного предприятия используется система программного обеспечения Alias|Wavefront.

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

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

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

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

Оценку свойств поверхностей, таких как непрерывность кривизны, допуски на отклонение от заданной формы, образование бликов и др.

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

Передачу смоделированных поверхностей в систему автоматизированного проектирования и/или на установку для быстрого изготовления прототипа и/или на многооперациооные станки с ЧПУ.

Таким образом, использование системы программного обеспечения Alias|Wavefront позволяет резко сократить время дизайнерской проработки изделия, общий цикл его производства и значительно сэкономить средства, обеспечив сквозную автоматизацию производства, начиная от дизайнерских эскизов до вопло­щения изделия в материале. Удобство работы с текстурами, источниками света и анимацией обеспечивает создание фотореалистичных изображений и видеоклипов, которые могут использоваться для эффективного маркетинга изделия.

8.2. Профессиональные графические планшеты

для проектирования

В 1983 г. группа инженеров в Японии придумала первый беспроводный манипулятор и основала компанию Wacom с девизом: «Компьютер - это инструмент для расширения творческих возможностей человека».

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

Планшеты совместимы со всеми стандартными приложениями целого ряда операционных систем, а также с подавляющем большинством программного обеспечения для САПР.

Планшеты имеют формат: А5,А4,АЗ,А2.

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

13

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

А мы приступим к уроку. Изучив его, вы будете тратить на коррекцию подобных снимков не более 2-3 минут, а если сделаете экшен, то несколько секунд.

Шаг 1

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

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

Поскольку фото сделано при ярком солнечном свете, можно не волноваться по поводу усиления цветовых шумов при цветокоррекции. Однако, в других случаях это нужно иметь ввиду. Итак, первым делом дублируем слой, нажав CTRL+J.

Шаг 2

Переводим наше фото в режим Lab . Это выполняется командой Изображение - Режим - Lab (Image - Mode - Lab).

Выбираем дубликат слоя. Затем переходим в палитру Каналы (Channels) и выбираем канал Яркость (Lightness).

Затем, щелкнем по глазику канала Lab , чтобы увидеть изображение в цвете.

Я выполняю это нажатием двух комбинаций клавиш CTRL+1 и ~ , что значительно быстрей. В версии CS4 комбинации клавиш будут другие: CTRL+3 и ~.

Шаг 3

Применяем команду Изображение - Коррекция - Света/Тени (Image - Adjustment - Shadows/Highlights). Мы не случайно выбрали в шаге 2 канал Яркость. Теперь команда будет применяться только к нему, а так как информация о цвете и контрасте в режиме Lab находится в разных каналах, мы избежим увеличения цветовых шумов и появления цветовых артефактов.
Настройки в каждом конкретном случае будут различные, потренируйтесь и быстро поймете, как и в каких случаях поступать.

Шаг 4

Теперь займемся цветом. Каналы а и b в цветовой модели Lab смогут дать нам сколько угодно цвета, даже такого, который невозможно отобразить на мониторе и который не существует в природе. Воспользуемся методом наложения каналов с помощью команды Внешний канал (Apply Image). Выбираем канал «а» в палитре каналов, аналогично шагу 2. Переходим в меню Изображение - Внешний канал (Image - Apply Image). Выбираем режим наложения Перекрытие (Overlay) или Мягкий свет (Soft Light).

Шаг 5

Выбираем канал « и также накладываем его сам на себя в режиме Перекрытие .
Не забываем о том, что мы можем варьировать значением Прозрачности (Opacity) в диалоговом окне данной команды. Вот полученный результат после операций с каналами.

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

Шаг 6

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

Шаг 7

Теперь принимаемся за повышение резкости. Делать мы это будем не совсем обычным способом, в два этапа. На первом этапе повышается резкость и контраст крупных областей изображения, на втором - прорабатываются мелкие детали. Для начала проверим в палитре каналов, выбран ли у нас канал Яркость. Переходим в меню Фильтр - Резкость - Контурная резкость (Filter - Sharpen - Unsharp mask). Сдвигаем ползунки Эффект (Amount) и Радиус (Radius) вправо до конца. Получилось невесть что, но так и нужно.

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

Именно поэтому данный метод имеет английскую аббревиатуру HIRALOAM (High Radius - Low Amount). Достигнув оптимального значения, увеличиваем значение Порога (Threshold), чтобы исключить действие команды на мелкие детали.

Шаг 8

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

А вот окончательный результат.

К сожалению при таком размере рисунка трудно оценить результаты повышения резкости, но уверяю, они вас порадуют. В следующих уроках мы продолжим знакомство с цветовым пространством Lab.

Желаю всем творческих успехов!

Цветовая модель LAB

В этой цветовой модели цвет состоит из:

Luminance - освещенность. Это совокупность понятий яркость (lightness) и интенсивность (chrome)

A - это цветовая гамма от зеленного до пурпурного

B - цветовая гамма от голубого до желтого

То есть двумя показателями в совокупности определяется цвет и одним показателем определяется его освещенность.

LAB - Это аппаратно-независимая цветовая модель, то есть она не зависит от способа передачи нам цвета. Она содержит в себе цвета как RGB так и CMYK, и grayscale, что позволяет ей с минимальными потерями конвертировать изображение из одной цветовой модели в другую.

Еще одним достоинством является то, что она, в отличие от цветовой модели HSB, соответствует особенностям восприятия цвета глазом человека.

Часто используется для улучшения качества изображения, и конвертирования изображений из одного цветового пространства в другое.

Цветовая модель Lab

Модель Lab разработана в 1976 году (и продолжает дорабатываться) научной организацией Comission International d"Eclairage, чьей основной задачей является измерение цвета. Модель Lab конструируется согласно тому, какой цвет в действительности и как его воспринимают в разных средах.

Через много лет после разработки модели Lab оказалось, что она удивительно соответствует биологическому механизму восприятия цвета человеком. За это открытие американцы Дэвид Хьюбл и Торстен Вайзел получили в 1981 году Нобелевскую премию.

Цветовой режим Lab пользуется тремя каналами, один из которых (L) соответствует яркости (Luminosity), а два других -- цветовым параметрам, обозначаемым буквами а и Ь.

Канал а содержит цвета в диапазоне от темно-зеленого (низкая яркость) через серый (средняя яркость) до ярко-розового (высокая яркость).

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

Режим Lab является распространенной цветовой моделью в полиграфии. Если вы готовите изображение к печати, рекомендую работать с ним именно в режиме Lab -- это гарантирует вам, что при переходе к режиму CMYK ваши цвета не исказятся. В этом режиме программа Photoshop работает с такой же скоростью, как и в режиме RGB, т. е. значительно быстрее, чем в CMYK. Интересный факт, что при каждом переходе от профиля RGB к профилю CMYK Photoshop вначале выполняет внутреннее преобразование в модель Lab. Как только вы настроите установки для печати или цветоделения, Photoshop использует пространство LAB для связей значений RGB и CMYK, а затем строит базу данных, которая называется таблица просмотра. (Look-Up Table-LUT). Во время преобразования Photoshop использует эту таблицу, чтобы создавать необходимые цвета. Проще говоря, при любом переходе от режима RGB к режиму CMYK программа Photoshop переводит изображение в режим Lab в качестве промежуточного этапа.

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

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

Многие из нас в той, или иной степени используют при обработке возможности цветового пространства Lab.
А слышали о нём практически все.

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

Сегодня я опишу ещё один, менее распространённый и очевидный способ манипуляций с цветом в пространстве Lab.

Попутно мы вспомним концепцию многослойного неразрушающего редактирования изображений, применение команды Apply Image, а также работу со Smart-объектами.

Урок создан на примере Photoshop CS 6. Некоторые нюансы интерфейса в предыдущих версиях могут не работать, либо отличаться.

На рис. 01 изображена очаровательная модель, которой делают макияж на конкурсе маникюра, в рамках выставки "Estet Beauty Expo 2012" в Киеве.

рис. 01.

Проанализируем картинку.
Цветовое пространство - sRGB.
Общий цветовой баланс меня удовлетворяет. Его трогать не будем.
Специфика освещения такова, что цвет лица девушки получился достаточно бледным, а на правой (относительно нас - левой) части её лица присутствуют синеватые рефлексы.

Задача на обработку: устранить или ослабить холодные рефлексы слева, деликатно усилить насыщенность и разнообразие цветовых оттенков лица.

Определимся с порядком операций.
Как правило, если мы хотим осуществить некое воздействие на цвет изображения в целом, предварительно следует устранить локальные недостатки.
Поэтому сначала займёмся рефлексами.

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

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

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

Это:
1. правая скула и щека девушки;
2. подбородок;
3. шея.

В силу этого для каждой из них будем создавать отдельный слой.

Покажу это детально на примере первой области.

рис. 02. Над нижним слоем с исходником создадим пустой слой, задав для него режим наложения Color:

В соответствии с концепцией многослойного редактирования, назовём этот слой "скула и щека".
Нажав клавишу [B], выберем инструмент кисть (brush), и зададим для него очень низкую интенсивность воздействия (Opacity = 3%):

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

рис. 04.

Осталось выставить остальные параметры кисти: Hardness (жёсткость краёв) и размер.
Для этого, при активном инструменте Brush, делаем правый клик.
Открывается окно:

рис. 05.

Для нашего случая я бы выбрал мягкую кисть: величина Hardness около 30%.
А вот размер кисти в данном окне выставлять не стоит, т.к. этот способ начисто лишён наглядности.

Размер кисти можно изменять клавишами "[" (уменьшение), и "]" (увеличение).
При этом результат можно визуально соотносить с областью, которую предстоит обрабатывать:

рис. 06.

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

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

рис. 07.

Работая мягкой кистью, и меняя её размер в соответствии с размером обрабатываемого участка, закрашиваем целевую область.
В данном случае это - правые скула и щека девушки.

Степень внесённой коррекции контролируем "промигиванием" слоя "скула и щека" (рис. 02).
Заканчиваем обработку тогда, когда внесённые изменения несколько сильнее , чем следует.

Аналогично обрабатываем оставшиеся две области: подбородок и шею.
Для каждой из них создаём отдельный слой с режимом наложения Color и соответствующим названием.

Когда все три области обработаны, объединяем эти слои в группу, которую называем "Skin_color_correct_brush".
Упоминаем в названии кисть, т.к. далее будем корректировать цвет уже без ее применения.

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

рис. 08.

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

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

В этих случаях лучше поступать по другому.
Продемонстрирую сказанное на примере установки непрозрачности группы "Skin_color_correct_brush".
Вместо того, чтобы открывать окошко регулировки величины Opasity, можно поместить курсор на само название параметра.
При этом курсор изменит вид, как показано на рис. 09:

рис. 09.

После этого, нажав и удерживая нажатой левую кнопку мыши, регулируем величину непрозрачности движениями мыши влево и вправо.
Цифра в окошке показывает текущее значение параметра.

На этом первый этап нашей коррекции - устранение холодных рефлексов на правой стороне лица девушки, можно считать законченным.

2. Переходим ко второму этапу: деликатно усилить насыщенность и разнообразие цветовых оттенков лица.

Поскольку для решения задачи предполагается посещение цветового пространства Lab, то посвятим ему несколько строчек:

1. в Lab информация о яркости и цвете полностью разделена
2. информация о цвете, в отличие от RGB, кодируется не 3-мя, а 2-мя цифрами: "a" и "b".
3. яркость (L) и вовсе определяется одной цифрой (в процентах, от 0 до 100)
4. все нейтральные объекты имеют в Lab цветовые координаты a=0 и b=0, что весьма удобно при анализе.

Представление цвета в Lab организовано таким образом: цветовая плоскость образуется пересечением двух взаимно перпендикулярных цветовых осей: "a" и "b".
Каждая из них отвечает за соотношение в итоговом цвете двух противоположных (оппонирующих) оттенков:

Ось "a" - за соотношение Magenta и Green;
- ось "b" - за соотношение Yellow и Blue.

В этих парах первые: (Magenta и Yellow), соответствуют положительным значениям (тёплые оттенки).
Вторые: (Green и Blue) - отрицательным (холодные оттенки).

рис. 10.

Нейтральному соответствует только точка пересечения этих осей.
Начало отсчёта - "0", находится посередине, а "краевые" значения цвета: -128 для "холодных" оттенков, и +127 - для "тёплых" оттенков.

Мы планируем использовать некоторые свойства Lab, но наше изображение пока находится в sRGB.
Как же быть?

Первое, что приходит в голову - конвертировать изображение в Lab командой Edit → Convert to Profile... , задав в качестве целевого пространства Lab.
Более того, в данном конкретном случае можно так и поступить.

Но нас интересуют общие подходы, по возможности, не привязанные к конкретному примеру.
Конвертация из одного пространства в другое влечёт за собой исчезновение корректировочных слоёв.
Скажем, если бы мы на первом этапе применили Curves, Levels или Color Balance, то при конвертации в Lab Photoshop "съел" бы эти слои.
Картинка при этом не изменится, т.к. их влияние на изображение будет учтено при конвертации.

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

Это противоречие решается благодаря применению т.н. Smart-объектов, о которых я .
Кому лень ходить по ссылке: Smart-объект - это файл в файле.
Внутри него мы можем конвертировать что угодно и во что угодно. Это никак не нарушит структуру основного PSD-файла.
Результат этой "внутренней" коррекции автоматически будет передан во внешний PSD-файл, причём Photoshop самостоятельно приведёт его к цветовому пространству внешнего файла.

Чтобы создать нужный нам Smart-объект, создадим над уже имеющейся структурой слоёв (см. рис. 09) ещё один, который является суммой всех, ранее созданных.
Для этого, сделав активной группу "Skin_color_correct_brush" (см. рис. 09), нажав и удерживая нажатым , через меню выполним команду Layer → Merge Visible .
Над нашей послойной структурой возникнет новый, суммарный слой, который мы назовём "merged layer":

рис. 11.

Осталось превратить его в Smart-объект.
Через меню выполним команду: Layer → Smart Objects → Convert to Smart Object .
Верхний слой структуры будет конвертирован в Smart Object, что отобразится в палитре Layers следующим образом:

рис. 12.

Двойной щелчок по верхнему слою откроет его, как новый файл, в котором на данный момент есть только один слой: "merged layer".
Теперь можем спокойно конвертировать его в пространство Lab: Edit → Convert to Profile... , задав Lab в качестве целевого пространства.
Всё подготовлено для дальнейшей коррекции.

Теперь давайте пофантазируем, что будет, если в Lab наложить цветовые каналы сами на себя в режиме Overlay?

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

Цветовой канал в Lab - это Ч/Б изображение, практически всегда малоконтрастное.
Нейтральные для данного канала пикселы имеют я нём яркость 128.
Тёплые тона - будут ярче среднего значения 128, а холодные - темнее:

рис. 13.

рис. 14.

Что же будет, если наложить такой канал сам на себя в режиме наложения Overlay?
И как это скажется на нашем изображении?

Интересующее нас наложение на понятном почти всем языке кривых, выглядит так:

рис. 15.

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

1. Пикселы, имевшие яркость 128, останутся без изменений.
Учитывая специфику Lab, это означает, что то, что было нейтральным по цвету, таким же и останется.
Т.е. баланс белого не сместится, и нас это в данном случае устраивает.

2. В средних тонах (т.е. для пикселов, чья яркость не сильно отличается от средней в обе стороны), крутизна кривой максимальна.
Т.о. цветовой контраст будет максимально усилен для изначально средненасыщенных областей.

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


Наглядная иллюстрация специфики режима наложения Overlay.

Анимированная картинка (рис. 16) состоит из 3-ёх кадров:

  1. №1. Обычный чёрно-белый градиент.
  2. №2. Результат наложения этого градиента самого на себя в режиме Overlay.
  3. Разница (Difference) между 2 и 1 (с увеличенным для наглядности контрастом).
рис. 16.

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

(чем разница 1 и 2 больше - тем светлее эта область на 3-ем слайде).

Как известно, критерий истины - это практика.
Реализуем все описанное.

Внутри нашего Smart-объекта создадим две копии исходного "merged layer".
Не мудрствуя лукаво, назовём эти слои "a" to "a" overlay и "b" to "b" overlay:

рис. 17.

Почему для выполнения коррекции я создаю два слоя? Ведь наложить сами на себя оба цветовых канала можно и на одном?

Ответ должен быть очевиден для тех, кто внимательно прочёл описание первой части статьи.
Реализация коррекций в цветовых каналах "a" "b" в виде отдельных слоёв, позволит нам в дальнейшем, путём регулирования их непрозрачности, в максимальной степени гибко гармонизировать итоговый результат.
Концепцию "разделяй и властвуй" придумали умные люди.

Теперь нужно обеспечить, чтобы слой "a" to "a" overlay оказывал влияние только на канал "a", а слой "b" to "b" overlay - только на канал "b".
Двойной клик на каждом из них откроет окно регулировки параметров наложения слоя:

рис. 18.

Красная рамочка выделяет три чекбокса, которые определяют, на какие каналы изображения будет влиять данный слой.
Для слоя "a" to "a" overlay мы оставляем галочку только в канале "a" (см. рис. 17), а для слоя "b" to "b" overlay - только в канале "b".

Взглянув после этого в палитру Layers, мы увидим две пиктограммы, которых раньше не было.
Они выделены красной рамкой на рис. 19:

рис. 19.

Эти пиктограммы означают, что для соответствующего слоя была выполнена тонкая регулировка параметров наложения.
Давно ожидаемое мной новшество!

Приступим непосредственно к наложению слоёв.
Для этого воспользуемся командой Image → Apply Image...

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

Мы хотим наложить цветовые каналы сами на себя.
Подробно опишу процесс на примере канала "a".
Для применения Apply Image, сначала нужно стать туда, куда мы будем вставлять.
С самого начала мы оговорили, что воздействие на канал "a" будет осуществлять слой "a" to "a" overlay.
Сделаем его активным:

рис. 20.

Затем в палитре Channels сделаем активным целевой канал "a":

рис. 21.

После этого вместо нашей картинки мы увидим следующее:

рис. 22.

Так и должно быть. В настоящее время у нас активен только канал "a", на который мы хотим воздействовать.
Именно его Photoshop нам и показывает.
Но как же работать дальше? Ведь мы будем манипулировать с цветом.
Для "дозировки" воздействия нам просто необходимо видеть полноцветное изображение!

Именно в таких случаях в полной мере проявляется мощь и многогранность интерфейса Adobe Photoshop!

В палитре Channels щёлкнем по пиктограмме глаза в композитном слое (выделено красной рамкой):

рис. 23.

Теперь Photoshop показывает нам полноцветное изображение, а активным остаётся только канал "a", что нам и нужно.

Вызываем команду Image → Apply Image...
Открывается окно с её интерфейсом, а наша красавица неожиданно зеленеет.
Причина этого - режим наложения Multiply, умолчательный для команды Apply Image:

рис. 24.

Меняем его на Overlay, цвет нормализуется, и мы сразу видим увеличение цветовых контраста и насыщенности по оси "a" (Magenta - Green).
Следим за тем, чтобы в секции Source стояло "Channel: a" (он ведь накладывается сам на себя).

рис. 25.

Повторим наши действия для второго цветового канала.
Сделаем активным слой "b" to "b" overlay, затем в палитре Channels активируем канал "b", после чего щелкаем по глазку композитного слоя.
Вызываем команду Image → Apply Image...
В данном случае увеличение цветовых контраста и насыщенности будет по оси "b" (Yellow - Blue):

рис. 26.

На рис. 25 и 26 видно, что интерфейс команды Image → Apply Image... позволяет сразу же задать непрозрачность наложения.
Но я этого не сделал, несмотря на явную избыточность внесённой коррекции для обоих слоёв.
Сейчас мы это сделаем гораздо более наглядным способом.

Объединим оба корректирующих слоя в группу под названием "all corrections":

рис. 27.

Распределение функций в этой структуре таково:

Слой "a" to "a" Overlay отвечает только за коррекцию в цветовом канале "a";
- слой "b" to "b" Overlay отвечает только за коррекцию в цветовом канале "b".

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

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

Я остановился на следующих значениях:

рис. 28.

Мы закончили всё, что планировали внутри Smart-объекта.
Чтобы результат этих манипуляций стал доступен в исходном (верхнеуровневом) PSD-файле, внутри Smart-объекта обязательно нужно сохраниться, нажав .
После чего закрываем окно Smart-объекта и возвращаемся в исходный PSD-файл.

Он как был, так и остался в пространстве sRGB.
Photoshop автоматически приведёт содержимое Smart-объекта к цветовому пространству внешнего файла.
В духе концепции многослойного редактирования, переименуем Smart-объект в "Lab color channels Overlay".
Теперь палитра Layers и итоговая картинка выглядит так:

рис. 29.

3. Резюме.

1. Уверен, многие подумают: господи, а зачем так сложно?
Второй этап коррекции я в два счёта сделаю с помощью Curves/Levels/Hue-Saturation/Vibrance/Co lor Balance ... (лишнее зачеркнуть).
А все эти переходы между пространствами - и вовсе полная ерунда!

Постараюсь сразу ответить:

Lab позволяет получить более качественные результаты, когда мы хотим воздействовать только на цвет;
- Lab, в силу специфики своей структуры, позволяет разделять близкие цветовые оттенки. В RGB это проблематично.

Еще могут спросить: хорошо, с Lab всё понятно. Но почему мы, попав в него, начали манипулировать с каналами, а не ограничились работой с кривыми?

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

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

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

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

3. Описанный приём применим не только для портретов.

4. Подробное описание метода занимает достаточно много места.
Однако, собственно Lab-коррекция легко автоматизируется.
Коротенький action почти мгновенно создаёт описанный Smart-объект, в нём - соответствующие слои, с заданными названиями и параметрами наложения.
Вручную остаётся только подобрать итоговые значения непрозрачности слоёв и группы для получения гармоничного результата.
Что занимает максимум 2 - 3 минуты.
Данный action создан и доступен для скачивания по ссылке ниже.

Позволю себе несколько реплик о том, почему я пишу именно так, а не иначе:о))

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

2. Мощь Photoshop заключается, в том числе, и в том, что практически любую задачу можно решить многими способами.
Каждый из которых имеет свои плюсы и минусы.
Я выбираю из них те, которые позволяют мне описать запланированное (см. п. 1).
В каких-то моментах этот выбор может быть не самым оптимальным.

3. Как и все мы, я не являюсь единственным носителем истины.
И вполне могу сам чего-то не знать.