Мне не известно о цветовом пространстве, которое делает то, что вы хотите, но у меня есть несколько замечаний:
RGB точно соответствует отображению цветов на мониторах. Это одно из худших цветовых пространств, доступных с точки зрения приближенного восприятия человеком.
Что касается других цветовых пространств: некоторые пытаются убедиться, что цвета, которые воспринимаются близко друг к другу, также находятся близко друг к другу в цветовом пространстве. Другие также стремятся к тому, чтобы воспринимаемые одинаковые различия в цвете также вызывали сходные различия в цветовом пространстве, независимо от того, где вы находитесь в цветовом пространстве.
Первое означает, что если вы думаете, что разница в цвете между синим A и синим B аналогична разнице в цвете между синим A и синим C, то в цветовом пространстве расстояние между синим A и синим B будет похоже на расстояние между синим A и синим C, и все они будут близко друг к другу в цветовом пространстве. Я думаю, что это называется перцептуально гладким цветовым пространством. CIE XYZ является примером этого.
Второе означает, что если вы думаете, что разница в цвете между синим A и синим B аналогична разнице в цвете между красным A и красным B, то в цветовом пространстве расстояние между синим A и синим B будет аналогично Разница между красным A и красным B. Это называется воспринимаемым однородным цветовым пространством. CIE Lab тому пример.
[править 2011-07-29] Что касается вашей проблемы: любой из HSV, HSL, CIE XYZ, YCC, CIELAB, CIELUV, YUV каким-то образом отделяет освещение от информации о цвете, так что это лучшие варианты , Они обеспечивают некоторую невосприимчивость к изменениям освещения, но не помогут вам, когда резко меняется цветовая температура или используется цветной свет. XYZ и YUV в вычислительном отношении менее дороги, чтобы получить от RGB (что дает большинство камер), но также менее «хороши», чем HSV, HSL или CIELAB (последний часто считается одним из лучших, но он также один из самых сложных).
В зависимости от того, что вы ищете, вы можете откалибровать цветовой баланс изображений. Например: предположим, что вы соответствуете логотипам Coca Cola: Вы знаете, что буквы на логотипе всегда белые. Поэтому, если их нет на вашем изображении, вы можете использовать цвет, который они должны исправить, чтобы получить информацию о других цветах.