def comput_iou(box1, box2):
    """
    box1 : 代表的是第一个框的坐标(left, top, right, bottom)
    box2 : 代表的是第二个框的坐标(left, top, right, bottom)
    最后返回iou值
    """

    # 首先计算第一个框和第二框的面积
    box1_area = (box1[2] - box1[0]) * (box1[1] - box1[3])
    box2_area = (box2[2] - box2[0]) * (box2[1] - box2[3])

    # 接下来计算并的面积
    uion_area = box1_area + box2_area

    # 接下来需要计算交集
    left_line = max(box1[0], box2[0])
    right_line = min(box1[2], box2[2])
    top_line = min(box1[1], box2[1])
    bottom_line = max(box1[3], box2[3])

    # 接下来需要判断是否有交集与没有交集的情况，如果没有交集的情况下
    #则返回0， 如果两个有交集的话，则进一步计算交并比

    if left_line > right_line or top_line > bottom_line:

        return 0
    
    else :
        
        # 有交集的情况下，先计算交集, 然后计算iou
        intersection = (top_line - bottom_line)*(right_line - left_line)

        return (intersection / uion_area)*1.0