scipy.ConvexHull.area
我一定遗漏了一些非常明显的东西,但与 相比,计算的面积似乎存在巨大差异shapely.convex_hull.area
。我明白了
Scipy Convex Hull Area: 457761.9061526276, Shapely Convex Hull Area: 13192154623.86528
from shapely.geometry import MultiPoint
from scipy.spatial import ConvexHull
import json
def convex_hull_compare():
with open("./test_points.json", 'r') as f:
points = json.load(f)
print(points)
hull = ConvexHull(points)
ch_area = MultiPoint(points).convex_hull.area
print(
f"Scipy Convex Hull Area: {hull.area}, Shapely Convex Hull Area: {ch_area}")
# Scipy Convex Hull Area: 457761.9061526276, Shapely Convex Hull Area: 13192154623.86528
if __name__ == "__main__":
convex_hull_compare()
我在这里test_points.json
上传了 Github Gist并编写了代码的最小版本以便于复制。