画像セグメンテーションにおける評価指標として
Accuracy、Jaccard係数、Dice係数、Simpson係数などがありますが
ここではDice係数を用いてX線画像とそのラベル画像の学習と推定を行います
4行の上が元画像、下が推定のラベル画像になっています
jaccard(A, B) = |A∩B| / |A∪B| = |A∩B| / (|A| + |B| - |A∩B|)
Dice(A, B) = 2|A∩B| / (|A| + |B|)
def Jaccard_coef(y_true, y_pred):
y_true = K.flatten(y_true)
y_pred = K.flatten(y_pred)
intersection = K.sum(y_true * y_pred)
and_col = (K.sum(y_true) + K.sum(y_pred) - K.sum(y_true * y_pred) + 1)
return intersection / and_col
def dice_coef(y_true, y_pred): # coefficient:係数
y_true = K.flatten(y_true) # 1次元に引き延ばす
y_pred = K.flatten(y_pred)
intersection = K.sum(y_true * y_pred) # intersection:交わり、交差、共通部分
return 2.0 * intersection / (K.sum(y_true) + K.sum(y_pred) + 1)
Dice
Jaccard係数