目标检测 常见公开数据集 COCO && PASCAL、性能指标 AP && mAP

1 常见数据集

先要明确:
目标定位:提供的图片有一个目标,只需要将其位置定位出来
目标检测:提供的图片有一个或多个目标,需要把所有的目标的位置定位,并且判断出该目标的分类

ImageNet
ImageNet拥有用于分类、定位和检测任务评估的数据。

  • 图像总数量为:1419 7122,边界框注释的图像数:103 4908。
  • 分类数据、定位任务中有1000个类别。准确率根据 Top5 检测结果计算出。
  • 对 200 个目标的检测问题有 470000 个图像,平均每个图像中有1.1个目标。


PASCAL VOC
挑战在2005年 至 2012年间展开。

  • 该数据集中有20个分类。该数据集包含11530张用于训练和验证的图像,其中感兴趣区域有27450个标定。以下是数据集中的20个分类:

    • 人:人
    • 动物:鸟、猫、牛、狗、马、羊
    • 车辆:飞机、自行车、船、巴士、汽车、摩托车、火车
    • 室内:瓶、椅子、餐桌、盆栽植物、沙发、电视/检测器
  • 每个图像平均有2.4个目标

官网链接:http://host.robots.ox.ac.uk/pascal/VOC/voc2012/

COCO
MS COCO 的全称为 Microsoft Common Object in Context,是微软与2014年出资标注的 Microsoft COCO 数据集。
与 ImageNet 竞赛一样,被视为是计算机视觉领域最受关注和最权威的比赛之一。在 ImageNet竞赛停办后,COCO竞赛就成为当前目标识别、检测等领域的一个最权威重要的标杆,也是目前该领域在国际上唯一能汇集Google、微软、Facebook以及国内外众多顶尖院校和优秀创新企业共同参与的大赛

  • COCO目标检测挑战:
    • COCO数据集包含了20万个图像
    • 80个类别中超过50万个目标标注。他是最广泛公考的目标检测数据库
    • 平均每个图像的目标数为7.2个
  • COCO数据集现有3中标注类型:object instances(目标实例)、object keypoints(目标上的关键点)、image caption(看图说话),以 json 文件形式存储

2 性能指标

目标检测的常见性能指标

  • Precision、Recall、
  • IOU (Intersection over Union)
  • P-R curve(Precision-Recall curve)
  • AP(Average Precision)
  • mAP(mean Average Precision)
  • FPS(Frames Per Second)

2.1 Precision/Recall

准确率(Precision)
真阳率/召回率/灵敏度(True Positive Rate/Recall/Sensitivity)【即,阳性样本中的阳性检出率】
真阴率/特异度(True Negative Rate/Specificity)【即,阴性样本中的阴性检出率】

  • 准确率 = T P T P + F P \frac{TP}{TP+FP} TP+FPTP
  • 真阳率/召回率/灵敏度 = T P T P + F N \frac{TP}{TP+FN} TP+FNTP
  • 真阴率/特异度 = T N T N + F P \frac{TN}{TN+FP} TN+FPTN
    目标检测 常见公开数据集 COCO && PASCAL、性能指标 AP && mAP_第1张图片
    其中:第一位 T/F:表示预测的对错;第二位 P/N:表示预测的结果

2.2 目标检测中的IOU

目标检测 常见公开数据集 COCO && PASCAL、性能指标 AP && mAP_第2张图片
目标检测中的TP、FP、FN、TN

  • TP:对 ground-true 框正确的检测(分类正确,预测框与GT框的IOU大于阈值)
  • FP:对不存在的东西做了错误的预测,或者预测的IOU小于阈值
  • FN:漏检测
  • TN(不考虑):在目标检测里是不考虑TN,因为可以有无数个不包含目标的框。所以涉及到TN的指标,都不会在目标检测中使用。

常用的是精准率和召回率:

  • 精准率 P = T P T P + F P \frac{TP}{TP+FP} TP+FPTP = T P a l l   d e t e c t i o n \frac{TP}{all\ detection} all detectionTP
  • 召回率 R = T P T P + F N \frac{TP}{TP+FN} TP+FNTP = T P a l l   g r o u n d t r u t h s \frac{TP}{all\ ground truths} all groundtruthsTP

P 追求的精确,R追求的召回,所以要在 P和R之间要做一个平衡,则使用AP指标


2.3 AP指标:

