То, что вы видите на своем экране, немного отличается от того, что я вижу на своем экране. Если я откинусь достаточно далеко от своего экрана (Apple CinemaDisplay 30 ", откалиброван на sRGB, Gamma 2.2), то первый образец выглядит серым с ровной тонировкой. Он светлее серого, чем второй, что определенно воспринимается как темнее, но он все еще серый, а не зеленый. Более светлый серый цвет составляет около 192 192 192, а не 128 128 128.
Во-первых, вероятно, что калибровка цвета вашего экрана выключена, если вы видите зеленый, а не серый, когда сидите на расстоянии. Человеческий глаз должен в конечном итоге размыть и в противном случае усреднить синие и желтые пиксели в серый, потому что на самом деле это красные, зеленые и синие подпиксели, излучающие свет, и в соотношении, которое они излучают, все три компонента подпикселей должны излучать примерно одинаково количество.
Причина, по которой мы воспринимаем эти два по-разному, сводится к частоте дискретизации и природе человеческого глаза. Клетчатый сине-желтый образец малонаселенный с необходимыми цветными подкомпонентами ... интервал позволяет более мощным и ярким желтым пикселям подавлять менее мощные синие пиксели (общее значение 510 против 255). Здесь есть и еще кое-что, что играет свою роль. Человеческий глаз работает, воспринимая цвет по двум осям ... синей / желтой оси и зеленой / пурпурной оси:
![enter image description here](https://i.stack.imgur.com/zARyp.jpg)
Если бы каждый из ваших пикселей на изображении шахматной доски излучал все три цвета (R, G и B), то мы бы эффективно получили плотный результат яркости , и мы бы увидели правильные 128,128,128 серых , Это именно то, что делает ваш второй образец цвета. Однако из-за разреженного подпиксельного расстояния мы получаем нечто большее по линиям R + G-B, и просто B (или, точнее, в отношении реакции глаз, -B). На изображении выше отсутствовал этап R + B-G.
Существует еще один побочный эффект нашей осевой стадии зрительного процесса оппонента, который порождает понятие «невозможных цветов» , неспособность ощущать одни и те же различные цвета в одном и том же физическом месте в одном и том же месте. время. Мы можем видеть синий или желтый, но не оба одновременно в одном и том же месте. Вот небольшой тест:
![enter image description here](https://i.stack.imgur.com/ezFkE.png)
Позвольте вашим глазам пересекаться настолько, чтобы синий и желтый образцы точно перекрывали друг друга, и фокусировались на кресте в центре. Вы заметите, что не видите зеленого ... ваши глаза в конечном итоге будут колебаться между синим и желтым, иногда быстрее, иногда медленнее, поскольку ваши глаза реагируют на входные раздражители, с которыми они фактически не могут справиться. Это связано с фактической кривой отклика наших глаз:
![enter image description here](https://i.stack.imgur.com/7VFVQ.jpg)
Наши глаза на самом деле не могут производить зеленый цвет из пространственно перекрывающихся, но в остальном отдельные образцы желтого и синего (это биологическая невозможность). При смешивании синий и желтый могут создать зеленый, и наши глаза видят этот зеленый, однако это потому, что на самом деле воспринимали свет в более зеленой части спектра видимого света ... желтая и синяя краски, смешанные вместе, дают другой цвет света будучи отраженным, это не то же самое, что происходит с тестом «невозможных цветов» выше. Пространственно, наши глаза усредняют разреженный цвет в той или иной форме реакции яркости. Однако, поскольку фактический свет, попадающий в наши глаза, полностью попадает в стадию процесса оппонента R + GB (у вас есть либо R + G, либо -B, но не оба), на самом деле все еще чувствуется информация о цвете SPARSE , отчетливый желтый и отчетливый синий вместо той же плотности информации о цвете, которая существует во втором образце. Это разрешает проблему борьбы с цветом, которая возникает с помощью цветового теста, описанного выше ... мы не можем фактически смешать синий и желтый (которые, когда мы достаточно далеко удаляемся от экрана, пространственно расположены в тех же местах), в зеленый или серый. Отсюда причина, по которой мы видим более светлый серый 192,192,192, а не более темный 128,128,128 серый.
Теперь, когда природа цветового отклика в человеческом глазу не имеет смысла, на вопрос о цветовых моделях.
Существует множество цветовых моделей. Существуют цветовые модели, которые моделируют цвет для широкого спектра целей, которые подходят для широкого спектра использования цвета. Это ваши аддитивные модели (например, RGB), субтрактивные модели (например, CMY), ваши радиальные / математические модели (например, HSV, HSB, HSL) и модели восприятия (например, L a b *).
У нас есть множество цветовых моделей, потому что каждая позволяет нам РАБОТАТЬ с цветом способами, которые удовлетворяют различным задачам. Когда создавали компьютерные экраны датчиков камер, работать с моделью RGB было проще. Когда анализ цвета выполнялся чисто математическим способом, с математическими, радиальными или трехмерными моделями работать легче. Когда дело доходит до моделирования цвета таким образом, чтобы имитировать человеческое восприятие, модели восприятия работают лучше всего. Некоторые из этих моделей являются линейными, некоторые (или могут быть) нелинейными. Нелинейные модели полезны, поскольку они позволяют нам сопоставить математику с кривой отклика любого аппаратного или концептуального процесса, с которым работал (т.е. экраны компьютеров имеют гамма-кривую).
Для точного восприятия цвета вы, в конечном счете, захотите преобразовать свой цвет в пространство L a b * (для краткости Lab). Лабораторное пространство основано на работе цветовой модели CIE, которая была сделана в 30-х и 60-х годах. CIE LAB - это модель, которая описывает видимую цветовую гамму и смоделирована таким образом, что преобразования цвета и сравнения являются точными для восприятия (в определенных разумных пределах ...), и есть несколько цветовых моделей CIE, каждая из которых работает немного по-своему. Обычно CIE1931 является наиболее часто используемой моделью .)
Возможно преобразовать цвет из RGB в Lab. Есть несколько различных подходов, и я не буду вдаваться в них здесь. Однако, даже несмотря на то, что CIELab моделирует гамму человеческого зрения, это не обязательно приведет к тому же самому, что и человеческое зрение, если вы выполните что-то похожее на размытие по Гауссу или базовый процесс усреднения медианы в лабораторном пространстве. Лаборатория ДЕЙСТВИТЕЛЬНО работает на двухосной модели (синяя / желтая и зеленая / пурпурная), однако процесс оппонента - это то, что вам, вероятно, нужно будет встроить в любой алгоритм усреднения, чтобы получить тот же результат, что и человеческий глаз.