En primer lugar tiene que elegir º espacio de color apropiado desea que las comparaciones de color que se produzca en (RGB, HSV, HSL, CMYK, etc.).
Suponiendo que usted quiere saber qué tan cerca dos puntos en el espacio RGB 3-dimenionsal son el uno al otro, se puede calcular la distancia de Pitágoras entre ellos, es decir,
d2 = (r1 - r2)**2 + (g1 - g2)**2 + (b1 - b2)**2;
En realidad, esto le da a la plaza de la distancia. (No es necesario tomar la raíz cuadrada si compara solo los valores al cuadrado.)
Esto supone que desea tratar los valores R, G y B por igual. Si prefiere el peso de los componentes de color individuales, como lo que sucede cuando se convierte de RGB a escala de grises, hay que añadir un coeficiente a cada término de la distancia, es decir,
d2 = 30*(r1-r2)**2 + 59*(g1-g2)**2 + 11*(b1-b2)**2;
Esto supone la conversión populares desde RGB a escala de grises de 30% rojo + 59% verde + 11% azul.
actualización
Esa última ecuación debe ser probablemente
d2 = (30*(r1-r2))**2 + (59*(g1-g2))**2 + (11*(b1-b2))**2;
Pregunta similar: http://stackoverflow.com/questions/1313/followup-finding-an-accurate-distance-between-colors – Kai