Гладкая цветовая градация с учетом начального и конечного цвета - PullRequest
1 голос
/ 20 марта 2012

Каков наилучший способ контроля цветовой классификации, имеющий начальный и конечный цвет? Используете RGB или HSV?

например .

step = 1/nrColors;
currStep = 0;

for i = 1:nrColors

   p = sigmoid(currStep);

   R = start.R * p + end.R * (1-p)
   G = ...
   B = ...

currStep = currStep + step ;
end

или

   H = start.H * p + end.R * (1-p)
   S = ...
   V = ...

Ни с одним из вышеперечисленных я не смог бы добиться хорошего перехода (либо цвета слишком плотны друг к другу, либо цвета не являются плавными с точки зрения человека).

Где я могу найти хорошую ссылку на эту тему?

Best

1 Ответ

1 голос
/ 20 марта 2012

Теоретически, вы получите наилучшее соответствие с человеческим восприятием, если интерполировать в цветовом пространстве «Лаборатории»:

http://en.wikipedia.org/wiki/CIELAB

Кроме того, сигмовидная интерполяция может быть уместна, если вы анимируете цветовой переход, но если вы отображаете последовательность образцов, которые плавно интерполируются из одного цвета в другой (как это звучит, если говорить о том, что они слишком тесно друг к другу), тогда вы можете просто захотеть интерполировать линейно. В противном случае начальный и конечный цвета будут очень похожими, а центральные - более разнесенными.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...