Определите правильное место для размещения этикетки

12

На изображении, показанном ниже, у меня есть набор двумерных данных, где я идентифицировал четыре кластера, помеченных [0,1,2,3]. Я ищу алгоритм для размещения меток естественным * способом для каждой фигуры. Моим первым предположением было разместить их в «центре масс» скопления, как показано ниже. Для смежных кластеров это работает нормально. Однако для кластеров, которые принимают форму, как в кластере 0, этот подход терпит неудачу. Без использования легенды, что было бы лучшим способом разместить метки на этом изображении?

* естественное здесь в некоторой степени субъективно, но смысл меток состоит в том, чтобы помочь зрителю связать определенную область в плоскости xy с числом.

введите описание изображения здесь

Увлеченные
источник
1
Добро пожаловать в DSP.SE. Это большой вопрос! =)
Фонон
@ Hooked Если кластеры моделируются как 2-мерные гауссианы среднего значения и ковариационная матрица 2x2, то я думаю, что естественное размещение будет просто средним значением гауссиан. Вы уже определили среднее значение ваших кластеров?
Спейси

Ответы:

11

Как насчет размещения этикетки в самой внутренней точке сегмента? Определим самое внутреннее по максимуму трансформации расстояния маски сегмента.

С программными системами, такими как Mathematica и тому подобное, это легко сделать.

Маска для одного сегмента и его преобразование расстояния: введите описание изображения здесь

После повторения для каждого сегмента и позиционирования метки, где отдельные трансформации расстояния максимальны:

введите описание изображения здесь

Матиас Одисио
источник
1
Не возражаете ли вы немного остановиться на том, что означает «сокровенное»? У меня нет доступа к Mathematica (используя python), но я должен быть в состоянии кодировать любое представленное решение.
подключил
@ Крюк Смотрите редактирование. Если у вас есть доступ к функции, вычисляющей преобразование расстояния, у вас все настроено.
Матиас Одисио
2
Это выглядит великолепно, и я не думаю, что будет трудно реализовать себя. Просто чтобы прояснить, является ли примененное вами преобразование «преобразованием расстояния изображения, в котором значение каждого пикселя заменяется его расстоянием до ближайшего фонового пикселя»?
подключил
Да вот так
Внедрить
8

Я утверждаю, что идеальное место для размещения этикетки должно соответствовать двум целям:

  • d
  • l

l×dαl+αdα

dl

Остальное численная оптимизация.

Эмре
источник
1
d