gpt4 book ai didi

python - 确定 numpy 子数组是否重叠?

转载 作者:太空宇宙 更新时间:2023-11-04 09:26:59 25 4
gpt4 key购买 nike

我正在进行图像分析,并将所有图像作为 numpy 数组。我想确定两个子数组/边界框是否重叠。

我有所有框的 xmin、xmax、ymin 和 ymax 值。如何确定方框 1 的部分(或整个方框)是否与方框 2 重叠。

Bounding boxes

最佳答案

不重叠的条件是

def no_overlap(box1,box2,count_edge=False):
return any(no_overlap_1d(*z1,*z2,count_edge)
for z1,z2 in zip(box1,box2))

def no_overlap_1d(min1,max1,min2,max2,count_edge=False):
if count_edge:
return min1>max2 or min2>max1
else:
return min1>=max2 or min2>=max1

box1 和 box2 是最小、最大对的列表。

例子:

no_overlap([[1,5],[1,4]],[[3,4],[2,3]])
# False
no_overlap([[1,5],[1,4]],[[3,4],[4,5]])
# True
no_overlap([[1,5],[1,4]],[[3,4],[4,5]],True)
# False

关于python - 确定 numpy 子数组是否重叠?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57180493/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com