Цветовая модель Lab. О цветовых пространствах

08.05.2019

Цветовая модель 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).

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

В этой модели любой цвет определяется светлотой (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

Интерпретация системы CIELAB

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

CIELAB , обсуждаемая здесь - это математическая система оценки цвета . Другие имеющиеся системы включают в себя Hunter Lab и FMC II . Однако система ОЕ признана в качестве промышленного стандарта для искусственой оценки цвета.

Три элемента, необходимые для описания цвета

Чтобы точно воспринимать цвет, нужны 3 элемента:
1) Источник света;
2) Цветовой образец;
3) Наблюдатель.

Источник света

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

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

Источник света в цветном мониторе компьютера измеряется инструментом, который называется колориметр или спектрофотометр . Спектрофотометр содержит источник света D65 и многие другие компоненты, необходимые для цветоанализа. Оператор измеряет стандартный цвет через линзу спектрофотометра. Затем инструмет передаёт результаты в компьютер, который, в свою очередь производит математические вычисления. Затем таким же образом оценивается цветовой образец и сравнивается со стандартом.

Цветовой образец

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

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

Наблюдатель

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

Цветовое пространство CIELAB

Термин CIELAB сочетает аббревиатуру CIE и буквы, которые представляют аспекты цветового пространства LAB .

Международный Комитет по освещению (The International Commission on Illumination - CIE) завершил первую фазу системы CIELAB в 1931 году. Изначально она разрабатывалась как объективный метод оценки цвета с использованием источника света, цветового образца и наблюдателя . Первоначальная оценка называлась "двухградусным наблюдателем" , потому что она основывалась на двухградусном поле зрения. Этот метод наблюдения цветового образца эквивалентен тому, что видит человеческий глаз на расстоянии.

В 1965 году Комитет произвёл 2 существенных изменения с системе CIELAB , разработав "десятиградусного наблюдателя" и определив искусственный дневной свет (D65) в качестве стандартного источника света . Десятиградусное поле зрения лучше представляет цветовой образец, рассматриваемый на расстоянии вытянутой руки. И в 1976 году последняя ревизия системы CIELAB была названа CIE 1976 .

Система CIELAB использует трёхцветные значения , являющиеся искусственной интерпретацией того, что видит человеческий глаз. Эти значения характеризуются как: Х (представляющий красный возбудитель глаза), Y (представляющий зелёный возбудитель глаза) и Z (представляющий синий возбудитель глаза). Значение Y также используется для характеристики светлоты образца.

По существу, система CIELAB сравнивает образец со стандартом и делает числовое определение на основе воспринимаемой цветовой разницы. Другими словами, цветовой разнице придаётся значение и вычерчивается в диаграмму.

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

Таблица ниже показывает значения системы CIELAB , которые будут описываться далее по тексту:

Значение - описание

L* Lightness/darkness (0 = Black; 100 = White)

Светлота/темнота (0 = чёрный; 100 = белый)

a* Red shade (if the value is positive)
Green shade (if the value is negative)

Красный оттенок (если значение положительное)
зелёный оттенок (если значение отрицательное)

b* Yellow shade (if the value is positive)
Blue shade (if the value is negative)

Жёлтый оттенок (если значение положительное)
синий оттенок (если значение отрицательное)

DL* Lighter than standard (if the value is positive)
Darker than standard (if the value is negative)

Светлее стандарта (если значение положительное)
темнее стандарта (если значение отрицательное)

Da* More red than standard (if the value is positive)
More green than standard (if the value is negative)

Больше красного, чем в стандарте (если значение положительное)
больше зелёного, чем в стандарте (если значение отрицательное)

Db* More yellow than standard (if the value is positive)
More blue than standard (if the value is negative)

Больше жёлтого, чем в стандарте (если значение положительное)
больше синего, чем в стандарте (если значение отрицательное)

DC More saturated than standard (if the value is positive)
Less saturated than standard (if the value is negative)

Более насыщен, чем стандартный (если значение положительное)
менее насыщен, чем стандартный (если значение отрицательное)

Система CIELAB значения

Значения L*

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

