ColorTool является 32 разрядным Windows-приложением, предназначенным для получения информации о цвете на экране монитора. Приложение может быть использовано для анализа цвета и создания палитр Adobe Photoshop.

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

В Интернете можно найти несколько десятков подобных приложений. Большинство «экранных пипеток» используют значения RGB в пространстве монитора, а не в стандартных пространствах типа sRGB. Как правило, отсутствует информация для Lab, HSP. Некоторые приложения некорректно выполняют вычисления (включая платные) или неудобны в использовании. Поэтому автор принял решение написать свою программу.

Преобразование RGB-значений одного пространства в RGB-значения другого сводится к следующим шагам:

1. Привести RGB к значениям в диапазоне 0..1
2. Выполнить гамма-преобразование для приведения RGB в линейный вид
3. Выполнить расчет матрицы преобразования из исходного RGB в целевое RGB и преобразовать RGB
4. Выполнить гамма-преобразование для целевого пространства
5. Привести RGB к 8-битному или 16-битному виду

Пункт 3 будет раскрыт подробно ниже. Рассмотрим на примере перевод RGB (169, 240, 135) из пространства Adobe RGB (D65, gamma 2.2) в пространство sRGB (D65, gamma ~2.2).

Откроем Adobe Photoshop, создадим новый документ в пространстве Adobe RGB (1998) и зальем его фон цветом RGB (169, 240, 135), затем выполним команду Edit->Convert to Profile и выберем профиль sRGB IEC61966-2.1 (Intent=Relative Colorimetric, Engine=Adobe (ACE), Use Black Point Compensation=False, Use Dither=False). Возможно, для кого-то будет удивительным, но RGB-значения станут 128, 240, 129.

В этой статье рассмотрим создание dual-illuminant DNG camera profile с помощью DCamProf, dcraw и утилит из состава Argyll CMS, а также моего приложения - pmaker.

Т.е. наша цель: создать dcp-файл, который можно использовать в ACR (а также Lightroom) или RawTherapee в качестве входного профиля камеры (+оптика+фильтры).

Баланс белого в RAW регулируется множителями RGB, которые по своей сути указывают RAW-конвертеру во сколько раз умножить значение конкретного канала. Другими словами, управление балансом белого сводится к экспокоррекции каналов. При этом большинство RAW-конвертеров использует для регулировки баланса белого инструменты Temperature (температура) и Tint (смещение оттенка). Температура задает величину CCT (Correlated Colour Temperature - коррелированная цветовая температура), которая выражается в Кельвинах и варьируется от теплых (желтых) оттенков с низкой температурой до холодных (голубых) с высокой температурой.

Давайте взглянем на значения баланса белого одного и того же снимка в режиме AsShot (т.е. как снято камерой) в разных RAW-конвертерах:

pmaker позволяет быстро создать файл ti3 (target information), необходимый для генерации icc-профилей, с использованием снятых в RAW цветовых мишеней, и тут же создать icc-профиль, а также проконтролировать диагностический файл diag.tif и результат применения полученного профиля на том же самом изображении.

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

scanin: Error - Scanin failed with code 0x3, Pattern match wasn't good enough

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