Преобразование из sRGB в ProPhoto и наоборот в Photoshop (с экраном 120% sRGB)

Изображение 1Это просто академическое:
я хочу найти циклический способ преобразования из sRGB в ProPhoto и наоборот в Photoshop.

  1. Я заметил, что независимо от того, что изображения из Is Your Browser Color-Managed? выглядит иначе внутри PS...

  2. браузер отображает оба идентично, и я знаю, что это цель профиля ICC.

  3. Но когда я пытаюсь изменить цветовой профиль proPhoto на sRGB на PS (с «преобразовать в профиль ...» и «назначить профиль»), это не работает и на самом деле выглядит так же на PS и, конечно, отображает в браузере по разному.

  4. И с тем же результирующим изображением я попытался преобразовать его обратно в proPhoto, и это тоже не работает.

  5. Существует ли циклический способ конвертировать изображение между sRGB и Prophoto и сделать так, чтобы они выглядели одинаково в браузере?

Редактировать

Рассматривать:

  • Мой основной дисплей — Huion Kamvas 13 с 120% sRGB по данным производителя.
  • Из-за этого изображение в пространстве ProPhoto не будет выглядеть так же, как в sRGB, без цветопробы.
  • Исходное изображение с тегом sRGB не имеет профиля ICC, но по умолчанию браузер воспринимает его как sRGB. Это бесполезно практически для всех экранов (100%-sRGB), но для моего экрана 120%-sRGB полезно, потому что благодаря этому мой браузер не будет перенасыщать изображение. Не то же самое с Photoshop, на самом деле PS будет перенасыщать непрофилированное изображение.

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

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

  • Для неуправляемого изображения без контрольных цветов я предполагаю, что PS растягивает цвета RGB (перенасыщая их) до моего большего пространства sRGB на 120%, верно?
  • Для ProPhoto с пробными цветами sRGB, я думаю, это похоже на двойное преобразование сначала из ProPhoto в 120% sRGB, а затем в 100% rgb. Это означает, что в 100% rgb это изображение будет выглядеть правильно, не так ли?

После своего рода лаборатории я понял (я думаю), что мой экран 120% sRGB (или драйвер) сообщает PS, чтобы он выполнял преобразования с этим пространством при преобразовании цветовых профилей, как вы можете видеть в «sRGB Converted to ProPhoto» (1-я строка , 2-й столбец), что приводит к неправильным цветам. Но если я скажу PS, что неуправляемое изображение находится в пространстве sRGB, назначив ему профиль sRGB, прежде чем преобразовать в пространство ProPhoto, PS сделает все правильно. введите описание изображения здесь

Теперь я хочу вернуться от ProPhoto к sRGB. введите описание изображения здесьЗдесь вы видите, что если я просто назначу профиль sRGB для изображения ProPhoto (sRGB, назначенный sRGB, преобразованный в ProPhoto), цвета будут искажены, как упоминал @Tetsujin. Но если преобразовать в sRGB, а затем удалить управление цветом, я могу вернуть изображение, практически равное исходному sRGB.

2-е редактирование

Как упомянул @Tetsujin, мое рабочее пространство RGB все это время было неправильным , это был ProPhoto (я перемещал вещи туда и сюда), и после того, как мое рабочее пространство RGB было установлено как sRGB, я мог напрямую преобразовать непрофилированное изображение в ПроФото.

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

Так что да, потому что я установил рабочее пространство RGB на ProPhoto, все преобразования моего профиля из непрофилированного в ProPhoto получили неправильные цвета (мне все еще интересно, почему). Мне пришлось назначить профиль sRGB непрофилированному изображению перед преобразованием в ProPhoto, чтобы получить правильные цвета. Не проблема в рабочем пространстве sRGB

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

соглашения