举个例子,如下图一共7张图片,绿色框是GT(15个),红色框是预测框(24个)并带有置信度。假设IOU=30%,按照置信度排序如下图
目标检测 常见公开数据集 COCO && PASCAL、性能指标 AP && mAP_第3张图片
目标检测 常见公开数据集 COCO && PASCAL、性能指标 AP && mAP_第4张图片
其中:
TP:正确预测、FP:错误预测
acc TP:从头到该位置累计正确个数、acc FP:从头到该位置累计错误的个数
precision:从头到该位置的精确率、recall:从头到该位置的召回率

P1 = T P a l l   d e t e c t i o n \frac{TP}{all\ detection} all detectionTP = 1/1 = 1 ; R1 = T P a l l   g r o u n d t r u t h s \frac{TP}{all\ ground truths} all groundtruthsTP = 1/15 = 0.0666
P2 = T P a l l   d e t e c t i o n \frac{TP}{all\ detection} all detectionTP = 1/2 = 0.5 ; R2 = T P a l l   g r o u n d t r u t h s \frac{TP}{all\ ground truths} all groundtruthsTP = 1/15 = 0.0666
P3 = T P a l l   d e t e c t i o n \frac{TP}{all\ detection} all detectionTP = 2/3 = 0.666 ; R3 = T P a l l   g r o u n d t r u t h s \frac{TP}{all\ ground truths} all groundtruthsTP = 2/15 = 0.1333
P4 = T P a l l   d e t e c t i o n \frac{TP}{all\ detection} all detectionTP = 2/4 = 0.5; R3 = T P a l l   g r o u n d t r u t h s \frac{TP}{all\ ground truths} all groundtruthsTP = 2/15 = 0.1333
P5 = T P a l l   d e t e c t i o n \frac{TP}{all\ detection} all detectionTP = 2/5 = 0.4; R5 = T P a l l   g r o u n d t r u t h s \frac{TP}{all\ ground truths} all groundtruthsTP = 2/15 = 0.1333
P6 = T P a l l   d e t e c t i o n \frac{TP}{all\ detection} all detectionTP = 2/6 = 0.333; R6 = T P a l l   g r o u n d t r u t h s \frac{TP}{all\ ground truths} all groundtruthsTP = 2/15 = 0.1333

将PR绘制成图:
目标检测 常见公开数据集 COCO && PASCAL、性能指标 AP && mAP_第5张图片
以上,准备工作已经做好,下面就要讲述AP的计算方式。
AP 的计算有两种方式: A P 11 AP_{11} AP11 A P a l l AP_{all} APall。关于AP的计算一般使用的为 A P 11 AP_{11} AP11

A P 11 AP_{11} AP11目标检测 常见公开数据集 COCO && PASCAL、性能指标 AP && mAP_第6张图片

  • PR图:上图中的蓝颜色的曲线为
  • A P 11 AP_{11} AP11:上图中红点的纵坐标的均值。红点如何选取的呢?
    • 红点的横坐标为 [0,1]之间均匀取值11个,即 [0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.0]。
    • 纵坐标的取值为 该点的右侧的PR线的最高值。
    • A P 11 = 1 11 AP_{11} = \frac{1}{11} AP11=111(1+0.6666+0.4285+0.4285+0.4285) = 26.84%

A P a l l AP_{all} APall
目标检测 常见公开数据集 COCO && PASCAL、性能指标 AP && mAP_第7张图片

  • PR图:蓝色线
  • A P a l l AP_{all} APall:红色虚线下方所有的面积。红色虚线的纵坐标是单调递减的。
    A P 11 = AP_{11} = AP11=(1*(0.6666 - 0) + 0.6666 *(0.1333 - 0.0666) + 0.4285 * (0.4-0.1333) + 0.3043 * (0.4666 - 0.4)) = 24.56%

2.4 mAP、AP50、AP@50:5:95

  • mAP:如果是多类别目标检测任务,就要使用 mean AP。也就是对所有的类别进行AP的计算,然后去取均值。其定义为: m A P = 1 N ∑ i = 1 N A P i mAP=\frac{1}{N}\sum_{i=1}^{N}AP_{i} mAP=N1i=1NAPi

  • AP50:IOU阈值取 0.5

  • AP70:IOU阈值取 0.7

  • AP@50:5:95 指的是 IOU的值从 0.5 取到 0.95,步长为0.05,然后计算在这些IOU阈值下的AP的均值
    目标检测 常见公开数据集 COCO && PASCAL、性能指标 AP && mAP_第8张图片

你可能感兴趣的:(目标检测 常见公开数据集 COCO && PASCAL、性能指标 AP && mAP)