Если значение L* равно нулю, образец чёрный. Если значение равно 100 - образец белый. Любой образец без цветового тона, и который попадает в значения отражения от 0 до 100%, будет вариацией серого. Если значение близко к 0%, образец будет тёмно-серым. Если значение ближе к 100%, то он будет светло-серым.

Значения DL*

Дельта L* или DL* определяет разницу светлоты/темноты между образцом и стандартом . Это сделано просто, вычитая значение L* стандрта из значения L* образца. Если результат этого вычитания - положительное значение, тогда образец будет "светлее" стандарта. Если отрицательный - образец будет "темнее" стандарта.

Например, если у образца значение L* равно 43,17, а у стандарта L* = 43,73, то Дельта L* или DL* будет = -0,56 (43,17 - 43,73 = -0,56). (См таблицу ниже.) Другими словами, образец будет на 0,56 единиц CIELAB "темнее" стандарта. (Заметьте, что для всех дельта-расчётов стандартное значение всегда вычитается из значения образца.)

Значения a*

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

В цветовом пространстве оттенки красного/зелёного представлены горизонтальной плоскостью, которая проходит с востока на запад. Если значение a* положительное, то цвет появится в красном регионе цветового пространства. Если отрицательное - в зелёном. Значение а* , равное нулю, значит, что образец серый и появится прямо в центре красной/зелёной плоскости. Заметьте, что эта плоскость также пересекается с осью светлоты/темноты, так что насыщенность цвета со значением а* , равным нулю, фактически определяется его значением L* .

Значения Da*

Значение Дельта а* или "Da*" определяет разницу красного/зелёного между стандартом и образцом. Это разница между значением а* стандарта и значением а* а* образца равно 0,53 и значение а* стандарта равно 1,03, то значение Da* будет равно -1,56 (-0,53 - 1,03 = -1,56).

Поскольку, в данном случае, значение Da* отрицательное, то воспринимаемая цветовая разница (согласно анализу спектрофотометра) будет зеленее, чем стандарт. Если значение Da* положительное, цветовая разница будет краснее стандарта.

Значения b*

Жёлтые/синие оттенки обозначены буквой "b*" . Опять же, эти значения не обязательно означают, что образец жёлтого или синего цвета. Это просто значит, что образец имеет жёлтый или синий оттенок.

На рисунках вверху показана жёлтая/синяя переменная на горизонтальной плоскости, идущая с севера на юг. Если значение b* образца положительное (такое как 46,30), образец появится в жёлтом регионе цветового пространства. Если отрицательное - в синем регионе.

Значения Db*

Значение Дельта b* или "Db*" определяет разницу жёлтого/синего оттенка между стандартом и образцом путём вычитания значения b* стандарта из значения b* образца. Если в нашем примере значение образца b* равно -44,78, и значение b* стандарта равно - 46,30, то значение Db* будет 1,52 (-44,78 - (- 46,30) = 1,52).

Если значение Db* положительное, то воспринимаемая цветовая разница (по результатам анализа спектрофотометра) будет желтее стандарта. Если значение Db* отрицательное, то цветовая разница будет синее стандарта.

Заметьте, что в цветовом пространстве ось b* проходит перпендикулярно оси а* в той же горизонтальной плоскости. Это значит, что каждый оцениваемый цветовой образец будет иметь как красные/зелёные оттенки (а* ), так и жёлтые/синие (b* ). Невозможно иметь одни, и не иметь другие.

Значения С*

Человек-наблюдатель может анализировать цветовой образец как "более насыщенный" или имеющий "больше цвета" , чем стандарт. В этом случае, образец можно описать, как насыщенный цветом. Этот аспект цвета называется "цветностью" (chromaticity) и система CIELAB обозначает это значение как "С*" .

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

Это не значит, что все серые образцы имеют нулевое значение С* . Существует множество оттенков и тонов серого с разной степенью насыщенности, но все они имеют значение С* близкое к нулю.

Заметьте, что 1) чем дальше от центра находится значение С* цвета, тем выше его насыщенность или цветность, и 2) значения С* не могут быть отрицательными. Таким образом, образец, который не имеет насыщенности, никогда не может считаться менее насыщенным, чем образец, находящийся в центре цветового пространства.

Значения DC*

