IoU 的全称为交并比(Intersection over Union)
通过这个名称我们大概可以猜到 IoU 的计算方法。
IoU 计算的是 “预测的边框” 和 “真实的边框” 的交集和并集的比值。
开始计算之前,我们首先进行分析下交集和并集到底应该怎么计算:我们首先需要计算交集,然后并集通过两个边框的面积的和减去交集部分即为并集,因此 IoU 的计算的难点在于交集的计算。
为了计算交集,你脑子里首先想到的方法应该是:考虑两个边框的相对位置,然后按照相对位置(左上,左下,右上,右下,包含,互不相交)分情况讨论,来计算交集。
让我们重新思考一下两个框交集的计算。两个框交集的计算的实质是两个集合交集的计算。
交集计算的逻辑
交集下界 z1:max(x1,y1)
交集上界 z2:min(x2,y2)
如果 z2−z1,z2−z1 小于0,则说明集合 A 和集合 B 没有交集。