目标检测是计算机视觉领域的传统任务,需要识别出图像上存在的物体,给出对应的类别,并将该物体的位置通过最小包围框(Bounding box)的方式给出。下面介绍2D目标检测任务的常用评价指标。
IoU(Intersection over Union)
- 定义:交并比,两个矩形框交集的面积与并集的面积之比
- 范围:0~100%
- 用途:判断两个矩形框的重叠程度,值越高则重叠程度越高,即两个框越靠近
- IoU 和 Overlap Rate 定义是完全相同的,只不过在检测任务中常写作IoU,在跟踪任务中常写作 Overlap Rate
IoU threshold
- 定义:需要人为设定的IoU的阈值,高于该阈值的矩形框被认为是命中目标,反之则被认为未命中
- 范围:0~100%
- 用途:作为区分矩形框是否命中目标的指标,阈值越高则要求矩形框与真值重叠程度越高
TP,TN,FP,FN
正样本 | 负样本 | |
---|---|---|
判断为正 | TP | FP |
判断为负 | FN | TN |
- TP (True Positive,真阳性):检测器给出正样本,事实上也是正样本,即正确检测到目标
- TN (True Negative,真阴性):检测器给出负样本,事实上也是负样本,即正确检测到非目标
- FP (False Positive,假阳性):检测器给出正样本,事实上却是负样本,即误检测
- FN (False Negative,假阴性):检测器给出负样本,事实上却是正样本,即漏检测
Precision
- 定义:精确度(查准率),表示检测器给出所有正样本中正确的百分比
- 计算:Precision = 检测器正确检测的正样本个数/检测器给出的所有正样本个数 = TP/(TP + FP)
- 范围:0~100%
- 用途:用于评估检测器在检测成功基础上的正确率
Recall
- 定义:召回率(查全率),表示真值给出的所有正样本中被检测器检测到的百分比
- 计算:Recall = 检测器正确检测的正样本个数/真值给出的所有正样本个数 = TP/(TP + FN)
- 范围:0~100%
- 用途:用于评估检测器对所有待检测目标的检测覆盖率
PR曲线
- 定义:Precision-Recall曲线,即以Precision为纵坐标、Recall为横坐标所作的曲线
- 绘制:选取不同的confidence阈值,可以在PR坐标系上得到不同的点,连接这些点即可获得PR曲线
- 用途:用来评估模型性能。Precision值和Recall值越大越好,所以PR曲线越往右上角凸越好。
AP(Average Precision)
- 定义:平均精度,即PR曲线下的面积
- 范围:0~100%
- 用途:用来衡量算法在单个类别上的平均精度。AP值越高,表示对这个类别的检测精度越高。
- 计算:11点插值法和所有点插值法
- 11点插值法:VOC2010以前,选取当Recall >= 0, 0.1, 0.2, ..., 1共11个点时的Precision最大值,AP是这11个Precision的平均值,此时只由11个点去近似PR曲线下面积。
- 所有点插入法:从2010年开始,PASCAL VOC计算AP的方法发生了变化,使用所有点插入法而不是11个等间隔点插入了。
在这种情况下,不再使用仅在几个点上观察到的precision,而是通过对每个precision进行插值来获得AP。这样,我们可以估计曲线下的面积。
mAP(Mean Average Precision)
- 定义:平均精度均值,即多个类别的AP的平均值
- 范围:0~100%
- 用途:用来衡量算法在所有类别上的整体精度表现。mAP值是目标检测算法最重要的评估指标之一。
f-measure
- 定义:Precision和Recall的加权调和平均值
- 计算:
fβ-measure = ( β^2 + 1 ) * P * R / ( β^2 * P + R )
当 β = 1 时,即为 f1-measure:
f1-measure = 2 * P * R / ( P + R )
- 范围:0~100%
- 用途: Precision和Recall在一般情况下是互斥的,即Precision越高,Recall越低。f-measure用于为两者给出一个综合评判。
FPPI(False Positive Per Image)
- 定义:每张图片的误检数,相比precision和recall更加直观
- 用途:评估平均误检数