我有两个多边形。 多边形1:[[x1,y1],[x2,y2],[x3,y3],[x4,y4]...[xn,yn]] 多边形2:[[x1,y1],[x2,y2],[x3,y3],[x4,y4]...[xm,ym]] n 和 m 的个数可以相同也可以不同。 如何计算两个多边形的IOU?或者如何计算polygon1和polygon2的重叠面积和面积?所以我可以计算重叠面积/(面积 P1 + 面积 P2)
最佳答案
shapely图书馆有你需要的一切。正如@pink_spikyhairman 评论的那样,有很多关于如何使用这个库来计算多边形 IOU 的问题示例。例如,您有两个多边形,一个正方形和一个三角形:
from shapely.geometry import Polygon
polygon1 = Polygon([(0, 0), (1, 1), (1, 0)])
polygon2 = Polygon([(0, 0), (1, 0), (1, 1), (0, 1)])
intersect = polygon1.intersection(polygon2).area
union = polygon1.union(polygon2).area
iou = intersect / union
print(iou) # iou = 0.5
关于python - 如何在python中计算多边形的IOU?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61577406/