IterDet: Iterative Scheme for Object Detection in Crowded Environments
This project hosts the code for implementing the IterDet scheme for object detection, as presented in our paper:
IterDet: Iterative Scheme for Object Detection in Crowded Environments
Danila Rukhovich, Konstantin Sofiiuk, Danil Galeev, Olga Barinova, Anton Konushin
Samsung AI Center Moscow
https://arxiv.org/abs/2005.05708
Installation
This implementation is based on mmdetection framework.
All our modifications against their `v2.0.0` release are listed below:
- configs/iterative/*
- demo/iterative/*
- mmdet/datasets/__init__.py
- mmdet/datasets/pipelines/transforms.py
- mmdet/datasets/pipelines/formating.py
- mmdet/datasets/crowd_human.py
- mmdet/models/dense_heads/anchor_head.py
- mmdet/models/dense_heads/rpn_head.py
- mmdet/models/roi_heads/bbox_heads/bbox_head.py
- mmdet/models/backbones/resnet.py
- mmdet/models/detectors/__init__.py
- mmdet/models/detectors/iterdet_faster_rcnn.py
- mmdet/models/detectors/iderdet_retinanet.py
- tools/convert_datasets/crowd_human.py
- tools/convert_datasets/toy.py
- tools/convert_datasets/wider_person.py
- requirements/runtime.txt
- docker/Dockerfile
Please refer to original install.md for installation.
Do not forget to update the original github repository link, and install requirements.txt.
For v1.2.0
release follow v1
branch.
Config files and tools for converting annotations to COCO format are provided for the following datasets:
- AdaptIS ToyV1 and ToyV2
- CrowdHuman
- WiderPerson
Get Started
Please see original getting_started.md for the basic usage examples. Iterdet configs can be used for train and test scripts:
bash tools/dist_train.sh configs/iterdet/crowd_human_full_faster_rcnn_r50_fpn_2x.py 8 --validate
bash tools/dist_test.sh configs/iterdet/crowd_human_full_faster_rcnn_r50_fpn_2x.py \
work_dirs/iterdet/crowd_human_full_faster_rcnn_r50_fpn_2x/latest.pth 8
Models
State-of-the-art models for all datasets are trained on top of Faster RCNN based on ResNet-50. Metrics are given for 2 iterations IterDet inference.
Dataset | Download Link | Recall | AP | mMR |
---|---|---|---|---|
AdaptIS Toy V1 | toy_v1.pth | 99.60 | 99.25 | |
AdaptIS Toy V2 | toy_v2.pth | 99.29 | 99.00 | |
CrowdHuman (full) | crowd_human_full.pth | 95.80 | 88.08 | 49.44 |
CrowdHuman (visible) | crowd_human_visible.pth | 91.63 | 85.33 | 55.61 |
WiderPerson | wider_person.pth | 97.15 | 91.95 | 40.78 |
Example Detections Examples of IterDet results on ToyV1, ToyV2, CrowdHuman (with full body annotataions), and WiderPerson. The boxes found on the first and second iterations are marked in green and yellow respectively.
License
The code is released under the MPL 2.0 License. MPL is a copyleft license that is easy to comply with. You must make the source code for any of your changes available under MPL, but you can combine the MPL software with proprietary code, as long as you keep the MPL code in separate files.
Citation
If you find this work useful for your research, please cite our paper:
@inproceedings{rukhovich2021iterdet,
title={IterDet: Iterative Scheme for Object Detection in Crowded Environments},
author={Danila Rukhovich, Konstantin Sofiiuk, Danil Galeev, Olga Barinova, Anton Konushin},
booktitle={Structural, Syntactic, and Statistical Pattern Recognition: Joint IAPR International Workshops, S+ SSPR 2020, Padua, Italy, January 21--22, 2021, Proceedings},
pages={344},
organization={Springer Nature}
}