Рассчитать перекрытие для двух списков прямоугольников - PullRequest
0 голосов
/ 28 апреля 2020

Учитывая два списка R1 и R2 выровненных по оси прямоугольников. Списки имеют длину n и m соответственно. Для каждого прямоугольника из R1 я хотел бы знать, насколько он перекрывается с каждым из прямоугольников в R2. В качестве меры для перекрытия я бы использовал пересечение по объединению (IoU).

Вопрос: Нужно ли сравнивать по nxm или есть более быстрый способ?

Все решения, которые я нашел, ориентированы на проблему, где у вас есть только один список прямоугольников, а не два списка.

1 Ответ

1 голос
/ 28 апреля 2020

Построить R-дерево для одного из списков и проверить прямоугольники из другого списка на пересечение с элементами r-дерева.

В этом случае вы снижаете сложность с O(n*m) до O(nlogn+mlogn)

...