Ищу реализацию поиска ближайшего соседа в 3D.
В настоящее время я использую scipy.spatial. Проблема в том, что мне нужно очень часто обновлять дерево/индекс, и кажется, что с этой реализацией дерево перестраивается каждый раз, когда мне нужно его обновить, что приводит к очень длительному времени выполнения.
Задача, которую я пытаюсь решить, заключается в следующем: для большого набора 3D-точек объединить точки, находящиеся слишком близко друг к другу (ближе заданного значения зазора).
В настоящее время я решаю эту проблему, перебирая список точек, добавляя новую точку в индекс, если у нее нет слишком близких соседей, и присваивая точке координаты соседа, если он найден.
Я был бы признателен за любые другие быстрые альтернативы для решения этой проблемы.