CIELAB генерирует значения Дельта С* или "DC*" , вычитая значение С* стандарта из значения С* образца. В отличие от значения С* , значение DC* может быть отрицательным (такое, как -1,54). Отрицательные значения DC* очевидно отображают низшую насыщенность и хроматичность, чем положительные значения DC* . Таким образом, если значение стандарта С* равно 46,32 и значение С* образца равно 44,78, то значение DC* будет -1,54 (44,78 - 46,32 = -1,54), и образец будет считаться менее насыщенным, чем стандарт.

Значения h

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

Значение "h" представлено градусами угла и оно никогда не может быть отрицательным . Поскольку значение цветности (С* ) зависит от тона (h ), то значение С* не может быть нанесено на диаграмму до того, как будет определено нахождение значения h на периметре круга. Значение С* должно находится на одной плоскости со значением h .

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

Значения Dh*

Для вычисления значения Дельта h* или Dh* , система CIELAB вычитает значение h стандарта из значения h образца. Например, если значение h стандарта равно 271,27 и значение h образца равно 269,32, то значение Dh* будет равно -1,95 (269,32 - 271,27 = -1,95). Значение h примерно равное 270,00 будет означать синий цвет.

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

Как упоминалось выше, один и тот же образец не может быть слишком синим, или слишком жёлтым одновременно. Таким образом, разница Dh* между синим стандартом и синим образцом будет казаться либо красной, либо зелёной. То же самое применимо к значению Dh* , которое нe жёлтое, и нe синее. Отрицательное значение Dh* для красного образца указывает, что тон будет "синее" стандарта. Положительное значение Dh* для красного образца указывает, что тон будет казаться "желтее" стандарта.

Значения DE*

Возможно, самый чрезмерно используемый метод определения цветового утверждения (или отбраковки цвета) - это Дельта Е* или DE* . Система CIELAB использует вычисление DE* как эталонное значение для установки толерантностей . К сожалению, многие отделы качества имеют тенденцию принимать это значение без учёта других аспектов цвета, таких как светлота, насыщенность (цветность) и тон.

Расчёт DE* производится по формуле DE* = [ (DL* )2+(Da* )2+(Db* )2] 1/2 . Если мы присваиваем равные значения всем трём аспектам цветового образца (светлота/темнота, красный/зелёный оттенок, жёлтый/синий оттенок), то значение DE* становится очень произвольным.

Например, если значение DL* образца равно -1,00, значение Da* равно 0,00 и значение Db* равно также 0,00, то значение DE* будет равно 1,00. Однако, если мы оцениваем другой образец, у которого значение DL* равно 1,00, значение Da* равно 0,00 и значение Db* равно 0,00, то значение DE* всё также будет равно 1,00. (Заметьте, что значение DE* всегда положительное, потому что при расчёте значения DL* , Da* и Db* возводятся в квадрат.)

Таким образом, образцы, которые на 1,0 единицу CIELAB темнее или светлее стандарта, всё также могут иметь одинаковые значения DE* . Не многие цветовые образцы могут допускать такие отклонения и оставаться точными. Следовательно, 1) результаты расчётов значений DE* не должны быть единственным источником для установления допуска/недопуска толерантностей, и 2) должны учитываться другие аспекты оценки цвета.

Ниже две картинки, где изображены визуально воспринимаемые человеческим глазом цветa в рамкаx цветового тела CIELAB.

Важно

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

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

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

Введение и постановка задачи

Итак, начнем! Данная фотография по сути является «тур-фото», снятым в автоматическом режиме на простую камеру Pentax K-x в автоматическом режиме с китовым объективом Pentax 18-55mm F/3.5-5.6 AL в формате JPEG (параметры съемки: 1/1000с, f/9.0, ISO 200, 18мм).

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

Подготовительные моменты

Начнем с борьбы с хроматическими абберациями, виньетированием и дисторсией объектива. Воспользуемся фильтром Filters -> Lens Corrections (Коррекция линзы), т.к. фотоаппарат и объектив достаточно популярные, фильтр прекрасно сработает в автоматическом режиме.

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

При помощи Healing Brush (Лечащая кисть), Spot Healing Brush (Точечная лечащая кисть) или Patch Tool (Заплатка) уберем мусор в кадре: пылинки на матрице, какие-то неприятные детали на песке и т.п.. Главное на этом этапе - следить, чтобы текстура песка не замыливалась, а детали не начинали повторяться.