С помощью этого калькулятора вы сможете рассчитать значения RGB, которые вычисляет PS . Сначала перейдите от sRGB к XYZ, а затем к ProPhoto (белый D65, гамма 1.8). Тогда для примера @Steven Kersting sRGB(0,255,25) — это XYZ(0,359330, 0,715854, 0,128430) и ProPhoto(138,0695, 236,5775 80,7067), но с 8-битной глубиной у нас нет такой точности, на самом деле, мы не не имеют десятичных знаков, поэтому для возврата PS это будет ProPhoto (138, 236, 80), то есть XYZ (0,358508, 0,712998, 0,126304) и sRGB (9,1773, 254,4782, 21,9759) и, конечно, это будет округлено . Но этот сценарий идеалистичен, потому что, как упоминается @doug, если вы установите параметр дизеринга, у вас будет какая-то вариация для поддержания среднего значения и уменьшения ошибки, и даже лучшие результаты, если у вас 16-битная глубина цвета.

Привет, добро пожаловать на биржу фотографий. Пожалуйста, не редактируйте свой вопрос, чтобы включить в него ответ; вместо этого просто ответьте на вопрос в поле «Ваш ответ» внизу страницы. Пожалуйста, отредактируйте свой вопрос, вырежьте добавленный ответный материал и опубликуйте его в ответе. Спасибо! "="
Я думаю, несмотря на всю эту дополнительную работу, которую вы проделали, мы не ушли от первоначальных заблуждений. То, что ваш экран может отображать 120% sRGB, не имеет значения [в основном это рекламные заявления о том, что «не может работать с Adobe RGB», не более того]. Вы проверили настройки цвета в Ps? я все еще думаю, что это то, откуда большая часть этого исходит. tbh, просмотр цифр не поможет. Когда вы правильно настроены, вы можете игнорировать цифры, потому что визуально все выглядит довольно плавно. [То, что вы теряете что-то из ProPhoto в sRGB, вы не можете увидеть на экране sRGB, поэтому в этом упражнении вы можете игнорировать это.]
@Tetsujin Да, чувак, как ты сказал, я проверил свое рабочее место, и это был ProPhoto. При первых попытках я все менял, поэтому и ошибся. Обходной путь назначения профиля sRGB перед преобразованием довольно бесполезен, потому что, во-первых, рабочее пространство было неправильным. Куча работы и чтения для простой неправильной настройки, я думаю, это цена изучения чего-то нового. Спасибо чувак! Последнее, что мне интересно, приходилось ли вам на экране Adobe RGB устанавливать рабочее пространство в Adobe RGB или добавлять профиль sRGB перед любым преобразованием в непрофилированные изображения?
Мое рабочее пространство настроено на sRGB, но я никогда не конвертирую при импорте, поэтому мои собственные фотографии проходят через профиль Adobe RGB прямо с моей камеры, конвертируя только при окончательном экспорте в sRGB для Интернета. Исходные файлы PSD остаются навсегда с прикрепленным профилем камеры. Я использую sRGB только в качестве «заполнителя» по умолчанию, хотя на самом деле я никогда не использую его для своей работы. Я бы даже сказал, что если ваш экран не поддерживает Adobe RGB, делайте фотографии в sRGB, чтобы вы всегда могли видеть, что происходит. sRGB — это не «плохо», это просто наименьший общий знаменатель, к которому стремится большинство экранов [независимо от того, достигают они его или нет]

Ответы (3)

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

  1. Я протестировал изображения со связанного веб-сайта в четырех браузерах: слева направо на снимке экрана ниже, Safari и Chrome на Mac, Edge и Chrome на Windows. Все они выглядят довольно близко. Оба компьютера имеют цветовой профиль, хотя мой компьютер с Windows никогда не используется для каких-либо критически важных задач, поэтому, вероятно, со временем он сместился. Половина скриншота с Windows также находится над RDC, так что это еще одна потенциальная ловушка. Учитывая это, я думаю, что они «достаточно близки».

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

