Относительное колориметрическое преобразование в Photoshop несовместимо?

Относительное колориметрическое преобразование Photoshop кажется непоследовательным.

Я конвертирую из Adobe RGB в sRGB. Настройки следующие:

введите описание изображения здесь

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

Резюме: я дважды открываю один и тот же файл, конвертирую его с одинаковыми настройками и получаю два разных результата. Изображение представляет собой несжатый 8-битный TIFF, 640x1024 пикселей.

РЕДАКТИРОВАТЬ: кажется, что иногда два раза даются одни и те же результаты, но никогда два раза подряд.

РЕДАКТИРОВАТЬ: Отключено сглаживание в диалоговом окне настроек в соответствии с предложением мистера Волшебника, и теперь результаты каждый раз одинаковы. Дизеринг не алгоритмический? (Это случайно?)

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

Ответы (2)

Дизеринг добавляет шум к плавным цветовым градиентам. Из Википедии с добавленными акцентами:

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

Следовательно, использование дизеринга с преобразованием по определению будет давать «случайные» результаты. Алгоритм, который использует Photoshop, по-видимому, одновременно

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

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

@Unsigned, попробуйте и убедитесь сами. Если вы отключите Dither, результаты будут идентичными пикселям. Если он включен, то их нет. Следовательно, мы можем сделать вывод, что шум дизеринга является случайным с другим начальным числом.
@Unsigned существуют разные типы сглаживания; Сам Photoshop обеспечивает диффузию, узор и шум для преобразования в индексированный цвет. Использование случайного распределения, вероятно, является хорошим выбором, но, возможно, они могли бы использовать одно и то же начальное число каждый раз. Возможно, они перешли на другую библиотеку для генерации случайных чисел между CS4 и CS5.
@Unsigned, это основано на шуме, но кроме этого я не знаю, и я не знаю, как это изменить. Для большинства изображений это не должно иметь большого значения; Я предлагаю вам просто отключить его, если эффект беспокоит вас.
@Unsigned: (1) спасибо за согласие. (2) я не верю, что все цветовое пространство CMYK вписывается в RGB, если только не ProPhoto RGB; Я совершенно уверен, что обычные пространства CMYK не подходят для AdobeRGB. (3) Дизеринг нужен не для гаммы (насколько мне известно), а для точности; пока вашей целью является 8-битный пространственный дизеринг, он полезен. Преобразование 16-битных данных в 16-битные было бы гораздо менее полезным, и в этом нет необходимости при работе с числами с плавающей запятой или 32-битными данными.
@Unsigned Вам следует посмотреть на трехмерные графики цветового пространства , чтобы лучше понять, как они связаны. У меня сейчас не установлен плагин VRML, поэтому я не могу их просматривать, но, насколько я помню, это не просто «одно внутри другого», а скорее CMYK соответствует определенным цветам, которые пропускает sRGB, и наоборот. (продолжение...)
Однако это не самое главное: преобразование не может быть без потерь, даже если целевое цветовое пространство полностью содержит исходное пространство, потому что для преобразования нет бесконечной точности. Если вам нужна иллюстрация этого, опубликуйте новый вопрос, и я объясню его. (оставьте комментарий здесь, чтобы мне не пришлось его запоминать и/или искать)

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

Точечная выборка, в отличие от 3x3 или 5x5, также может давать противоречивые результаты, особенно на фотографических изображениях, особенно вблизи высококонтрастных границ, и уж точно при наличии шума на изображении.

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

Повторите эксперимент, но на этот раз используйте документ со стороной ровно 256 пикселей и сделайте блоки цвета со стороной ровно 80 пикселей, выровненные по 8-пиксельным границам. Посмотрите, не получите ли вы другой результат.

На прошлой неделе Майк Ниннесс провел поучительную (по крайней мере для меня) сессию по оптимизации изображений на выставке MAX, и одной из главных тем была дикая вариативность, создаваемая сжатием jpeg. Раздел «Правило 8» начинается примерно на 14:40.

[ОБНОВЛЕНИЕ ПОСЛЕ Q CLARIFIED] Увеличьте размер выборки в пипетке до достаточно большого значения, чтобы сгладить шум при дизеринге. Дизеринг необходим при изменении профилей, чтобы поддерживать визуальные отношения между разными цветами без полос (по этой же причине при обычном использовании следует избегать «Абсолютного колориметрического»), но он (по определению) является случайным. Если вы наберете пипеткой слишком маленький образец, вы получите вариации везде, где есть цветовой сдвиг, который не может быть точно воспроизведен в целевом профиле.

Это не имеет значения. Важно то, является ли это jpeg и выполняется ли выборка точно (с точностью до пикселя) из одного и того же места. Если первое верно, а второе нет, то вы можете получить разные значения, просто переместив пипетку в другое место в сплошном блоке цвета, независимо от того, меняете ли вы профили или нет. Действительно попробуйте эксперимент, не так ли?
Обновите вопрос со всей информацией, чтобы точная ситуация была ясна - тип файла, изображение или графика и тому подобное. Тогда мы сможем более точно проверить и ответить. Я не вижу такого поведения при работе со сплошными цветными блоками, которые я использовал для тестирования.