По завершении этого последнего подготовительного момента перейдем к цветовой и тоновой коррекциям.

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

Принцип построения LAB цветовой модели в двух словах

Перейдем в 16-битный режим: Image -> Mode -> 16 Bits/Channel, и в цветовую модель LAB: Image -> Mode -> Lab Color. Хочу обратить внимание, что для достижения максимально качественного результата лучше делать это именно в такой последовательности.

Для тех, кто еще совсем не знаком с принципом построения цветовой модели LAB, хочу сказать, что в LAB, также, как и в стандартной (и вероятно, самой привычной фотографам) модели RGB, изображение состоит из трех каналов. Но в отличие от RGB-модели, где R,G,B каналы по сути - это нечто очень похожее на черно-белые варианты исходной картинки, как если бы фотографию снимали на черно-белую пленку с применением цветных светофильтров (соответственно красного, зеленого и синего), в модели LAB вся информация о яркости изображения содержится в канале Lightness (Яркость), а информация о цветах - в каналах «a» и «b».

Каналы «a» и «b» при этом выглядят как малоконтрастные изображения, близкие к средне серому, который является нулевой/начальной точкой отсчета. В канале «a» содержится информация о цветовых переходах от зелено-цианового к красному, а в «b» - от синего к желтому. Таким образом, можно провести аналогию между каналами «a» и «b» и работой с ползунками White Balance (цветовой температуры) и Tint (оттенка) в RAW-конвертерах: так, например, чем левее ползунок White Balance, чем чернее изображение канала «b», тем синее картинка, чем правее ползунок White Balance, чем, светлее изображение канала «b», тем желтее картинка.

Практическая ретушь фотографии. Алгоритм обработки и его построение

Общий алгоритм обработки будет следующий: в начале мы разберемся с яркостью и контрастом всей фотографии, затем проработаем детали и усилим объемность объектов и в конце поработаем с цветом: увеличим насыщенность и прибавим дополнительных оттенков - «растянем/разгоним» контрастные цвета. Хочу заметить, что в ходе придания дополнительных объемов мы не будем ничего рисовать кисточкой, а значит наша обработка будет быстрой и максимально естественной.

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

Тоновая коррекция пейзажа

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

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

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

Alt+кликнем на полученную маску, чтобы видеть ее, воспользуемся Levels (уровнями) и увеличим контраст таким образом, чтобы человек на фото стал абсолютно черным, а все остальное - белым.

Теперь возьмем инструмент Lasso (лассо), в один быстрый росчерк выделим модель, перевернем выделение Ctrl+Shift+I или Select -> Inverse (Обратить) и зальем весь мусор белым. В завершение доработки маски размоем ее, чтобы побороться с пиксельным шумом по краям высококонтрастных объектов, сделать это можно простым фильтром размытия по Гауссу - Filter -> Blur -> Gaussian Blur, или просто подвинув ползунок Feather (Растушевка) в панели масок. На этом этапе важно не переборщить, иначе вместо мягкого перехода, могут появиться ореолы.

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

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

Теперь для получения желаемого результата, то есть для того, чтобы наше последнее действие влияло в кадре только на скалу и модель, нам нужно всё, кроме этих двух объектов, закрыть черной маской. И для ее создания у нас опять уже почти все готово. В качестве заготовки маски мы снова возьмем канал lightness (Яркость) результирующей картинки,

инвертируем его и

увеличим контраст нашей будущей маски уровнями, так, чтобы черное стал совсем черным, фигура модели стала абсолютно белой, а скала - белой большей частью.

Теперь, как и в прошлый раз, при помощи инструмента Lasso (лассо) быстро выделим всё лишнее (то есть, все, кроме фигуры модели, правой скалы, и, возможно, камня рядом с моделью), после чего зальем черным и также, как уже делали ранее, размоем полученное очень небольшим радиусом фильтром Filter -> Blur -> Gaussian Blur (размытие по Гауссу) или передвижением ползунка Feather (Растушевка) на панели масок. Также мне захотелось закрыть маской часть скалы справа внизу для большего сохранения общих макрообъемов кадра, что было сделано при помощи обычной черной мягкой кисти большого радиуса. После всех этих несложных манипуляций в результате мы получили маску вида:

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

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

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

