语义分割的任务就是预测输入图像每个像素点的类别。简单来说,就是做像素级分类。
图中左侧是一张输入图像,中间图像是对图像每个像素类别人工标记的Ground truth(真实标签),右侧图像是对图像每个像素类别预测得到的结果。
为了证明一个语义分割方法的有效性,我们需要对语义分割方法进行严格的评估。下面介绍语义分割中最常用的几个评价指标。
问题假定
在准确描述每个评价指标之前,我们先做出一些假定:
- 图像中每个像素都有一个类别标签。假定类别总数为 k + 1 k+1 k+1个类别,包括 k k k个类别和 1 1 1个背景
- p i j p_{ij} pij为类别 i i i的像素预测为类别 j j j的数量。当 i = j i=j i=j时表示预测正确,否则表示预测错误
1. Pixel Accuracy
Pixel Accuracy 简称PA,它是最简单的指标。它表示所有像素类别预测正确的数量与像素总数的比例。
P A = ∑ i = 0 k p i i ∑ i = 0 k ∑ j = 0 k p i j PA = \frac {\sum_{i=0}^kp_{ii}}{\sum_{i=0}^k\sum_{j=0}^kp_{ij}} PA=∑i=0k∑j=0kpij∑i=0kpii
2. Mean Pixel Accuracy
Mean Pixel Accuracy 简称MPA, 它比PA指标略有改善。它的计算分两个步骤
- 对每个类别,计算该类别下预测正确的数量与该类别像素总数的比例
- 对所有类别的计算结果求平均
M P A = 1 k + 1 ∑ i = 0 k p i i ∑ j = 0 k p i j MPA = \frac {1}{k+1} \sum_{i=0}^k \frac {p_{ii}}{\sum_{j=0}^k p_{ij}} MPA=k+11i=0∑k∑j=0kpijpii
3. Mean Intersection over Union
Mean Intersection over Union 简称MIoU,它是分割任务的标准指标。
首先,我们先介绍IoU(交并比),它本质上是一种量化目标掩膜和预测掩膜之间重叠百分比的方法。具体来说,就是指目标掩膜与预测掩膜的公共区域的像素个数,与两者总的像素个数的比值。
而MIoU 就是每个类别的IoU的平均。它的计算同样分两个步骤:
- 对每个类别,计算的是一个交集与并集的比例。这个比例的分子和MPA一样,是该类别下预测正确的数量;分母的范围更大,是指该类别预测为其他类别和其他类别预测为该类别的总和。
- 对所有类别的计算结果求平均。
M P A = 1 k + 1 ∑ i = 0 k p i i ∑ j = 0 k p i j + ∑ j = 0 k p j i − p i i MPA = \frac {1}{k+1} \sum_{i=0}^k \frac {p_{ii}}{\sum_{j=0}^k p_{ij} + \sum_{j=0}^k p_{ji} - p_{ii}} MPA=k+11i=0∑k∑j=0kpij+∑j=0kpji−piipii
4. Frequency Weighted Intersection over Union
Frequency Weighted Intersection over Union 简称FWIoU,它是在MIoU基础上做了改善。
具体的改善思路是MIOU是先计算每个类别的IOU,然后对所有类别求平均。而FWIoU 不再采用平均的方式,而是对每个类别的IOU进行加权,所有类别的权重仍为1。
也可以理解为MIOU 的所有类别的权重是均等的,均为 1 k + 1 \frac{1}{k+1} k+11。
那么FWIoU各个类别的权重是怎么计算的呢?
是采用每个类别的类别数量作为权重,哪个类别的数量多,哪个类别的权重大。
M P A = 1 ∑ i = 0 k ∑ j = 0 k p i j ∑ i = 0 k ∑ j = 0 k p i j p i i ∑ j = 0 k p i j + ∑ j = 0 k p j i − p i i MPA = \frac {1}{\sum_{i=0}^k\sum_{j=0}^kp_{ij}} \sum_{i=0}^k \frac { \sum_{j=0}^kp_{ij} p_{ii}}{\sum_{j=0}^k p_{ij} + \sum_{j=0}^k p_{ji} - p_{ii}} MPA=∑i=0k∑j=0kpij1i=0∑k∑j=0kpij+∑j=0kpji−pii∑j=0kpijpii
写在最后的话
关注[CV面试宝典],回复“评价指标”,获取本文涉及论文。
参考文献
-
https://www.jeremyjordan.me/evaluating-image-segmentation-models/
-
A Review on Deep Learning Techniques Applied to Semantic Segmentation