Я ищу практическое и ортогональное решение, которое предпочтительно:
Работа в линейном rgb и/или высокой точности не идеальна.
Было бы здорово работать в 8 битах, это привело бы к более производительному холсту.
Ожидаемая смесь находится в небольшом градиенте сверху, нулевое изменение интенсивности.
работа с большими цветовыми пространствами, чем линейный srgb, с высокой точностью смешивает лучше, но все же не дает гораздо большего преимущества. Конечно, линейное микширование не так плохо, как нелинейное микширование, но было бы здорово получить что-то получше.
Я полностью открыт для программ, которые автоматически линеаризуют rgb или выполняют какие-либо автоматические трюки, если это дает какое-либо реальное преимущество с точки зрения качества микширования или производительности .
Кроме того, меня не интересует даже объем памяти. Просто, по сути, за кулисами он просто делает то же самое, вычисляя в линейном высокоточном внутреннем стеке RGB, и, может быть, хуже всего, добавляя ошибки точности округления и меня больше смущает какая-то возможная проблема в процессе покраски, другой момент в том, что мне будет лучше, если я это пойму.
Самое близкое, что я получил от чего-то действительно интересного с точки зрения смешивания цветов, было смешивание рабочего цветового пространства CIE XYZ , так как я получил такие результаты, как:
Пока вас не поразит странность CIE XYZ :
Итак, я все еще открыт для новых процессов, как всегда, я могу получить от этого что-то художественное, я все еще изучаю работу в CIE XYZ с ограниченными селекторами цветов. Или любое предложение, данное здесь.
И если есть какое-то неправильное представление о том, что я куда-то еду, я был бы очень признателен.
Я не совсем понимаю ваш вопрос.
Но в конце концов постеризация производится не путем «смешивания». Является результатом «отображения».
Если у вас есть в одной зоне значение r255g128b0 и в соседней зоне r255g129b0, и она показывает некоторую постеризацию, вы ничего не можете с этим поделать. У вас просто есть ближайшие возможные значения и нет возможности поставить средний цвет. Неважно, как они смешались вместе.
Насколько мне известно, единственный способ обойти это ограничение — «смягчить» переход. Это создание случайного набора пикселей в следующей зоне.
Постеризация — это тоже перцептивный эффект, а не только технический. Если бы у вас не было дистракторов, например, в голубом небе вы могли бы заметить больше, чем на картинке леса. Так что это зависит от области и отношения в ценностях.
Это может зависеть от качества дисплея, контрастности, яркости, окружающего освещения или даже настроения наблюдателя.
Но да, модель RGB нелинейна по своим компонентам, она логарифмическая, и значения меняются в зависимости от канала.
Вот некоторые цвета RGB, но расположенные в виде кругов HSB.
Теоретически у них одинаковая «яркость», но общая яркость на синем канале не совпадает со 100% яркостью на зеленом канале.
При преобразовании в оттенки серого мы видим очевидные различия. R+G дает желтый цвет, который, очевидно, ярче синего.
Существует однотонный цвет, который пытается справиться с этой воспринимаемой яркостью. Цветовая система Munsell https://en.wikipedia.org/wiki/Munsell_color_system
где, теоретически, каждый уровень представляет аналогичные значения. Но, вероятно, преобразование нужно производить с определенной матрицей значений.
Я не программист, но, на мой взгляд, я бы поискал кривую, адаптированную к каждому каналу R+G+B отдельно, это может быть применение разных значений гаммы https://en.wikipedia.org/wiki/Gamma_correction например, для каждого канала или поиск другой логарифмической кривой.
РомулоПБенедетти
РомулоПБенедетти
rec 709
коэффициентам, но я считаю, что было бы нецелесообразно смешивать в таком пространстве, поскольку у нас слишком широкие вариации контраста, особенно на крайних значениях яркости. диапазон.джуджа
РомулоПБенедетти
джуджа
РомулоПБенедетти
РомулоПБенедетти