Skip to main content

A General Toolbox for Identifying ObjectDetection Errors

Project description

A General Toolbox for Identifying Object Detection Errors

████████╗██╗██████╗ ███████╗
╚══██╔══╝██║██╔══██╗██╔════╝
   ██║   ██║██║  ██║█████╗  
   ██║   ██║██║  ██║██╔══╝  
   ██║   ██║██████╔╝███████╗
   ╚═╝   ╚═╝╚═════╝ ╚══════╝

An easy-to-use, general toolbox to compute and evaluate the effect of object detection and instance segmentation on overall performance. This is the code for our paper: TIDE: A General Toolbox for Identifying Object Detection Errors (ArXiv) [ECCV2020 Spotlight].

Check out our ECCV 2020 short video for an explanation of what TIDE can do:

TIDE Introduction

Installation

TIDE is available as a python package for python 3.6+ as tidecv. To install, simply install it with pip:

pip3 install tidecv

The current version is v1.0.1 (changelog).

Usage

TIDE is meant as a drop-in replacement for the COCO Evaluation toolkit, and getting started is easy:

from tidecv import TIDE, datasets

tide = TIDE()
tide.evaluate(datasets.COCO(), datasets.COCOResult('path/to/your/results/file'), mode=TIDE.BOX) # Use TIDE.MASK for masks
tide.summarize()  # Summarize the results as tables in the console
tide.plot()       # Show a summary figure. Specify a folder and it'll output a png to that folder.

This prints evaluation summary tables to the console:

-- mask_rcnn_bbox --

bbox AP @ 50: 61.80

                         Main Errors
=============================================================
  Type      Cls      Loc     Both     Dupe      Bkg     Miss
-------------------------------------------------------------
   dAP     3.40     6.65     1.18     0.19     3.96     7.53
=============================================================

        Special Error
=============================
  Type   FalsePos   FalseNeg
-----------------------------
   dAP      16.28      15.57
=============================

And a summary plot for your model's errors:

A summary plot

Jupyter Notebook

Check out the example notebook for more details.

Datasets

The currently supported datasets are COCO, LVIS, Pascal, and Cityscapes. More details and documentation on how to write your own database drivers coming soon!

Citation

If you use TIDE in your project, please cite

@inproceedings{tide-eccv2020,
  author    = {Daniel Bolya and Sean Foley and James Hays and Judy Hoffman},
  title     = {TIDE: A General Toolbox for Identifying Object Detection Errors},
  booktitle = {ECCV},
  year      = {2020},
}

Contact

For questions about our paper or code, make an issue in this github or contact Daniel Bolya. Note that I may not respond to emails, so github issues are your best bet.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tidecv-1.0.1.tar.gz (23.4 kB view hashes)

Uploaded Source

Built Distribution

tidecv-1.0.1-py3-none-any.whl (25.8 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page