今天和大家分享一篇ECCV2020中关于目标检测失效分析工具的文章。

文章标题:TIDE: A General Toolbox for Identifying Object Detection Errors

文章下载地址:https://arxiv.org/abs/2008.08115

代码下载地址:https://dbolya.github.io/tide/

动机

在目标检测和实例分割任务中,通常以mAP作为衡量模型性能的指标,然而在不同的应用场景中,仅仅看mAP的值是不合适的。比如:

  • 在肿瘤检测任务中,正确的分类更重要,Bounding Box准确与否不是第一位的;
  • 在机器人抓取任务中,Bounding Box很重要,很微小的Bounding Box偏差可能会导致完全错误的结果。

因此在mAP的背后,需要做一些错误分析来进一步评价模型是否胜任某个任务。

此外,了解多种导致mAP下降的错误类别,能更有利于分析出模型的优势和弱点;也能够帮助我们确认某个trick解决了什么缺陷从而提高了mAP指标。

论文作者开发了一套工具:TIDE(Toolkit for Identifying Detection and segmentation Errors ),用于对目标检测和实例分割任务进行失效分析。

错误类别

作者将目标检测任务的错误类别分成下图所示的6类:

t f t_f tf​和 t b t_b tb​是2个IoU阈值,分别设置为0.5和0.1。上图中的6种类别分别为:

(1)Classification Error: I o U max ⁡ ≥ t f I o U_{\max } \geq t_{\mathrm{f}} IoUmax​≥tf​但是分类错误;

(2)Localization Error: t b ≤ I o U max ⁡ ≤ t f t_{\mathrm{b}} \leq I o U_{\max } \leq t_{\mathrm{f}} tb​≤IoUmax​≤tf​但是分类正确;

(3)Both Cls and Loc Error: t b ≤ I o U max ⁡ ≤ t f t_{\mathrm{b}} \leq I o U_{\max } \leq t_{\mathrm{f}} tb​≤IoUmax​≤tf​且分类错误;

(4)Duplicate Detection Error: I o U max ⁡ ≥ t f I o U_{\max } \geq t_{\mathrm{f}} IoUmax​≥tf​,分类正确,但是有另外一个置信度更高、分类正确的Bounding Box;

(5)Background Error:对于所有的ground truth, I o U max ⁡ ≤ t b I o U_{\max } \leq t_{\mathrm{b}} IoUmax​≤tb​;

(6)Missed GT Error:除了Cls Error和Loc Error以外,所有没有检测到的ground truth。

错误的重要性

这里使用修复错误后对mAP的提升程度来衡量错误的重要性。通过修复某个指定的错误,对比修复前后mAP的提升情况,来查看某个错误是否很重要。当所有的错误都修复以后,理论上mAP的值为100。

分别修复上述6种错误,通过查看mAP的提升情况,可得到这6种错误对性能的影响程度。

此外,使用另外一种分类方式,将错误分为False Positive和False Negative这2类,也能通过该方法得到这两种错误对性能的影响程度。

实例

下图为使用TIDE分析不同模型在COCO数据集上的检测失效情况:

下图为使用TIDE分析Mask R-CNN在不同数据集上的检测和实例分割失效情况:

如果你对计算机视觉中的目标检测、分割、跟踪、轻量化网络感兴趣,欢迎关注公众号一起交流~

TIDE|一个通用的目标检测失效分析工具相关推荐

  1. 对象检测目标小用什么模型好_小目标检测技术分析

    小目标检测技术分析 小目标检测及跟踪系统分为四个模块: · 硬件模块 该模块基于标准PCI总线,并配以超大规模可编程芯片(DSP.FPGA),具有极强的运算.处理能力. · DSP 程序模块 其功能主 ...

  2. ICLR2022系列解读之三:一个新的目标检测网络结构范式GiraffeDet

    本文解读我们ICLR2022上发表的论文<GiraffeDet: A Heavy-Neck Paradigm for Object Detection>.我们提出了一个新的目标检测网络结构 ...

  3. Python实现一个简单的目标检测

    Python实现一个简单的目标检测 相关介绍 实验环境 基本思路 代码实现 输出结果 相关介绍 选择性搜索(Select Search)算法属于候选区域算法,用分割不同区域的办法来识别潜在的物体.在分 ...

  4. 用PaddleDetection做一个完整的目标检测项目(上)

    文章转载自:微信公众号:飞桨PaddlePaddle的微信文章 原文章中由于排版问题,导致文字遮挡,不便阅读,因此对文章格式稍作更改,增加了一些关键词加粗,便于后续阅读. PaddleDetectio ...

  5. 各种RTMP直播流播放权限_音视频_数据花屏_问题检测与分析工具EasyRTMPClient

    之前的一篇博客<网络摄像机IPCamera RTSP直播播放网络/权限/音视频数据/花屏问题检测与分析助手EasyRTSPClient>,我们介绍了RTSP流的检测和分析工具EasyRTS ...

  6. 完成一个H.265/HEVC码流分析工具

    经过大约一个月左右的业余时间,终于初步完成一个H.265/HEVC码流分析工具.时间包括平时的周末.晚上,以及调休的集中时间.当然,中秋回家过节不写代码.截至今天,经过多种H.265序列测试,也有各种 ...

  7. 一个H.265/HEVC码流分析工具

    经过大约一个月左右的业余时间,终于初步完成一个H.265/HEVC码流分析工具.时间包括平时的周末.晚上,以及调休的集中时间.当然,中秋回家过节不写代码.截至今天,经过多种H.265序列测试,也有各种 ...

  8. MMDetection3D:新一代通用3D目标检测平台

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者:包小张 | 来源:知乎 https://zhuanlan.zhihu.com/p/1656473 ...

  9. Det3D - 首个通用 3D 目标检测框架

    点击我爱计算机视觉标星,更快获取CVML新技术 本文转载自知乎,已获作者授权转载,请勿二次转载. (原文链接:https://zhuanlan.zhihu.com/p/101346137) 背景介绍 ...

最新文章

  1. ef unitofwork 主从表更新
  2. Linux中目录结构
  3. 转载 Net多线程编程—System.Threading.Tasks.Parallel
  4. three.js制作3d模型工具_3D打印模型打磨抛光常用工具
  5. Spring-扫描/jar/读取Classpath下的文件资源
  6. 广东计算机学会 信息学省初赛,全国青少年信息学奥林匹克竞赛联赛-广东计算机学会...
  7. linux下安装配置nginx,Linux下安装与配置nginx
  8. 做游戏开发,选择Unity还是Unreal?
  9. Kotlin - 函数
  10. 腾讯云域名购买和域名解析教程
  11. 为什么说香港的城市规划是最棒的
  12. Computer OpenCart 自适应主题模板 ABC-0084
  13. UVa 11223 - O: dah dah dah!
  14. 操作系统进程进行系统调用详细过程
  15. timestamp与datetime的对比
  16. linux telnet 传文件命令,telnet 传输文件
  17. ROS启动失败的一个ip错误坑
  18. Android 引入第三方字体库的简单使用
  19. 哈希表原理,Hashtable(Hushmap)原理
  20. 民宿预订小程序开发方案

热门文章

  1. 人生职业规划的5大原则
  2. 【QML】分享一个纯QML实现的2048小游戏
  3. 南卡和FILL蓝牙耳机哪个好?降噪效果强的蓝牙耳机全面测评
  4. mysql序列表,自增序列生成合同编号
  5. 一些关于冷战时期太空探索的问题
  6. FileWriter的默认编码
  7. win10创建共享文件夹,需要输入共享文件所有者的账户名和密码才能访问(home版本不能这样操作,因为没有用户管理)
  8. iPhone开发证书破解
  9. Android有关selinux详解
  10. 文本生成评估指标详解及计算(BLEU)