Diagnosing Error in Object Detectors: 评估检测器的方法论文阅读

  刚开始看到这篇文章,第一反应是评估detector都能写论文,还发到了ECCV。。。但是看完后很佩服作者的insights。

一、文章大概干了啥

  这篇文章主要提出了一种如何分析各种object特性(遮挡、大小、宽高比、部分可见度、角度、位置误差、相似目标错检等)对检测结果的影响以及对各种假阳性出现的频率与影响。得出的结论是:对目标大小、位置误差、相似目标误检的敏感程度是影响最终检测结果的主要形式。

  对VOC07的数据集进行了一些扩展标注:遮挡级别标注、目标哪部分可见、角度(side)

二、一些基本概念等

1、对目标characteristics的定义

    <1> 目标大小:bounding box的面积,每一类对bb area进行排序,并且最小的10%定义为XS(extra small),10%-30%:S;M:30%-70%;L:70%-90%;XL:90%-100%;

    <2> 宽高比:宽/高,同样分为XT(extra tall);T;M;W;XW;

    <3> 遮挡:见图

 

    <4> 截断:是否超出图像边界;

    <5> 部分可见性:目标的那部分可见;

    <6> 角度:目标哪个角度可见,bottom、front、top、side、near;

2、假阳性

  那些没有和目标类别对上号的detections,是主要的误差之一。不同类别的假阳性需要用不同的解决方法。

  分类:主要有以下四类

  <1>Localization error(位置误差)

    目标类别中的某个目标检测出的bounding box 和gt不重合,错位了(0.1< overlap <0.5),duplicated detection(同一目标的两个检测,猫的头和整体个检测了一次)也是位置误差。(类别检测是正确的)

  <2>confusion with similar objects(相似目标混淆)

    类别检测错误,狗检测成猫,文中将VOC的20类目标分成了{所有交通工具}、{动物(包括人)}、{家具}、{飞机和鸟}四大相似类别。(overlap>0.1)

  <3>Confusion with dissimilar objects(不相似目标混淆)

    比如人分类成chair等。(overlap>0.1)

  <4>confusion with background(与背景混淆)

    其他的假阳性全是这一类。

    直接上图来理解:

2、False Negtive(假阴性)

  漏检或者给一个目标很低的confidence,主要的causes是:遮挡、截断(超过图像边缘)、尺度太小、不寻常的角度。为什么confidence阈值设为0.01还是有很多目标检测不到?

三、如何分析那些图

1、假阳性的饼状图(top-ranked是指自己定义的大于conf阈值的正样本里的假阳性)

<1>一个令人惊讶的结果是:与背景混淆的假阳性只由9%!

<2>对于动物,主要的假阳性是与其他动物的相似混淆;对于交通工具,主要是相似目标混淆和位置误差;其他的分析类似。结论:位置误差和相似目标混淆是假阳性的主要影响!

<3>去掉某一种假阳性,最终的影响可能会很小!(比如去掉所有背景假阳性,对于动物只会提高0.02的AP)

 

2、折线图(?我也不知道该叫啥?)

  

<1>对于airplane可以得到的结论: 两个检测器对于:无遮挡、无截断、中等-很宽的宽高比、所有方向(side)均可见这些情况的预测都比较好;

                                              对于特别小、遮挡严重的情况检测的不好;

                 尽管对于特别小、遮挡严重的情况检测的不好,但是检测平均值还是和无遮挡情况很接近(主要是由于遮挡严重遮掩的个情况很少);

<2>由第一步可以分析出:目标的大小和遮挡对检测结果影响比较大(波动比较大,可以理解为斜率比较陡),然后专门对这两个特性进行详细分析

    ① 从上面的图可以看出,一般的detector对于无遮挡情况效果比较好,但是有个有趣的现象:对于经常遮挡的自行车、chair、饭桌来说,轻微遮挡效果会更好;

    ② 重要:在研究遮挡问题时,最好在遮挡物体的子集里进行测试,因为遮挡在整体效果终影响不是很大,就算把遮挡问题去掉,整体的AP也不会提升很大;

    ③ 检测器对于中等尺度大小的目标检测效果会比较好。对于很大目标检测不太好也是比较令人惊讶的结果,主要时因为大目标经常被截断或者角度不好。

<3> 目标特性的敏感度和影响总结

    最差最好的结果是7类(airplane、bicycle、bird、boat、cat、chair、table)的平均值,最差和最好的差值反映了敏感度;最好的和效果平均值(黑色虚线)的差别反映了这个性能提高对整体的影响。比如:

    ① 检测器对于遮挡和截断很敏感,但是影响很小(差不多0.05AP);目标大小和宽高比影响比较大(分别为0.18和0.13);

    ② 相比于FGMR,VGVZ对于角度和部分可见性的鲁棒性更高

▲为什么conf很低还是由很多没有检测到:作者的结论是目标的大小影响很大,而遮挡等因素的影响并不是很大。

 

 

四、很有见解的结论

1、虽然某一方法对检测的某个方面(比如检测遮挡物体)有明显提升,但是对于整体的检测效果来说,并没有很大的提升。(正在烦恼的事!观察图像结果很不错,但是mAP仅提高0.3%!!)

2、首先需要知道哪些方面需要提升,其次是新提出的方法是否获得了期望的效果。

3、这篇文章强调了:依靠整体基准来评价short-term progress(我的理解是很小的进步)是很危险的。

4、如果想评价解决目标大小、遮挡问题的方法需要用特殊的分析来验证,防止提升被稀释。(对于现在自己的问题,首先要思考移位的本质是什么,到底解决的是什么问题(大小or其它),然后再决定用什么方法来分析)。

5、识别的一个gridlock:一个没有在标准数据集上获得很好效果的新方法可能会被舍弃,不会被进一步研究,但是这种方法可能会比较好。

 

posted @ 2016-11-26 21:46  liangjif  阅读(1144)  评论(2)    收藏  举报