如何计算任意两个矩形的IOU值?
上图中是两个矩形,这两个矩形可以是任意的,也可以不相交。
IOU的计算公式为两个矩形交的面积与并的面积之比,即淡黄色区域面积与浅蓝色和淡黄色区域面积和的比值。
下面给出伪代码,可适用于任何情形:
xA = max(x11,x21)
yA = max(y11,y21)
xB = min(x12,x22)
yB = min(y12,y22)
# 两个框各自的面积
boxAArea=(x12-x11)*(y12-y11)
boxBArea=(x22-x21)*(y22-y21)
# 重叠面积
interArea=max(xB-xA,0)*max(yB-yA,0)
# 计算IOU
iou = interArea/(boxAArea+boxBArea-interArea)
有关更多IOU的资料,网上已经很多了,这里就不赘述了,只给出简洁、可靠的伪代码供学习使用。