Как я могу получить точку сближения треугольника Делоне в Python?

1

В Matlab я могу использовать функцию DelaunayTri и nearNeighbors, чтобы найти ближайшую точку. Код выглядит так:

X1=[1,2,3,4,5,6,7]';
Y1=[1.3,1.5,1.7,1.9,2.1,2.3,2.5]';
Triangulation=DelaunayTri(Y1, X1);

X2=[1.5,2.5,3.5,4.5,5.5]';
Y2=[1.2,2.2,3.2,4.2,5.2]';
NearInd = nearestNeighbor(Triangulation, Y2, X2);
NearPoint = [X1(NearInd), Y1(NearInd)];

Какую функцию я должен использовать в Python для получения того же результата?

Теги:
delaunay
nearest-neighbor

1 ответ

0
  1. Вы можете использовать модуль scipy.spatial.Delaunay для триангуляции.
  2. Но для запроса ближайших соседей вам, возможно, придется использовать scipy.spatial.cKDTree. Это отдельно от триангуляции.
  3. Есть также CGAL привязок, доступных для питона здесь. Но если вы еще не знакомы с CGAL, может быть какая-то кривая обучения.
  4. Тогда есть и OpenCV для примера Python для триангуляции.
  5. Существует также PyHull привязки python для Qhull. Но опять-таки я не вижу соседнего поиска нигде.
  6. scikit-learn имеет поиск соседей, но нет триангуляции.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню