def accuracy(pred_mask, label):
'''
acc=(TP+TN)/(TP+FN+TN+FP)
'''
pred_mask = pred_mask.astype(np.uint8)
TP, FN, TN, FP = [0, 0, 0, 0]
for i in range(label.shape[0]):
for j in range(label.shape[1]):
if label[i][j] == 1:
if pred_mask[i][j] == 1:
TP += 1
elif pred_mask[i][j] == 0:
FN += 1
elif label[i][j] == 0:
if pred_mask[i][j] == 1:
FP += 1
elif pred_mask[i][j] == 0:
TN += 1
acc = (TP + TN) / (TP + FN + TN + FP)
sen = TP / (TP + FN)
Specificity = TN / (FP + TN)
Jaccard = TP / (FP + FN + TP)
Dice = 2 * TP / (FP + FN + 2 * TP)
ppv =TP/(TP+FP+1e-6 )
https://zhuanlan.zhihu.com/p/117435908