CNNImageRetrieval is a MATLAB toolbox that implements the training and testing of the approach described in our ECCV 2016 paper:
CNN Image Retrieval Learns from BoW: Unsupervised Fine-Tuning with Hard Examples, Radenović F., Tolias G., Chum O., ECCV 2016 [arXiv]
This code implements:
- Training (fine-tuning) CNN for image retrieval
- Learning supervised whitening for CNN image representations
- Testing CNN image retrieval on Oxford5k and Paris6k datasets
In order to run this toolbox you will need:
- MATLAB (tested with MATLAB R2017a on Debian 8.1)
- MatConvNet MATLAB toolbox version 1.0-beta24
- All the rest (data + networks) is automatically downloaded with our scripts
Run the following script in MATLAB:
>> run [MATCONVNET_ROOT]/matlab/vl_setupnn;
>> run [CNNIMAGERETRIEVAL_ROOT]/setup_cnnimageretrieval;
>> train_cnnimageretrieval;
>> test_cnnimageretrieval;
If you use this work please cite our ECCV 2016 publication:
@inproceedings{RTC16,
title = {{CNN} Image Retrieval Learns from {BoW}: Unsupervised Fine-Tuning with Hard Examples},
author = {Radenovi{\'c}, F. and Tolias, G. and Chum, O.},
booktitle = {ECCV},
year = {2016}
}