Кроме того, оба изображения, взятые с сайта и открытые в Photoshop, выглядят одинаково. Изображение sRGB на самом деле представляет собой нетегированный RGB, поэтому предполагается, что это sRGB. ProPhoto, кажется, содержит правильный профиль.
То, что они кажутся идентичными, следует ожидать на откалиброванной машине, использующей изображение, изначально полученное из источника sRGB , о чем я могу только догадываться. Мои дисплеи могут отображать Adobe RGB, но не полный ProPhoto, поэтому я не смогу увидеть, что может быть потеряно за пределами этой гаммы.

  1. Все зависит от того, как вы «измените» профиль…

  2. Преобразование в профиль попытается сохранить «визуальное соответствие», даже несмотря на то, что ProPhoto может охватывать более широкую гамму [на самом деле больше, чем может отображать любой монитор или может видеть любой глаз].
    Назначить профиль никогда не работает визуально, потому что он не пытается компенсировать. Было бы полезнее повторно прикрепить известный профиль, потерянный с изображения.
    Пример присвоения sRGB изображению ProPhoto — цвет полностью нарушен. Это действительно может быть похоже на описание со связанного сайта: «[Если] кажется, что небо темно-синее / пурпурное с желтоватым песком, значит, ваш браузер не управляет цветом».
    введите описание изображения здесь

  3. После того, как вы выполнили свое первое преобразование из ProPhoto в sRGB, вы должны иметь возможность циклически переходить от одного к другому, не видя изменений [со временем вы можете дрейфовать, это не то, что мне когда-либо приходилось тестировать] .

Так как все это должно работать в теории… мы должны попытаться выяснить, где вы ошиблись.
То, что вы видите разные цвета в Photoshop, говорит мне, что Ps настроен неправильно.
Самая распространенная ошибка заключается в том, что люди назначают свой профиль экрана icc своим рабочим пространством.
Во-вторых, при импорте выполняется автоматическое преобразование профиля… в неправильную рабочую область.
Это приводит к множеству ошибочных компенсаций, одна в Ps, другая по мере вывода изображения на ваш экран

Сначала вам нужно убедиться, что это не настроено в вашем рабочем процессе.

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

Как я упоминал при редактировании, я преобразовывал профиль, и это не было проблемой. Я забыл упомянуть, что мой экран составляет 120% sRGB, и в этом была проблема (я не знал, что это важно). Решение заключалось в назначении цветового профиля sRGB перед преобразованием ProPhoto, потому что в противном случае моя система займет 120% пространства sRGB, что приведет к перенасыщенным цветам, и это было причиной отображения разных цветов с помощью управления цветом в браузере, я всегда получил перенасыщенное изображение ProPhoto.
Это «120% sRGB» — отвлекающий маневр. Мои экраны составляют около 140% sRGB, т.е. они могут достигать Adobe RGB. Это все еще только 50% CIE XYZ. Итак… давайте не будем зацикливаться на всех цифрах и давайте проверим ваши настройки профилирования и рабочего процесса, как уже упоминалось.
ну ты был прав все это время

Тот факт, что Photoshop использует внутреннее цветовое пространство ProPhoto, не означает, что то, что вы видите на экране, визуализируется с использованием цветового пространства ProPhoto. Он почти наверняка преобразуется в sRGB при отправке на ваш экран. Итак, то, что вы видите на своем экране при работе в цветовом пространстве ProPhoto, является результатом ваших инструкций по обработке, примененных в ProPhoto, а затем преобразованных в sRGB для отправки на ваш экран.

Это связано с тем, что ваш экран вряд ли сможет воспроизвести все цветовое пространство ProPhoto. Большинство экранов ограничены большей частью или всем sRGB. Еще несколько экранов, способных отображать AdobeRGB, но экраны, которые могут отображать ProPhoto, в настоящее время не существуют и будут в обозримом будущем. Графическая карта вашего компьютера знает об этом и преобразует изображение, отправленное ей, в цветовое пространство, которое, как она определяет, монитор способен отображать, перед отправкой этого изображения на монитор.

