Посмотреть гранулярность профиля не сложно - показал на скриншотах ниже по топику, это все бесплатный софт: Profile Inspector, iccMAX.
Что же касается точности цветовых преобразований в зависимости от гранулярности профиля, то тут такие пара соображений.
Давайте взглянем в небольшой табличке на связанное с гранулярностью напрямую число "узлов" многомерного CLUT (в данном случае трехмерного) тега профиля, взглянем на шаг или степ по осям ab CIELab координат цвета в профиле:
Гранулярность | Шаг по осям ab | Число узлов куба Lab | Типично для программы |
17 | 16 | 4913 | CoPrA (с малым размером профиля) |
25 | 10.7 | 15625 | iccGPU, i1Profiler с приоритетом размера |
33 | 8 | 35937 | EFI 3cc, 3cc creator, Heidelberg ColorTool |
37 | 7.1 | 50653 | iccGPU, i1Profiler с приоритетом качества |
41 | 6.4 | 68921 | 3cc41 creator в бесплатной версии |
51 | 5.1 | 132651 | 3cc51 creator в коммерческой версии |
Гранулярность - это число шагов или степов по каждой размерности массива, трехмерного для Lab и RGB, четырехмерного для CMYK, с еще большим кол-вом размерностей для многоканальных типа CMYKog (гексахром и прочие струйники). Для координаты L - диапазон 0-100 делится на гранулярность, для координат ab - диапазон 256 значений от -128 до 128. Гранулярность возводится в степень числа каналов - это и будет кол-вом узлов таблицы CLUT цветового профиля. При высокой гранулярности шаг между узлами меньше, и таким образом цвет прописывается точнее, но растет размер цветового профиля и растет время вычисления профиля. Поэтому обычно профили RGB точнее профилей CMYK, в цмике с возведением гранулярности в 4 степень числа каналов несколько экономят на размере и времени вычислений профиля, тогда как третья степень числа каналов Lab и RGB жрет куда меньше килобайт и мегабайт под таблицу профиля, жрет меньше компьютерных ресурсов при вычислении, гранулярность RGB профилей в программах всегда ощутимо выше, чем у CMYK. Очевидно у многоканальных со степенями более 4 совсем хилые показатели по точности при низкой гранулярности но при огромных таблицах.
- Profile Inspector. Гранулярность CLUT, равная 41 в данном теге, помечена желтым
- • 64.47 КБ • 2119 просмотров
- XML того же профиля, созданный при помощи iccMAX, гранулярность таблиц CLUT GridGranularity 41 выделена
- • 253.92 КБ • 2119 просмотров
- iccMAX, wxProfileDump, гранулярность 41 выделена
- • 185.59 КБ • 2119 просмотров
16-битное кодирование значений таблицы профиля - это все хорошо и правильно, это в десятичном исчислении точность до тысячных долей. Но если шаг таблицы большой, то есть гранулярность низкая - то никакая 16-битная точность описания редко стоящих в таблице значений не спасет. Так например i1Profiler в режиме приоритета качества и большом размере профиля задает гранулярность 37 для Lab-таблиц, а это шаг по осям ab равный 7.1, какая уж тут точность до тысячных долей 16-битного способа записи. Для некоторых целей повышенной точности специалисты задают в профиле при его расчете гранулярность и 41, и 51. Так например, хорошие показатели получаются по точности цветопробы
при расчете dlp 3cc не со штатной для EFI гранулярностью 33, а с повышенной - 41 и 51. Так мы выходим за рамки точности i1Profiler и точности цветопробного рипа EFI с их гранулярностями 37 и 33, и добиваемся эксклюзивной точности на повышенной гранулярности 41 или 51 корректирующего девайс-линка Lab➔Lab с расширением 3cc (просто разновидность icc). Симуляция одного измерительного прибора другим также предполагает
девайс линк с гранулярностью 51, не менее.
При
построении цветового профиля используется многомерная сплайновая интерполяция, требующая немалых процессорных ресурсов. И чем выше гранулярность и чем больше число каналов - тем дольше вычисляется профиль. А вот при применении профиля в операционной системе и программах модуль CMM налету считает по быстрой
трилинейной или тетраэдральной интерполяции, без сплайнов, достаточно примитивно, такие вычисления происходят налету, они уже никак не могут повлиять на точность, у всех модулей CMM практически идентичны, так что вся точность медленно и терпеливо закладывается в профиль при его создании, а не при применении.
Таким образом, записать значения CLUT-таблицы профиля можно 8-битными, 16-битными, 32-битными, 64-битными, но точность профиля будет складываться не из способа записи, а в первую очередь из гранулярности: чем выше - тем точнее. Однако размер профиля растет по степенной функции от гранулярности в основании функции и степени числа каналов, скорость вычисления профиля с повышенной гранулярностью, с бОльшим числом каналов, также может быть ощутимо долгой, поэтому чаще всего мы имеем дело с профилями со средней не чемпионской гранулярностью. В большинстве случаев эта экономия времени и размеров оправдана, но бывают ситуации когда гранулярность требуется повыше типичной для мейнстримных профилей обычного назначения: уже упомянутые межприборная симуляция и цветопроба эксклюзивной точности требуют гранулярность повыше. Я
свою коммерческую пробу вывожу обычно именно на такие
уровни точности, благо с годами упорных тренировок овладел понемногу навыками программирования в колориметрии. Я
написал коммерческий профайлер и
RGB, и
CMYK, и бесплатный
Lab➔Lab, все естественно 16-битные, и везде гранулярность принималась во внимание как наиважнейшая величина.
И краткое замечание по величине тесткарты для построения профиля. Все мы за редким исключением в молодости и по неопытности проходили измерение огромных тесткарт на много тысяч полей, совсем не принимая во внимание, что в оконцовке вся точность упрется в небольшую гранулярность обычного профиля, и чрезмерная избыточность числа контрольных полей на входе в интерполяцию профиля просто бессмысленна. С годами мы чисто эмпирическим путем пришли к небольшим оптимальным тесткартам для построения наиболее точных профилей. А знание об особенностях гранулярности профилей как бы еще раз подтверждает весь наш эмпирический путь от огромных тесткарт к достаточно
скромным по числу патчей и кол-ву градаций (степов).
Во многих случаях RGB-профилирование типичных CMYK (и более каналов) устройств точнее не по причине "черного ящика драйвера", а по банальной причине большей гранулярности априори у профиля с меньшим числом каналов: шаг между значениями узлов таблицы CLUT меньше - точность выше. Я калибровкой цветопробы занимаюсь лет 20, последние годы еще и
обучением калибровке цветопробы: совсем не редки случаи, когда типичная CMYK цветопроба для полиграфии получается точнее на 3-канальном RGB профиле, чем на 4-канальном CMYK профиле. И ответ прост: гранулярность а значит точность профиля RGB априори при прочих равных всегда выше гранулярности профиля CMYK устройства печати.