MIoU(Mean IoU,Mean Intersection over Union,均交并比,交集 / 并集),也就是语义分割中所谓的 Mask IoU 。MIoU:计算两圆交集(橙色TP)与两圆并集(红色FN+橙色TP+黄色FP)之间的比例,理想情况下两圆重合,比例为1。 from sklearn.metrics import confusion_matrix import numpy as np def compute_iou(y_pred, y_true): # ytrue, ypred is a flatten vector y_pred = y_pred.flatten() y_true = y_true.flatten() current = confusion_matrix(y_true, y_pred, labels=[0, 1]) # compute mean iou intersection = np.diag(current) ground_truth_set = current.sum(axis=1) predicted_set = current.sum(axis=0) union = ground_truth_set + predicted_set - intersection IoU = intersection / union.astype(np.float32) return np.mean(IoU)