Думайте об этом как о своем примитивном научном калькуляторе в 1970-х годах. У него был восьмиразрядный дисплей, но внутренний процессор отслеживал числа вплоть до гораздо большего количества значащих цифр. То, что вы видели на дисплее калькулятора, было внутренним числом, округленным до ближайшего числа с использованием восьми значащих цифр. Но когда вы умножаете это число на π (пи), оно умножает внутреннее число на π, скажем, до 64 значащих цифр и сохраняет результат внутренне до 64 значащих цифр, чтобы уменьшить ошибки округления в окончательном ответе в конце всех вычислений. вычислений, которые затем отображались на экране до восьми значащих цифр. Если вы затем введете это число в другой калькулятор, вы ограничили точность вычислений с помощью второго калькулятора исходным числом, которое было введено округленным до восьми значащих цифр. Информация в значащих цифрах с 9-й по 64-ю была безвозвратно утеряна, когда вы преобразовали внутреннее 64-значное число в 8-значное и ввели его на другом калькуляторе.

Кроме того, после того как изображение было преобразовано и экспортировано с использованием более ограниченного цветового пространства, например, из ProPhoto в sRGB, если его преобразовать в другое большее цветовое пространство, изображение будет использовать только ту часть большего цветового пространства, которая также соответствует меньшее цветовое пространство. Любые значения в исходном изображении, выходящие за пределы более ограниченного цветового пространства, безвозвратно теряются, как только изображение помещается в меньшее цветовое пространство.

Чтобы ваши изображения выглядели одинаково во всех браузерах, нужно:

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

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

«только потому, что Photoshop использует внутреннее цветовое пространство ProPhoto», это не так. Вы думали о Лайтруме?
Я читал вас и пару статей и нашел этот калькулятор , и я думаю, что в изображении TIFF с 16-битной глубиной цвета погрешность незначительна. Не та же история с 8-битным сжатым JPEG. Вам может быть интересен алгоритм преобразования из sRGB в XYZ, а затем в ProPhoto. Моя проблема заключалась в том, как копировалось изображение ProPhoto. Мне пришлось назначить профиль sRGB, потому что мой экран имеет 120% sRGB перед преобразованием, чтобы избежать перенасыщения.
@doug Да, я думал о LR.

на PS (с «преобразовать в профиль ...» и «назначить профиль»), который не работает и на самом деле выглядит одинаково на PS и, конечно, отображается по-разному в браузере. И с тем же результирующим изображением я попытался преобразовать его обратно в proPhoto.

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

На практике не следует многократно менять цветовые пространства; потому что одни и те же числа RGB имеют разный цвет в разных пространствах. Например, зеленый цвет 0/255/25 в sRGB соответствует 138/236/80 в ProPhoto, а 138/236/80 в ProPhoto соответствует 8/255/21 в sRGB. Поскольку пространства имеют разные размеры, при переключении вперед/назад возникают ошибки/сдвиги округления. Вы можете легко проверить это самостоятельно, начав с круга 0/255/25 в sRGB. Таким образом, даже если вы делаете это правильно, цветовые сдвиги/ошибки будут.

