I often use this project, but I saw it abandoned and without a public repository on github. Also, part of the project remained unfinished for a long time. I implemented some of the author's ideas and decided to make the results publicly available.
pip install faster-coco-eval
Only 1 additional package needed opencv-python-headless
pip install faster-coco-eval[extra]
import faster_coco_eval
# Replace pycocotools with faster_coco_eval
faster_coco_eval.init_as_pycocotools()
from pycocotools.coco import COCO
from pycocotools.cocoeval import COCOeval
anno = COCO(str(anno_json)) # init annotations api
pred = anno.loadRes(str(pred_json)) # init predictions api (must pass string, not Path)
val = COCOeval(anno, pred, "bbox")
val.evaluate()
val.accumulate()
val.summarize()
This package wraps a facebook C++ implementation of COCO-eval operations found in the pycocotools package. This implementation greatly speeds up the evaluation time for coco's AP metrics, especially when dealing with a high number of instances in an image.
For our use case with a test dataset of 5000 images from the coco val dataset. Testing was carried out using the mmdetection framework and the eval_metric.py script. The indicators are presented below.
Visualization of testing colab_example.ipynb available in directory examples/comparison
Type | faster-coco-eval | pycocotools | Profit |
---|---|---|---|
bbox | 5.812 | 22.72 | 3.909 |
segm | 7.413 | 24.434 | 3.296 |
This library provides not only validation functions, but also error visualization functions. Including visualization of errors in the image.
You can study in more detail in the examples and Wiki.
Code examples for using the library are available on the Wiki
Available via link history.md
The original module was licensed with apache 2, I will continue with the same license. Distributed under the apache version 2.0 license, see license for more information.
If you use this benchmark in your research, please cite this project.
@article{faster-coco-eval,
title = {{Faster-COCO-Eval}: Faster interpretation of the original COCOEval},
author = {MiXaiLL76},
year = {2024}
}