本文主要介绍几种在医学图像分割领域常用的评价标准:Dice Loss, Sensitivity & Specificity, Hausdorff distance, Average surface distance
等
Dice
系数,是一种集合相似度度量函数,通常用于计算两个样本点的相似度(值范围为 [0,1][0, 1][0,1] ),其值越大意味着这两个样本越相似
计算公式:
Dice=2∣X∩Y∣∣X∣+∣Y∣Dice = \frac{2|X \cap Y|}{|X| + |Y|}Dice=∣X∣+∣Y∣2∣X∩Y∣
参数含义:
Truth\Classified | Positive | Negative |
---|---|---|
Positive | True Positive | False Negative |
Negative | False Positive | True Negative |
在二分类问题中,Dice coefficient
也可以写成:
Dice=2TPFP+2TP+FN=F1scoreDice = \frac{2TP}{FP + 2TP +FN} = F1scoreDice=FP+2TP+FN2TP=F1score
Dice Loss
数学表达式如下:
DiceLoss=1−Dice=1−2∣X∩Y∣∣X∣+∣Y∣DiceLoss = 1 - Dice = 1 - \frac{2|X \cap Y|}{|X| + |Y|}DiceLoss=1−Dice=1−∣X∣+∣Y∣2∣X∩Y∣
当 Dice Loss
用于医学图像分割问题中,参数含义:
对于二分类问题,真实分割标签图像的像素只有 000,111 两个值,因此 ∣X∩Y∣|X \cap Y|∣X∩Y∣ 可以有效地将在预测分割图像中未在真实分割标签图像中激活的所有像素值清零,对于激活的像素,主要是惩罚低置信度的预测,置信度高的预测会得到较高的 Dice
系数,从而得到较低的 Dice Loss
,即:
DiceLoss=1−2∑i=1Nyiyi^∑i=1Nyi+∑i=1Nyi^DiceLoss = 1 - \frac{2\sum_{i=1}^N y_i \hat{y_i}}{\sum_{i=1}^N y_i + \sum_{i=1}^N \hat{y_i}}DiceLoss=1−∑i=1Nyi+∑i=1Nyi^2∑i=1Nyiyi^
参数含义:
Dice Loss
可以缓解样本中前景背景(面积)不平衡带来的消极影响,前景背景不平衡也就是说图像中大部分区域是不包含目标的,只有一小部分区域包含目标。Dice Loss
训练更关注对前景区域的挖掘,即保证有较低的 FN
,但会存在损失饱和问题。因此单独使用 Dice Loss
往往并不能取得较好的结果,需要进行组合使用,比如 Dice Loss+CE Loss
或者 Dice Loss+Focal Loss
等
Truth\Classified | Positive | Negative |
---|---|---|
Positive | True Positive | False Negative |
Negative | False Positive | True Negative |
TPR:True positive rate,描述识别出的所有正例占所有正例的比例
计算公式:
TPR=TPTP+FNTPR = \frac{TP}{TP+ FN}TPR=TP+FNTP
可以理解为患者实际有病且被正确诊断出来的概率,即敏感性高 = 漏诊率低(但假性多)
FPR:False positive rate,描述将负例识别为正例的情况占所有负例的比例
FPR=FPFP+TNFPR = \frac{FP}{FP + TN}FPR=FP+TNFP
可以理解为患者时间没病而且被正确确诊的概率,即特异性低 = 误诊率高(即假阴性多)
Hausdorff distance
是度量空间中两个子集之间的距离,它将度量空间的非空子集本身转化为度量空间。
非正式地说,如果一个集合的每个点都接近另一个集合的某个点,那么两个集合在 Hausdorff distance
上是接近的。Hausdorff distance
是指对手在两组中的一组中选择一个点,然后必须从那里到达另一组的最长距离。换句话说,它是从一个集合中的一个点到另一个集合中最近的点的所有距离中最大的一个。
假设有两组集合:
A={a1,a2,⋯,ap},B={b1,b2,⋯,bp}A = \{ a^1, a^2, \cdots, a^p \}, \quad B = \{ b^1, b^2, \cdots, b^p \} A={a1,a2,⋯,ap},B={b1,b2,⋯,bp}
计算公式:
h(A,B)=maxa∈Aminb∈B∣∣a−b∣∣h(B,A)=maxb∈Amina∈B∣∣b−a∣∣h(A, B) = \displaystyle\max_{a \in A}\displaystyle\min_{b \in B} || a - b || \\ h(B, A) = \displaystyle\max_{b \in A}\displaystyle\min_{a \in B} || b - a ||h(A,B)=a∈Amaxb∈Bmin∣∣a−b∣∣h(B,A)=b∈Amaxa∈Bmin∣∣b−a∣∣
参数含义:
Hausdorff distance
,h(B,A)h(B, A)h(B,A) 也叫后向 Hausdorff distance
h(A,B)h(A, B)h(A,B) 的理解:
图解:
计算公式:
H(A,B)=max{h(A,B),h(B,A)}H(A, B) = max\{ h(A, B), h(B, A) \}H(A,B)=max{h(A,B),h(B,A)}
双向 Hausdorff 距离取单向 Hausdorff 距离中的最大值,度量了两个点集间的不相似程度(双向 Hausdorff 距离越小,匹配程度越高)
但是,在图像存在噪声污染或遮挡等情况时,上述的 Hausdorff 距离很容易造成误匹配,如下图:
B 集合中距离 A 集合最近的点 bjb_jbj,A集合中距离 bjb_jbj 最远的点是 a2a_2a2,但是由于存在噪声,Hausdorff 距离并没有取 a2a_2a2 与 bjb_jbj 之间的距离,而是噪声与 bjb_jbj 之间的距离,导致错误。
Mean surface distance 这个指标就是 P 中所有点的表面距离的平均,这个指标又可称为Average Symmetric Surface Distance (ASSD)。
通过对体素数据,体素点与体素点之间的距离进行编码,建立查找表,从而极大减小了运算量和算法复杂度,从而计算点与点之间的距离。这里需要注意的是,体素与体素之间的距离计算是以单位体积进行计算的
输入 A 和 B:
marching cube
等值面,建立相交点构成平面的法向量,根据法向量和voxel spacing
,获得 surface distance
的查找表(长度为 256 的 list)kernel
卷积进行编码(记为 CODE
)borders
)CODE
为输入,0~255 对应 index 的 element,和查找表进行映射,取面积距离值,构成面积距离图 (surface map
)borders
大于 0 的像素作为索引(相当于选点的过程),获得 B 的 distance 的映射结果,即 A 集合中的体素与 B 中 border
的距离图(记为 (distances_ map, 1 dimension)
)borders
大于 0 的像素作为索引,获得 A 的 surface_ map
的映射结果(记为 (surfel map, 1 dimension)
) (distances map * srufel map) / sum(surfel map)
,即得到了 ASD
主要总结了有关医学图像分割领域几种常用的模型评价标准,会根据在后续论文中遇到的指标进行补充和修改