Визуализация ближайших соседних зон

я пишу приложение, которое ищет точки в двумерном пространстве, используя k-d дерево . Было бы неплохо во время разработки иметь возможность «видеть» зоны ближайшего соседа, окружающие каждую точку.

В прикрепленном изображении красные точки - это точки в дереве k-d, а синие линии, окружающие каждую точку, ограничивают зону, в которой поиск ближайшего соседа вернет содержащуюся точку.

Образ был создан следующим образом:

for each point in the space:
  da = distance to nearest neighbor
  db = distance to second-nearest neighbor
  if absolute_value(da - db) < 4:
    draw blue pixel

У этого алгоритма есть две проблемы:

  • (что более важно) Он медленный на моем (достаточно быстром Core i7) компьютере.
  • (менее важно) Это неаккуратно, как вы можете видеть по разной ширине синих линий.

Как называется эта «визуализация» набора точек?

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

partitions

6
задан templatetypedef 15 February 2012 в 06:39
поделиться