Каков лучший алгоритм для нахождения самого близкого цвета в массиве к другому цвету? [закрытый]

У Kate Rhodes есть замечательное эссе по различиям в http://weblog.masukomi.org/2006/11/21/xml-rpc-vs-soap

19
задан CharlesB 20 May 2012 в 14:17
поделиться

3 ответа

Вместо использования RGB попробуйте использовать цветовую модель HSL (оттенок, насыщенность, яркость) или HSV (оттенок, насыщенность и значение) . Затем поэкспериментируйте с различными элементами смещения, например, при расчете расстояния оттенок важнее яркости.

21
ответ дан 30 November 2019 в 03:59
поделиться

Джон Скит прав. Вам необходимо использовать систему с оттенком в качестве компонента вместо RGB, если вы обеспокоены тем, что цветовой компонент совпадения слишком сильно отличается. И HSL, и HSV прекрасно подойдут для этой цели.

Затем вам нужно поиграть с формулой расстояния, чтобы взвесить оттенок, пока вы не будете довольны результатами. Обратите внимание: вы обнаружите, что проблема фактически неразрешима, если у вас нет большого количества цветов для сопоставления или если ваши входные цвета ограничены небольшим диапазоном возможных значений. Это потому, что, хотя может показаться, что вы можете прикрепить любой цвет к одному из 8 (красный, оранжево-желтый, зеленый, синий, фиолетовый, черный и белый) или к одному из 16, на самом деле вы обнаружите, что ваш алгоритм всегда найдет то, что кажется явно неправильным, совпадает, потому что с 3 осями движения (оттенок, насыщенность,

7
ответ дан 30 November 2019 в 03:59
поделиться

Я бы подумал, что если вы рассматриваете цвета как координаты RGB в 3-м пространстве и вычисляете расстояние от выборки до известных значений, вы можете определить наиболее близкое совпадение. Я бы, наверное, также попробовал масштабировать RGB в соответствии с чувствительностью глаза (например, Y = 0,3 * R + 0,59 * G + 0,11 * B), и вы получите лучший результат

4
ответ дан 30 November 2019 в 03:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: