IoU(Intersection over Union) GIOU(Generalized IoU) DIoU(Distance IoU) CIoU(Complete IoU) 整体实现 IoU(Intersection over Union) IoU就是我们所说的交并比,是目标检测中最常用的指标,在anchor-based的方法中,他的作用不仅用来确定正样本和负样本,还可以用来评价输出框(predict box)和ground-truth的距离。 IoU...
针对GIOU存在的两个问题:当预测框和真实框处于包含关系时,或者它们处于水平/垂直方向上时,导致 GIOU 损失几乎退化为 IOU 损失,从而影响了模型的收敛速度。在这方面,一些学者提出了一种名为 Distance-IoU Loss 的方法,该方法将 GIOU 中引入最小外接矩形来最大化重叠面积的惩罚项修改为最小化两个边界框中心点的标...
IOU、GIOU、DIOU、CIOU损失函数的区别如下:1. IOU 公式:IOU = ,其中C为预测框与目标框的交集面积,E为预测框与目标框的并集面积。 IOU Loss:ln 或者 1 IOU。 优点:简单直观,直接衡量预测框与目标框的重叠度。 缺点:无法反映框内的细节信息和非重叠部分的情况。2. GIOU 公式:GIOU = IO...
GIoU=IoU−|Ac−U|Ac=CA+B−C−DEGIoU=IoU−|Ac−U|Ac=CA+B−C−DE loss=1−GIoUloss=1−GIoU 与IoU相似,GIoU也是一种距离度量 GIoU的范围是[-1, 1] GIOU Loss的范围在[0, 2] GIoU是IoU的下界,在两个框无限重合的情况下,IoU=GIoU=1 与IoU只关注重叠区域不同,GIoU不仅关注重叠...
相比于IoU,GIoU考虑了目标框的几何形状,不仅考虑它们的重叠部分,还考虑它们之间的空隙。 GIoU的值范围为[-1, 1],当预测框完全包含真实框时,GIoU值为1,当预测框与真实框完全不相交时,GIoU值为-1。 缺点:计算略为复杂,且当两个框完全没有交集时,仍然可能存在较大的惩罚。3...
GIOU损失函数的最终表达形式是L(GIOU) = 1 - GIOU 上表是原论文中的实验效果:第一列(AP-IoU一列)采用MSE(l2损失)的mAP=0.461,采用IoU损失得到的mAP=0.466,有些许提升。如果采用GIoU loss,能达到0.477,效果比IOU更好。 但是,GIOU也存在它的缺点:...
GIOU-loss 问题分析 当预测框和真实框不相交时Iou值为0,导致很大范围内损失函数没有梯度。针对这一问题,提出了Giou作为损失函数。 算法公式及其解释:其实想法也很简单(但这一步很难):假如现在有两个box A,B,我们找到一个最小的封闭形状C,让C可以把A,B包含在内,然后再计算C中没有覆盖A和B的面积占C总面积...
IoU,即交并比,是目标检测中的核心评估指标,尤其在基于锚点的方法中,它不仅用于区分正负样本,还能衡量预测框与真实框的匹配度。其计算公式为[公式]或[公式]。IoU值范围从0到1,完全重合时为1,无重叠时为0。进一步发展,GIOU(Generalized IoU)引入了最小闭包区域的概念,通过计算预测框与真实框的非...
当IOU=0时: 当IOU为0时,意味着A与B没有交集,这个时候两个框离得越远,GIOU越接近-1;两框重合,GIOU=1,所以GIOU的取值为(-1, 1]。 GIOU作为loss函数时: 当A、B两框不相交时 不变,最大化GIoU就是最小化C,这样就会促使两个框不断靠近。
IoU 的计算代码非常简洁,如下为 YOLOv8 中的完整代码实现。 importmathimporttorchdefbbox_iou(box1,box2,xywh=True,GIoU=False,DIoU=False,CIoU=False,eps=1e-7):"""Calculate Intersection over Union (IoU) of box1(1, 4) to box2(n, 4). xywh格式的x,y为中心点坐标 Args: box1 (torch.Tensor...