cer*_*rou 83 metrics machine-learning vision detection computer-vision
在计算机视觉和物体检测中,常用的评估方法是mAP.它是什么以及如何计算?
Jon*_*han 40
行情来自上述Zisserman论文 - 4.2结果评估(第11页):
首先,"重叠标准"被定义为大于0.5的交叉结合.(例如,如果预测的框符合关于地面实况框的该标准,则认为是检测).然后使用这种"贪婪"方法在GT框和预测框之间进行匹配:
通过方法输出的检测被分配给满足重叠标准的地面实况对象,按顺序排列(减少)置信度输出.对图像中相同对象的多次检测被认为是错误检测,例如5个单个对象的检测被计为1个正确检测和4个错误检测
因此,每个预测的框都是真阳性或假阳性.每个地面实况框都是真正的.没有真正的否定.
然后通过平均精度回忆曲线上的精度值来计算平均精度,其中召回在[0,0.1,...,1]范围内(例如11个精度值的平均值).更准确地说,我们考虑稍微修正的PR曲线,其中对于每个曲线点(p,r),如果存在不同的曲线点(p',r'),则p'> p和r'> = r ,我们用这些点的最大p'替换p.
对我来说还有什么不清楚的是那些从未检测到的GT盒子(即使置信度为0).这意味着精确回忆曲线永远不会达到某些回忆值,这使得平均精度计算高于未定义.
编辑:
简答:在召回无法到达的地区,精确度降至0.
解释这一点的一种方式是假设当置信度的阈值接近0时,无数个预测的边界框在整个图像上点亮.精度然后立即变为0(因为只有有限数量的GT盒子)并且召回在这条平坦的曲线上保持增长直到我们达到100%.
mrk*_*mrk 26
对于检测,确定一个对象提议是否正确的常用方法是联合交叉(IoU,IU).这将获取一组
A建议的对象像素和一组真实对象像素,B并计算:

通常,IoU> 0.5意味着它是一个命中,否则它是一个失败.对于每个班级,可以计算出

然后mAP(平均精度)是:

注意: 如果想要更好的建议,可以将IoU从0.5增加到更高的值(最多1.0,这将是完美的).可以用mAP @ p表示这一点,其中p\in(0,1)是IoU.
mAP@[.5:.95] 表示在多个阈值上计算mAP,然后再次进行平均
编辑: 有关更多详细信息,请参阅COCO 评估指标
我认为这里的重要部分是如何将对象检测视为与标准信息检索问题相同,其中至少存在一个对平均精度的优秀描述.
一些对象检测算法的输出是一组建议的边界框,并且对于每个边界框,输出置信度和分类分数(每个类别一个分数).我们暂时忽略分类分数,并使用置信度作为阈值二进制分类的输入.直观地,平均精度是对阈值/截止值的所有选择的聚合.可是等等; 为了计算精度,我们需要知道盒子是否正确!
这是令人困惑/困难的地方; 与典型的信息检索问题相反,我们实际上在这里有一个额外的分类级别.也就是说,我们不能在框之间进行精确匹配,因此我们需要对边界框是否正确进行分类.解决方案是基本上对盒子尺寸进行硬编码分类; 我们检查它是否与任何基本事实充分重叠,被认为是"正确的".这部分的阈值是由常识选择的.您正在处理的数据集可能会定义"正确"边界框的阈值.大多数数据集只是将其设置为0.5 IoU并将其保留(我建议进行一些手动IoU计算[它们并不难],以了解实际上有多严格的IoU为0.5).
现在我们已经确定了"正确"的含义,我们可以使用与信息检索相同的过程.
要找到平均精度(mAP),您只需根据与这些框相关联的分类分数的最大值对您建议的框进行分层,然后对类的平均精度(AP)进行平均(取均值).
TLDR; 区分确定边界框预测是否"正确"(额外的分类级别)和评估框内部信任通知您"正确"边界框预测(完全类似于信息检索案例)的典型描述mAP会有意义.
值得注意的是,精度/回忆曲线下的面积与平均精度相同,我们基本上用梯形或右手近似积分逼近该区域.
| 归档时间: |
|
| 查看次数: |
53585 次 |
| 最近记录: |