Home

Awesome

Zero-Shot Object Detection

This code is the testing implementation of the following work:

Shafin Rahman, Salman Khan, and Fatih Porikli. "Zero-Shot Object Detection: Learning to Simultaneously Recognize and Localize Novel Concepts." arXiv preprint arXiv:1803.06049 (2018). (Project Page)

ProblemFigure

Requirements

This code has also been tested with Python 3.6, Keras 2.0.8, OpenCV 3.4.0 and on Ubuntu and Windows.

Files

sample_input.txt: a sample input file containing test image paths detect.py: to perform zero-shot detection task using sample_input.txt keras_frcnn: directory containing supporting code of the model Dataset: directory containing sample input and output Model: directory containing pre-trained model and configuration file ImageNet2017

Running instruction

To run zero-shot detection on sample input kept in Dataset/Sampleinput, simply run detect.py after installing all dependencies like Keras, Tensorflow, OpenCV and placing the pre-trained model in the Model directory. This code will generate the output files for each input image to Dataset/Sampleoutput.

Notes on ImageNet experiments

The resources required to reproduce results of ImageNet related experiments are kept in the directory ImageNet2017. All the images are from ILSVRC2017_DET.tar.gz which can be obtained from ImageNet detection challenge 2017 website. For both training and testing of this paper, we have used images from /ILSVRC/Data/DET/train and /ILSVRC/Data/DET/val of the zipped arxiv ILSVRC2017_DET.tar.gz.

Trubleshooting

Citation

If you use this code and model for your research, please consider citing:

@article{rahman2018zeroshot, 
title={Zero-Shot Object Detection: Learning to Simultaneously Recognize and Localize Novel Concepts}, 
author={Rahman, Shafin and Khan, Salman and Porikli, Fatih}, 
journal={Asian Conference on Computer Vision}, 
year={2018} 
}

Acknowledgment

We thank Yann Henon for the following implementation of Faster-RCNN: keras-frcnn