Канал lightness (Яркость) на данном этапе выглядит так:

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

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

Начнем с того, что выделим левую скалу и зону слева от модели при помощи инструмента Quick Selection Tool (Быстрое выделение), затем для более точного и аккуратного результата воспользуемся функцией уточнения границы Refine Edge. Из полученного выделения создадим маску для нашего слоя с кривыми и инвертируем её.

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

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

Убедившись, что маска активна, воспользуемся функцией Image -> Apply Image (Внешний канал). В качестве применяемого слоя (Layer) выберем Merged (то есть, тот вариант картинки, который мы видим), в качестве канала (Channel) - Lab или Lightness (Яркость), так как мы работаем в LAB-пространстве, в данном случае это одно и тоже, режим наложения нам подойдет Multiply (Умножение) или Darken (Замена тёмным).

После нажатия на OK наша маска примет следующий вид:

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

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

Цветокоррекция пейзажа: увеличение насыщенности и «растаскивание/разгон» цветов

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

Чтобы не слишком увеличивать насыщенность фигуры модели на фото, скопируем на данный слой кривых маску, которую создали в самом начале для нашей первой коррекции. Просто Alt+перетащим её, чтобы получить копию. Но полностью убирать эффект увеличения насыщенности с модели я не хочу (получится разбаланс фото по насыщенности), поэтому ослаблю её на 60%, подвинув ползунок Density (плотность) в панели настроек маски.

В результате получим:

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

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

Воспользуемся достаточно известным «Марсианским» методом, предлагаемым Дэном Маргулисом для «разгона/растаскивания» цветов и проявления дополнительных, «скрытых» оттенков. Создадим еще один слой кривых, воспользуемся «пальчиком» и, найдя в песке (ведь именно в нем мне больше всего хочется «разогнать» цвета) наиболее нейтральное по цвету и яркости (относительно песка) место Ctrl+Shift+Кликнем, поставив, таким образом, точку на кривой в каждом из каналов. Теперь в каналах «a» и «b» будем передвигать ползунок черного или белого (в зависимости от того, к какому ближе окажется точка) к центру гистограммы, примерно к её подножию (с противоположной стороны кривая к этому времени сольётся с границей рабочей области примерно на четверть).

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

Наша фотография и структура слоев на текущем шаге:

Цветовая и тоновая коррекции фигуры модели

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

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

Как и прогнозировалось, результат оказался чуть более насыщенным, чем мне хотелось бы, поэтому убавим Opacity (Непрозрачность) данного слоя до 77%.

Оценивая результат, я пришел к выводу, что, учитывая, что фигура модели освещена исключительно отраженным светом, с контрастом и яркостью я также переборщил, поэтому сгруппируем (Ctrl+G) два слоя, отвечающие за коррекцию модели, и уменьшим непрозрачность полученной группы до 80%. Делается это для того, чтобы непрозрачность слоя кривых, отвечающих за цвет также уменьшилась в уже установленной пропорции к коррекции яркости и контраста).

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

Борьба с шумом и пара слов о работе со smart-объектами

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

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

Выделим все наши слои, включая фоновый, кликнем на них правым кликом и выберем Convert to Smart Object (Конвертировать в смарт-объект).

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

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

Для этого два раза кликнем на значок справа от названия нашего фильтра и в появившемся меню зададим значение Opacity (Непрозрачность) в районе 70%.

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

В итоге, после шумоподавления результат на данном этапе выглядит так:

Финальная цветокоррекция

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

Как и в прошлый раз, для решения этой задачи, создав корректирующий слой Curves (Кривые) воспользуемся «Марсианским» методом. Разница будет лишь в том, что, т.к. я не хочу очень сильно увеличивать насыщенность красно-зеленой гаммы, в канале «a» наши изменения будут чуть более мягкими, и точку белого в нем мы подвинем лишь чуть-чуть, не дожидаясь, пока кривая коснется границы рабочей области с противоположной стороны.

В результате мы получим вот такую, и впрямь, инопланетную картину:

