Как рассчитать расстояние между двумя цветами RGBJAVA

Программисты JAVA общаются здесь
Anonymous
Как рассчитать расстояние между двумя цветами RGB

Сообщение Anonymous »

Написание приложения Android для сопоставления цвета, я обнаружил, что расстояние euclidean не является лучшей функцией, поскольку неверные совпадения обеспечиваются на расстоянии. Например, если мы рассмотрим список цветов HTML и посмотрим на цвет с минимальным расстоянием от (5,68,174), мы получаем цвет Mediumblue < /em> (0, 0, 205), который не содержит какого -либо красного и зеленого компонента.
Какие альтернативные функции могут обеспечить лучший результат? public double euclideanColorDistance(Color c1, Color c2) {
int redDiff = c1.red - c2.red;
int greenDiff = c1.green - c2.green;
int blueDiff = c1.blue - c2.blue;
return Math.sqrt(redDiff * redDiff + greenDiff * greenDiff + blueDiff * blueDiff);
}


Подробнее здесь: https://stackoverflow.com/questions/794 ... rgb-colors

Вернуться в «JAVA»