Пересечение над объединением на непрямоугольных четырехугольниках - PullRequest
0 голосов
/ 17 октября 2019

Я работаю над проблемой обнаружения парковочных мест. Чтобы обнаружить пустое парковочное место, я использую пересечение над объединением. Но парковочные места не всегда прямоугольные. Итак, я сделал инструмент маркировки, который может рисовать многоугольники различной формы. Теперь я хочу знать, есть ли какая-либо библиотека Python, которая обеспечивает функциональность ввода-вывода? Если нет, есть ли альтернатива?

enter image description here

1 Ответ

2 голосов
/ 17 октября 2019

Вы должны использовать библиотеку shapely Python:

from shapely.geometry import box, Polygon

# Define Each polygon 
pol1_xy = [[130, 27], [129.52, 27], [129.45, 27.1], [130.13, 26]]
pol2_xy = [[30, 27.200001], [129.52, 27.34], [129.45, 27.1], [130.13, 26.950001]]
polygon1_shape = Polygon(pol1_xy)
polygon2_shape = Polygon(pol2_xy)

# Calculate Intersection and union, and tne IOU
polygon_intersection = polygon1_shape.intersection(polygon2_shape).area
polygon_union = polygon1_shape.union(polygon2_shape).area
IOU = polygon_intersection / polygon_union 
...