Для того чтобы сконцентрировать действие данной коррекции на скалах и усилить цветовой градиент на небе создадим маску. При помощи инструмента Quick Selection Tool (Быстрое выделение) выделим скалы, немного уточним границы полученного выделения функцией Refine Edge (Уточнение границы). После этого перевернем выделение Ctrl+Shift+I или Select->Inverse (Обратить) и, сделав пока что все еще белую маску нашего слоя с кривыми активной, воспользуемся функцией Image->Apply Image (Внешний канал). Параметры настроем таким образом, чтобы в зоне нашего выделения появился фрагмент канала lightness (Яркость) нашей итоговой картинки.

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

Сбросим выделение Ctrl+D или Select->Deselect (Сброс выделение). Чтобы фотография в итоге выглядела гармонично, наш корректирующий слой должен все же немного действовать и на модель, поэтому уже привычным нам инструментом быстрого выделения Quick Selection Tool прямо на маске выделим фигуру модели (сделать это будет чрезвычайно легко, настолько она контрастна), вновь воспользуемся уровнями, чуть приподнимем уровень черного и сделаем, таким образом, фигуру модели на маске чуть светлее, после чего не забудем сбросить выделение.

Опционально (это уже так критично, т.к. мы работаем уже с цветом, а не с яркостью/контрастом, но все же желательно) маску так же, как и до этого, можно чуть подразмыть фильтром размытия по Гауссу Filter->Blur->Gaussian Blur или чуть подвинув ползунок Feather (Растушевка) в панели масок.

Завершающим этапом уменьшим Opacity (Непрозрачность) нашего слоя корректирующего слоя, так чтобы интенсивность воздействия была умеренной и результат нам нравился, в моем случае - до 22%.

Финальный результат:

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

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

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

, цветокоррекция , LAB
Дата: 2013-09-01 | Просмотров: 42419

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

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

Наиболее популярными на сегодняшний день являются следующие цветовые модели: RGB (используется в основном в мониторах и камерах), CMY(K) (используется в полиграфии), HSI (широко используется в машинном зрении и дизайне). Существует множество других моделей. Например, CIE XYZ (стандартные модели), YCbCr и др. Далее дан краткий обзор этих цветовых моделей.

Цветовой куб RGB

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

В модели RGB (от англ. red – красный, green – зелёный, blue – голубой) все цвета получаются путём смешения трёх базовых (красного, зелёного и синего) цветов в различных пропорциях. Доля каждого базового цвета в итоговом может восприниматься, как координата в соответствующем трёхмерном пространстве, поэтому данную модель часто называют цветовым кубом. На Рис. 1 представлена модель цветового куба.

Чаще всего модель строится так, чтобы куб был единичным. Точки, соответствующие базовым цветам, расположены в вершинах куба, лежащих на осях: красный – (1;0;0), зелёный – (0;1;0), синий – (0;0;1). При этом вторичные цвета (полученные смешением двух базовых) расположены в других вершинах куба: голубой - (0;1;1), пурпурный - (1;0;1) и жёлтый – (1;1;0). Чёрный и белые цвета расположены в начале координат (0;0;0) и наиболее удалённой от начала координат точке (1;1;1). Рис. показывает только вершины куба.

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

В модели RGB для каждой составляющей цвета отводится определённое количество бит, например, если для кодирования каждой составляющей отводить 1 байт, то с помощью этой модели можно закодировать 2^(3*8)≈16 млн. цветов. На практике такое кодирование избыточно, т.к. большинство людей не способно различить такое количество цветов. Часто ограничиваются т.н. режимом «High Color» в котором на кодирование каждой компоненты отводится 5 бит. В некоторых приложениях используют 16-битный режим в котором на кодирование R и B составляющих отводится по 5 бит, а на кодирование G составляющей 6 бит. Этот режим, во-первых, учитывает более высокую чувствительность человека к зелёному цвету, а во-вторых, позволяет более эффективно использовать особенности архитектуры ЭВМ. Количество бит, отводимых на кодирование одного пиксела называется глубиной цвета. В Табл. приведены примеры кодирования одного и того же изображения с разной глубиной цвета.

Субтрактивные модели CMY и CMYK

