参考:
这个帖子讲得很详细,但我跑自己代码时发现了该贴计算IoU代码的错误。
修改如下:
def iou(box1, box2):
'''
两个框(二维)的 iou 计算
注意:边框以左上为原点
box:[top, left, bottom, right]
'''
in_h = min(box1[0], box2[0]) - max(box1[2], box2[2]) #####
in_w = min(box1[3], box2[3]) - max(box1[1], box2[1])
inter = 0 if in_h<0 or in_w<0 else in_h*in_w
union = (box1[0] - box1[2]) * (box1[3] - box1[1]) + \
(box2[0] - box2[2]) * (box2[3] - box2[1]) - inter
iou = inter / union
return iou
版权声明:本文为CSDN博主「哩c叫fit」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_51268175/article/details/122542496
暂无评论