k-значит кластеризация по шкале RGB или HSV?

Я хочу сегментировать изображение, но кто-то сказал мне, что евклидово расстояние для RGB не так хорошо, как HSV, но для HSV, поскольку не все H, S, V находятся в одном диапазоне, поэтому мне нужно его нормализовать. Стоит ли нормализовать HSV, а затем выполнить кластеризацию? Если да, то как мне нормализовать по шкале HSV?

Спасибо


person wudanao    schedule 08.09.2015    source источник


Ответы (3)


Во-первых, вам нужно знать, почему HSV более предпочтителен, чем RGB, при сегментации изображений. HSV разделяет информацию о цвете (Цветность) и уровень интенсивности или яркости изображения (Luma), что очень полезно, если вы хотите выполнить сегментацию изображения. Например, если вы пытаетесь использовать подход RGB для фотографии с морем в качестве фона, есть большая вероятность, что доминирующий компонент RGB в море не синий (обычно из-за тени или освещения). Но если вы используете HSV, значения разделены, и вы можете построить гистограмму или правила порогового значения, используя только насыщенность и оттенок.

Существует действительно хорошая статья, в которой сравнивались подходы RGB и HSV, и я думаю, что вам будет полезно ее прочитать -> http://www.cse.msu.edu/~pramanik/research/papers/2002Papers/icip.hsv.pdf

person Niko Adrianus Yuwono    schedule 08.09.2015
comment
Большое спасибо за ответ. Могу ли я прокомментировать, следует ли нормализовать HSV при кластеризации? - person wudanao; 08.09.2015
comment
@wudanao Извините за поздний ответ, я думаю, что возьму только оттенок и насыщенность из изображения HSV и создам из него гистограмму, а затем нормализую гистограмму, прежде чем сравнивать ее с другим изображением. - person Niko Adrianus Yuwono; 09.09.2015

Поскольку компоненты HSV означают оттенок, насыщенность и интенсивность серого пикселя, они не коррелируют друг с другом с точки зрения цвета, каждый компонент играет свою роль в определении свойства этого пикселя, например, оттенок дает вам информацию о цвете (длине волны). другими словами) Насыщенность всегда показывает, какой процент белого смешивается с этим цветом, а Значение - это не что иное, как величина этого цвета (в другом термине Интенсивность), поэтому все компоненты пространства HSV не следуют одной и той же шкале для представления значений в то время как оттенок может стать отрицательным (поскольку это циклические значения) на шкале, но интенсивность (V) никогда не станет отрицательной, поэтому нормализация не сильно поможет в кластеризации. Лучшая идея заключается в том, что вы должны применять кластеризацию только к оттенку, если хотите сделать цветовую кластеризацию.

Теперь, почему евклидов не подходит для многоканальной кластеризации, заключается в том, что его распределение по среднему является сферическим (для двумерного круга), поэтому, если он не может сделать никакой разницы между (147,175,208) и (208,175,147), оба будут иметь одинаковое расстояние от центра, его лучше использовать расстояние Махаланобиса для расчета расстояния, потому что он использует ковариационную матрицу компонентов, которая делает это распределение расстояния параболическим вдоль среднего.

поэтому, если вы хотите выполнить цветовую сегментацию в цветовом пространстве RGB, используйте расстояние Махаланобиса (но оно будет вычислительно обширным, поэтому замедлит процесс кластеризации), и если вы хотите выполнить кластеризацию в цветовом пространстве HSV, используйте Hue для сегментации цветов, а затем используйте V для точной настройки вывода сегментации.

Надеюсь, это поможет. Благодарю вас

person Ankit Dixit    schedule 08.09.2015

Оттенок цикличен.

Не используйте среднее значение (и, следовательно, k-средних) для таких данных.

person Has QUIT--Anony-Mousse    schedule 08.09.2015