python - 从 scipy.spatial.Voronoi 有效地确定 Voronoi 图中的相邻单元格
问题描述
我正在研究一种使用 Voronoi 图的算法。我需要知道每个给定的细胞,它有哪些细胞作为邻居;也就是说,它与哪些邻居共享一条边。这类似于一个现有的问题。但是,我已经有一个计算这个的算法,但我希望加快它的速度并避免冗余计算。
目前我正在使用 scipy.spatial.Voronoi 的输出来执行此操作,它为我提供了可以用来构建此映射的顶点、点等数组。但是,我运行这个算法有很多点,我想加快这个过程。
我的理解是 scipy 和 Qhull 计算 Delaunay 三角剖分,然后用它来计算 Voronoi 图。我认为(但可能是错误的)可以从 Delaunay 三角测量中找到邻接信息。我想知道当我生成 Voronoi 图时是否有办法从 scipy/Qhull 中提取此信息(如果存在)。
如果没有,是否有任何首选方法可以做到这一点?从长远来看,直接使用 Qhull 会更好吗?
谢谢。
解决方案
我认为只有财富算法才有可能:https ://cs.stackexchange.com/questions/80939/voronoi-diagram-status-structure-in-fortunes-algorithm 。
寻找半蛋。
也许你可以用其他解决方案来实现半边,但不能用 qhull。
推荐阅读
- javascript - 如何将邮递员生成的这段代码转换为使用 axios 的请求?
- python - 我收到 Django 的 IntegrityError UNIQUE 约束失败
- python - 从 xarray 数据数组转换为 numpy ndarray 非常缓慢
- php - 如何让网页强制显示桌面版
- reactjs - 为什么将 redux 状态作为依赖项添加到“useEffect”挂钩时会导致应用启动时出现无限循环?
- python - 如何从 python 中的 url 列表中异步下载图像?
- scala - 如何以惯用的 Scala 方式编写涉及多个条件的 If-Else 循环?
- php - 显示要查看的 BLOB 图像数据
- python - 什么数据结构像字典一样工作?
- python - SSL CERTIFICATE_VERIFY_FAILED 在 Windows 10 上安装 Python 包