Можно думать о коричневости буквально в двух измерениях, но коричневый канал будет только одномерным.Следовательно, вы не можете определить коричневый канал так легко, как пожелаете.
Даже красный канал не определяет истинно красноту цвета, поэтому вам нужно определить, что вы подразумеваете под коричневым каналом, прежде чем кто-либомог бы помочь тебе.Есть много способов, которыми можно ошибочно окрасить изображение, чтобы отразить коричневость любого данного пикселя.Возможно, вы могли бы выбрать евклидово расстояние в единицах L * a * b * (часто называемое дельта E) из некоторого номинального коричневого цвета.Конечно, это даст вам ту же коричневость, если вы красный, зеленый или синий (все на одно и то же количество) от данного цвета.И предположим, что мы движемся прямо от нейтральной оси на k единиц, а не прямо на нейтральную ось на k единиц.Конечно, если вы отойдете от нейтрального, это создаст БОЛЕЕ коричневый цвет, но приведенное выше определение (в терминах дельты E) скажет, что это не так.,Таким образом, рассмотрите путь от белого до точки, которую вы определите как «коричневый».(Точно выберите эту точку. Она находится на границе гаммы? Если нет, что произойдет, если вы будете двигаться дальше в этом направлении?) Теперь коричневость - это, по сути, расстояние от белого на вашем пути.Для любого цвета, отсутствующего на этом пути, спроецируйте точку ортогонально вниз на путь, чтобы определить ее существенную коричневость.Обратите внимание, что это поможет, если ваше определение пути будет прямой линией в вашем цветовом пространстве, так как в противном случае эта ортогональная проекция станет немного неприятной.
Если через некоторое время я смогу найти другой способопределить коричневый, но это ваш вопрос, а не мой.Только ВЫ можете определить, что вы имеете в виду.
Изменить: Учитывая рисунок, показанный в пересмотренном вопросе, я бы предложил простую схему.«Коричневые» пятна, кажется, состоят из темно-коричневых цветов и более легкого, почти желтоватого «загара», но между этими двумя альтернативами не так много.Итак, преобразуйте ваше изображение в цветовое пространство, такое как CIE Lab.Каждый пиксель теперь будет представлен в виде соответствующих координат в пространстве Lab вместо RGB.Теперь выберите номинальный коричневый цвет и номинальный желтый, и вычислите евклидово расстояние в Lab из этих двух точек.Если пиксель находится в пределах определенного допуска, то назовите его коричневым или желтым.Это общее решение вашей проблемы.