Субтрактивная модель CMY (от англ. cyan - голубой, magenta - пурпурный, yellow - жёлтый) используется для получения твёрдых копий (печати) изображений, и в некотором роде является антиподом цветового RGB-куба. Если в RGB модели базовые цвета – это цвета источников света, то модель CMY – это модель поглощения цветов.

Например, бумага, покрытая жёлтым красителем не отражает синий свет, т.е. можно сказать, что жёлтый краситель вычитает из отражённого белого света синий. Аналогично голубой краситель вычитает из отражённого света красный, а пурпурный краситель вычитает зелёный. Именно поэтому данную модель принято называть субтрактивной. Алгоритм перевода из модели RGB в модель CMY очень прост:

При этом предполагается, что цвета RGB находятся в интервале . Легко заметить, что для получения чёрного цвета в модели CMY необходимо смешать голубой, пурпурный и жёлтый в равных пропорциях. Этот метод имеет два серьёзных недостатка: во-первых, полученный в результате смешения чёрный цвет будет выглядеть светлее «настоящего» чёрного, во-вторых, это приводит к существенным затратам красителя. Поэтому на практике модель СMY расширяют до модели CMYK, добавляя к трём цветам чёрный (англ. black).

Цветовое пространство тон, насыщенность, интенсивность (HSI)

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

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

Если рассмотреть проекцию RGB-куба в направлении диагонали белый-чёрный, то получится шестиугольник:

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

При этом тон (H) задаётся углом относительно оси красного цвета, насыщенность (S) характеризует чистоту цвета (1 означает совершенно чистый цвет, а 0 соответствует оттенку серого). Важно понимать, что тон и насыщенность не определены при нулевой интенсивности.

Алгоритм перевода из RGB в HSI можно выполнить, воспользовавшись следующими формулами:

Цветовая модель HSI очень популярна среди дизайнеров и художников, т.к. в этой системе обеспечивается непосредственный контроль тона, насыщенности и яркости. Эти же свойства делают эту модель очень популярной в системах машинного зрения. В Табл. показано изменение изображения при увеличении и уменьшении интенсивности, тона (выполняется поворот на ±50°) и насыщенности.

Модель CIE XYZ

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

При описании цвета значения X,Y,Z называют стандартными основными возбуждениями, а полученные на их основе координаты – стандартными цветовыми координатами. Стандартные кривые сложения X(λ),Y(λ),Z(λ) (см. Рис.) описывают чувствительность среднестатистического наблюдателя к стандартным возбуждениям:

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

Легко заметить, что x+y+z=1, а это значит, что для однозначного задания относительных координат достаточно любой пары значений, а соответствующее цветовое пространство может быть представлено в виде двумерного графика:

Множество цветов, задаваемое таким способом, называют треугольником CIE.
Легко заметить, что треугольник CIE описывает только цветовой тон, но никак не описывает яркость. Для описания яркости вводят дополнительную ось, проходящую через точку с координатами (1/3;1/3) (т.н. точку белого). В результате получают цветовое тело CIE (см. Рис.):

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

Модель CIELAB

Основной целью при разработке CIELAB было устранение нелинейности системы CIE XYZ с точки зрения человеческого восприятия. Под аббревиатурой LAB обычно понимается цветовое пространство CIE L*a*b*, которое на данный момент является международным стандартом.

В системе CIE L*a*b координата L означает светлоту (в диапазоне от 0 до 100), а координаты a,b – означают позицию между зелёным-пурпурным, и синим-жёлтым цветами. Формулы для перевода координат из CIE XYZ в CIE L*a*b* приведены ниже:


где (Xn,Yn,Zn) – координаты точки белого в пространстве CIE XYZ, а


На Рис. представлены срезы цветового тела CIE L*a*b* для двух значений светлоты:

По сравнению с системой CIE XYZ Евклидово расстояние (√((L1-L2)^2+(a1^*-a2^*)^2+(b1^*-b2^*)^2)) в системе CIE L*a*b* значительно лучше соответствует цветовому различию, воспринимаемому человеком, тем не менее, стандартной формулой цветового различия является чрезвычайно сложная CIEDE2000.

Телевизионные цветоразностные цветовые системы

В цветовых системах YIQ и YUV информация о цвете представляется в виде сигнала яркости (Y) и двух цветоразностных сигналов (IQ и UV соответственно).

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

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

Похожие статьи