如何在 Python 中获取 Delaunay 三角形的近设定点?



在Matlab中,我可以使用函数DelaunayTri和nearestNeighbors来查找最近的点。代码是这样的:

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 中使用什么函数来获得相同的结果?

您可以使用
  1. scipy.spatial.Delaunay模块进行三角测量。
  2. 但是要查询最近的邻居,您可能必须使用scipy.spatial.cKDTree。这与三角测量是分开的。
  3. 这里也有可用于 python 的 CGAL 绑定。但是,如果您还不熟悉 CGAL,可能会有一些学习曲线。
  4. 然后还有用于Python的OpenCV示例,仅用于三角测量。
  5. 还有 PyHull 是 Qhull 的 python 绑定。但是我再次在任何地方都没有看到邻居搜索。
  6. scikit-learn也有邻居搜索,但没有三角测量。

最新更新