JPGICC: Что делает опция, описанная как «Предварительно вычисляет преобразование»?

JPGICC: Что делает опция, описанная как «Предварительно вычисляет преобразование»?

Страница руководства jpgiccговорит-c NUM Precalculates transform (0=Off, 1=Normal, 2=Hi-res, 3=LoRes) [defaults to 1].

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

Что означает «Hi-res» и почему я должен предпочесть его «Normal» (или почему я должен предпочесть «Normal» «Hi-res»)?

решение1

Я должен признать, что я не тот человек, которого сильно волнует точность цветопередачи. Если цвета текста и фона достаточно различаются, и я могу читать экран, я счастлив.

7-летняя цепочка писем о предварительных расчетах

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

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

Я не знаю ни одной программы редактирования изображений, кроме Cinepaint, которая предлагает пользователю выбор между использованием низкого разрешения, высокого разрешения, CMM по умолчанию или "Don't Precalculate". Я предполагаю, что большинство или все используют что-то вроде "CMM по умолчанию", потому что я только что проверил, и Cinepaint, когда настроен на использование "CMM по умолчанию" и "использовать компенсацию черной точки", производит такое же деление значений теней вдвое, как и все другие редакторы изображений.

В любом случае, на данный момент все протестированные мной графические редакторы, за исключением Cinepaint и последней версии Krita 2.6 alpha, создают заметно поврежденные теневые области, если в преобразовании профиля ICC задействован линейный гамма-профиль.


Мнение автора littleCMS о предварительных расчетах

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

Оптимизация

Little CMS пытается оптимизировать цепочки профилей любым возможным способом. Существуют некоторые встроенные схемы оптимизации, и вы можете добавлять новые схемы с помощью подключаемого модуля. Это обычно повышает производительность преобразования, но может вносить небольшую задержку в 1-2 секунды при создании преобразования. Если вы собираетесь преобразовать всего несколько цветов, вам не нужны эти предварительные вычисления. Тогда флаг cmsFLAGS_NOOPTIMIZE в cmsCreateTransform() может использоваться для подавления процесса оптимизации. Более подробное обсуждение флагов см. в справочнике API.

Связанный контент