Я пытаюсь написать код на Python для отображения цвета, взятого из программы Swift. Однако этот цвет имеет расширенный формат SRGB. ExtendedSRGB аналогичен стандартному sRGB, за исключением того, что значения RGB могут выходить за пределы типичного диапазона от 0 до 1. После дальнейшего исследования выяснилось, что это цветовой формат, созданный Apple, поэтому он не поддерживается ни на каких языках, кроме Swift или Objective-C. Примечание. В Objective-C он называется расширеннымSRGBColorSpace.
Я попытался обрезать каналы RGB, используя srgb = np.clip(extended_srgb, 0, 1) . Я также попытался получить абсолютное значение каналов, используя srgb = np.abs(extended_srgb). Однако ни один из этих методов не дал правильного цвета, особенно оттенков зеленого. Согласно расширенной документации Apple Developer SRGB:
Это цветовое пространство имеет ту же колориметрию, что и sRGB, но значения компонентов ниже 0,0 и выше 1,0 могут быть закодированы в этом цвете. космос. Отрицательные значения кодируются как знаковое отражение исходной функции кодирования. y(x) = знак(x)*f(abs(x))
Я попытался использовать это, чтобы создать формулу для преобразования расширенного SRGB вернул значения в стандартный формат sRGB, но не смог. Когда я использовал эту формулу, казалось, что она преобразует отрицательные числа обратно в отрицательные числа. Я также не знаю, что такое f(x) в данном случае.
Мой вопрос, какова именно формула преобразования цветов в расширенном формате SRGB в стандартный формат sRGB ? Альтернативно, есть ли в Python какой-либо способ конвертировать цвета из расширенного SRGB в sRGB?
Подробнее здесь: https://stackoverflow.com/questions/792 ... ft-or-obje
Как преобразовать расширенный цвет SRGB в стандартный sRGB за пределами Swift или Objective-C ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Не удалось собрать модуль Objective-C при использовании Swift в модуле Objective-C.
Anonymous » » в форуме IOS - 0 Ответы
- 29 Просмотры
-
Последнее сообщение Anonymous
-