cv里的图像分割任务的部分评价指标
一.图像分割
在cv的图像分割领域,大体可以分为三个方向或者说分割任务,即语义分割、实例分割和全景分割。
下面是三者的任务区分:
1.语义分割:
回答“每个像素属于什么类别?”(例如,天空、道路、人)。核心:只关心像素的类别,不区分同一类别的不同个体。图片中有三只狗,语义分割会将它们全部标记为“狗”这一个区域。
2.实例分割:
回答“每个对象实例在哪里?”(例如,人1、人2、汽车1、汽车2)。核心:既要区分类别,又要区分同一类别下的不同个体。图片中有三只狗,实例分割会分别标出“狗1”、“狗2”、“狗3”的精确像素轮廓。
3.全景分割:
回答“每个像素属于哪个事物或哪个背景?” 它是语义分割和实例分割的统一。核心:在区分所有对象实例的同时,也对背景(如天空、道路)进行像素级分类。最关键的是,它要求不允许重叠,每个像素都必须被分配给唯一的一个“片段”(一个实例或一块背景区域)。
二. 评价指标
而三个任务又有其对应的任务评价指标。
1. 语义分割指标:mIoU
mIoU 是语义分割中最常用、最经典的指标。
全称:Mean Intersection over Union
中文:平均交并比
计算方法:
IoU:对于某一个类别(例如“汽车”),计算其预测区域和真实标注区域的重合程度。
交集
:预测为“汽车”且真实值也是“汽车”的像素集合。并集
:预测为“汽车”或真实值是“汽车”的像素集合。IoU = 交集 / 并集
IoU值在0到1之间,越大越好,1表示完美匹配。
mIoU:对所有类别的IoU取平均值。
假设有
C
个类别(包括背景),先计算每个类别的IoU,然后求和再除以C
。mIoU = (1/C) * Σ(IoU_i)
,其中i
从1到C。
特点:
不考虑实例:mIoU只关心像素的分类是否正确,不关心一个“汽车”区域里包含了几辆车。
对类别均衡敏感:如果某个类别在数据集中占比很小(如“交通灯”),它的IoU会对最终mIoU产生较小影响。有时也会使用加权mIoU来缓解这个问题。
2. 实例分割指标:AP
AP 是目标检测和实例分割的核心指标,它更侧重于对实例物体的检测和分割质量的评估。
全称:Average Precision
中文:平均精度
计算流程(基于COCO数据集的标准)
IoU计算:对于每个预测的实例(如“狗1”),需要找到与其最匹配的真实实例,并计算它们之间的IoU。
设定IoU阈值:通常设定一个阈值(如0.5)。如果预测实例与真实实例的IoU >= 0.5,则认为这是一个正确匹配,否则是错误匹配。
计算 Precision 和 Recall:
精确率:在所有被预测为正例(如“是狗”)的实例中,真正是正例的比例。
Precision = TP / (TP + FP)
召回率:在所有真实的正例中,被成功预测出来的比例。
Recall = TP / (TP + FN)
TP
:真正例(IoU>=阈值),FP
:假正例(IoU<阈值或重复预测),FN
:假负例(未被检测到的真实实例)。
绘制P-R曲线:通过调整模型预测的置信度阈值,可以得到多组(Precision, Recall)点,并绘制成曲线。
计算AP:AP就是Precision-Recall曲线下的面积。面积越大,说明模型在保持高精确率的同时也能达到高召回率,性能越好。
COCO的AP:COCO竞赛通常使用更严格的评估方式,即在不同IoU阈值(从0.5到0.95,步长0.05)上计算AP,然后取平均值,记为 AP@[.5:.95] 或 simply AP。此外,还有
AP50
(IoU阈值为0.5)、AP75
(IoU阈值为0.75)等。
特点
侧重实例:AP的核心是评估模型能否找到并精确分割出每一个独立的物体实例。
允许重叠:实例分割的预测结果允许不同实例的掩码重叠。
评估全面:同时考虑了定位精度(通过IoU阈值)和分类置信度(通过P-R曲线)。
3. 全景分割指标:PQ
PQ 是专为全景分割任务设计的指标,它同时评估“事物”和“背景”的分割质量。
全称:Panoptic Quality
中文:全景质量
核心思想与计算
PQ的设计非常直观和严谨,它基于一个简单的原则:匹配的片段才参与评分,不匹配的直接惩罚。
片段匹配:
将所有的预测片段和真实片段进行配对。
配对规则:只有当预测片段和真实片段的 IoU > 0.5 时,它们才被认为是匹配的。这个规则确保了一一对应,一个真实片段最多只能与一个预测片段匹配,反之亦然。
区分为两部分:
匹配上的片段:这些是模型分割得比较好的部分。
未匹配上的片段:包括预测出来但无真实值对应的(FP),和真实存在但未被预测出来的(FN)。这些是模型的错误。
PQ公式:
PQ = Σ(对于所有匹配的片段) (IoU) / (TP + 0.5 * FP + 0.5 * FN)
这个公式可以巧妙地拆解为两个独立部分的乘积:PQ = (Σ IoU / TP) * (TP / (TP + 0.5 * FP + 0.5 * FN))
分割质量(SQ):
SQ = Σ IoU / TP
所有匹配片段的平均IoU。它衡量的是“一旦模型识别出了一个物体,它分割得有多好”。
识别质量(RQ):
RQ = TP / (TP + 0.5 * FP + 0.5 * FN)
这类似于F1-Score,同时考虑了精确率和召回率,用于衡量“模型识别物体的能力”(检测质量)。
因此,PQ = SQ × RQ
特点
统一与无重叠:PQ是第一个统一评估“事物”和“背景”的指标,并且严格要求预测结果中不能有重叠的片段。
可分解性:PQ可以被分解为SQ和RQ,这有助于模型诊断。如果PQ低,可以看是SQ低(分割不精确)还是RQ低(检测能力差)。
对错误敏感:任何未匹配的片段(FP和FN)都会直接降低RQ,从而降低PQ,这使得PQ是一个非常严格的指标。
特征 | mIoU(语义分割) | AP(实例分割) | PQ(全景分割) |
---|---|---|---|
核心任务 | 像素分类 | 实例检测与分割 | 全景解析(实例+背景) |
区分实例? | 否 | 是 | 是 |
处理背景? | 是(作为一个类别) | 否(只关心前景物体) | 是(作为“背景”类别) |
允许重叠? | 不适用 | 允许 | 严格禁止 |
核心思想 | 逐类别计算像素重合度的平均值 | 在不同IoU阈值下计算精度-召回曲线下的面积 | 匹配片段的平均质量 × 识别物体的F1分数 |
优点 | 计算简单,易于理解 | 全面评估检测和分割性能,是实例级任务的黄金标准 | 统一评估,可分解,对错误敏感,设计严谨 |
缺点 | 无法评估实例识别能力 | 不评估背景,允许预测重叠 | 计算相对复杂,较新 |