【功能性模块】功能性模块: (1) 计算IOU

发布时间:2026/10/23 4:03:41
【功能性模块】功能性模块: (1) 计算IOU
1计算IOU一、 模块介绍在实际应用中其实我们在代码中经常会需要计算IOU下面函数模块的输入分别为需要计算的两个矩形框的左上定点坐标和右下顶点坐标通过IOU计算公式进行计算代码已验证可以直接使用。二、代码实现defComputeIOU(rec1,rec2): 计算两个矩形的iou,输入分别为左上角顶点和右下角顶点 :param rec1: x0,y0,x1,y1 :param rec2: (x0,y0,x1,y1) :return: left_maxmax(rec1[0],rec2[0])right_minmin(rec1[2],rec2[2])up_maxmax(rec1[1],rec2[1])down_minmin(rec1[3],rec2[3])# 假设两者没有相交的区域ifleft_maxright_minorup_maxdown_min:return0# 假设两者有相交的区域else:s1(rec1[2]-rec1[0])*(rec1[3]-rec1[1])s2(rec2[2]-rec2[0])*(rec2[3]-rec2[1])S_cross(right_min-left_max)*(down_min-up_max)returnS_cross/(s1s2-S_cross)