交并比分类计算(IOU classification calculation)

交并比分类计算(IOU classification calculation)

下面展示一些 内联代码片

def calculate_iou(i, left_1, top_1, right_1,bottom_1,left_2, top_2, right_2,bottom_2):
    area=(bottom_1-top_1)*(right_1-left_1)
    iou=0

    if(left_1 <left_2 and top_2>top_1 ):
        print('Enter the fourth quadrant judgment mode')
        if(left_2 > right_1 or bottom_1 < top_2):  
            iou=0
        elif(right_2>right_1 and bottom_2<bottom_1):
            iou = (bottom_2 - top_2) * (right_1 - left_2) / area
        elif (right_2 < right_1 and bottom_2 > bottom_1):  
            iou = (bottom_1 - top_2) * (right_2 - left_2) / area
        elif (right_2 < right_1 and bottom_2 < bottom_1):  
            iou = 1
        elif (right_2 >right_1 and bottom_2>bottom_1 ):
            iou = (bottom_1 - top_2) * (right_1 - left_2) / area
    elif(left_2<left_1 and top_2>top_1): 
        print('Enter the third quadrant judgment mode')
        if (right_2 < left_1 or bottom_1<top_2):  
            iou = 0
        elif(right_2<right_1 and bottom_2<bottom_1):
            iou = (bottom_2 - top_2) * (right_2 - left_1) / area
        elif(right_2>right_1 and bottom_2<bottom_1):
            iou = (bottom_2 - top_2) * (right_1 - left_1) / area
        elif (right_2 < right_1 and bottom_2 > bottom_1): 
            iou = (bottom_1 - top_2) * (right_2 - left_1) / area
        elif (right_2 > right_1 and bottom_1<bottom_2):  
            iou = (right_1-left_1)*(bottom_1-top_2)/area
    elif(left_2<left_1 and top_2<top_1): 
        print('Enter the second quadrant judgment mode')
        if (right_2 < left_1 or bottom_2 < top_1):  
            iou=0
        elif (right_2 < right_1 and bottom_2 < bottom_1): 
            iou=(right_2-left_1)*(bottom_2-top_1)/area
        elif (right_2 > right_1 and bottom_2 > top_1):  
            iou=(right_1-left_1)*(bottom_2-top_1)/area
        elif (right_2 < right_1 and bottom_2 > bottom_1): 
            iou=(bottom_1-top_1)*(right_2-left_1)/area
        elif (right_2 > right_1 and bottom_2 > bottom_1): 
            iou=1
    elif (left_2 > left_1 and top_2 < top_1):  
        print('Enter the first quadrant judgment mode')
        if (left_2 > right_1 or bottom_2 < bottom_1): 
            iou=0
        elif (right_2 > right_1 and bottom_2 < bottom_1):  
            iou=(bottom_1-bottom_2)*(right_1-left_2)/area
        elif (right_2 < right_1 and bottom_2 < bottom_1):  
            iou=(right_2-left_2)*(bottom_2-top_1)/area
        elif (right_2 < right_1 and bottom_2 > bottom_1): 
            iou=(right_2-left_2)*(bottom_1-top_1)/area
        elif (right_2 > right_1 and bottom_2 > bottom_1): 
            iou=(right_1-left_2)*(bottom_1-top_1)/area
    return i, iou
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值