语义分割根据predict和mask计算miou

该段代码用于计算IoU(IntersectionoverUnion)和mIoU(MeanIoU),它们是衡量图像分割任务性能的关键指标。首先,通过重塑和条件运算获取有效数据,然后利用numpy创建混淆矩阵。接着,根据混淆矩阵计算每个类别的IoU,并进一步求出所有类别的平均值即mIoU。
摘要由CSDN通过智能技术生成

        iou是一个类比的交互比,miou是所有类别交互比的平均,首先计算混淆矩阵,然后根据混淆矩阵计算iou以及miou

def calculate_miou(output, target):
    output = np.array(output)
    output = output.reshape(-1)
    target = np.array(target)
    target = target.reshape(-1)
    k = (output >= 0) & (output < n)# n为类别数
    # 计算混淆矩阵
    hist = np.bincount(n * output[k].astype(int) + target[k], minlength=n ** 2).reshape(n, n)
    # 计算iou
    iou = np.diag(hist) / (hist.sum(1) + hist.sum(0) - np.diag(hist))
    # 计算miou
    miou = np.mean(iou)
    return miou

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值