Нет нет нет. Назначенный профиль полностью испортит изображение. Он не делает преобразования. См. - i.stack.imgur.com/xQR0N.png
некоторая полезная информация в этом ответе, но да, как уже говорилось, если изображение имеет встроенный профиль, а «Назначить профиль» используется для назначения другому профилю изображения, тогда цвета будут немедленно искажаться по сравнению с тем, что они были предназначен быть.
Плохой пример. В Photoshop 8-битный sRGB(0,255,25) преобразуется путем округления в ProPhoto(138,237,81). Если сглаживание включено, значения преобразования будут отличаться на 1, чтобы сохранить среднее значение. Разница между округленным 8-битным цветом ProPhoto RGB и предшествующим ему цветом sRGB составляет менее 0,5 Delta E. Преобразование обратно в sRGB дает sRGB (0,255,26), что является еще меньшим значением Delta E. Такие сдвиги не видны.
@Tetsujin, отредактировано ... Я пропускаю «и назначаю».
@дуг; если вы нарисуете новый круг 0/255/25 рядом с исходным в то время как в PS разница будет и она усугубится при обратном преобразовании в sRGB. И цифры, которые я дал, основаны на результатах, которые я видел при конверсиях. Я предполагаю, что относительная и перцептивная компенсация могут заметно повлиять на результаты.
Я не уверен, что вы имеете в виду под «кругом рядом с оригиналом». Я только что создал прямоугольный патч в 8-битном новом изображении sRGB (0/255/2), а затем преобразовал его в ProPhoto в Photoshop. Я должен что-то упустить. Что такое оригинал и что это за круг?
А, кажется, я вижу, что происходит. Вы просматриваете изображения в формате jpeg. Они сжаты, и степень сжатия зависит от настроек при сохранении. При загрузке в Photoshop они декодируются до 8 бит на канал. Но при сохранении точность цветов зависит от настройки сжатия jpeg. Вот откуда разница. Это не от конвертации в фотошопе а от сжатия при сохранении. Я абсолютно согласен с тем, что преобразование в ProPhoto и сохранение jpeg с последующей загрузкой и повторным преобразованием в sRGB может несколько изменить цвета. Но если вы используете tifs, это не приведет к значительным различиям
@дуг; изображение не было jpeg. Это был новый 16-битный psd-документ, созданный в PS и не сохраненный между этапами. Я просто использовал инструмент цветового сэмплера, чтобы отслеживать/отмечать изменения цвета. Круг (мой тест) был создан с помощью инструмента «Элипс» и цвета, определенного в палитре цветов (0/255/25). Я согласен, что сдвиги в этом примере небольшие ... числовые сдвиги еще больше, если вы измените режим на * Lab и обратно, начнете в ProPhoto и конвертируете в Adobe / обратно или в худшем случае конвертируете в CMYK / обратно; дело в том, что каждый раз есть ошибки/округления, и они объединяются.
Ух ты! Это очень интересно. Возможно, вы обнаружили еще одну аномалию Photoshop. Я столкнулся с несколькими, в основном в их алгоритмах мягкой проверки. Безусловно, стоит изучить. Я перепроверил данные, которые я разместил на сайте Брюса Линдблума, и они совпали с Photoshop. О, убедитесь, что вы используете Adobe ACE CMM, а не что-то вроде ICM от Microsoft. У него есть несколько известных недостатков. Наверное, стоит зайти в чат, чтобы вникнуть в это подробнее. Я хотел бы запустить это вниз!
Только что проверил с 16-битным изображением Photoshop с RGB (0,255,25). Преобразование в ProPhoto RGB, а затем обратно в sRGB дало точно такой же RGB (0,255,25). Выполнение того же теста с Microsoft ICM вместо Adobe ACE дало RGB (28 255, 28). ICM восходит к более чем 2 десятилетия назад. Он неправильно реализует абсолютное колориметрическое преобразование, не соответствующее более поздней спецификации ICC. Я полагаю, для совместимости они сохранили поведение. Я также обнаружил области со значительными ошибками преобразования, и это тоже одна из них.
Возможно, вас заинтересует [этот калькулятор] ( brucelindbloom.com/index.html?ColorCalculator.html ) для преобразований с 9 знаками после запятой в нормализованной форме (0-1). Теперь я знаю, что при 8-битной глубине у нас нет десятичных знаков в 255-формате и шагов на (1/255) 0,003922 десятичных знаков в нормализованной форме. Поэтому мне было интересно, если с 16-битной глубиной или 65,536 уровнями, возможно, у нас есть шаги (1/65,536) 0,000015 в нормализованной форме, и если будет дельта-вариация с включенной опцией дизеринга? +-1 или +- 0,0038?
Я только что проверил ICM v ACE для всех 16 миллионов цветов. ИКМ очень плохой. См. photo.stackexchange.com/questions/124367/…