No description, website, or topics provided.
Switch branches/tags
Nothing to show
Clone or download
Latest commit 8c48ddd Oct 19, 2017
Failed to load latest commit information.
data first commit Oct 19, 2017
extract_feature_map update readme Oct 19, 2017
images update readme Oct 19, 2017
tools first commit Oct 19, 2017
utils first commit Oct 19, 2017
README Update README Oct 19, 2017 update readme Oct 19, 2017
main.m first commit Oct 19, 2017
opt.m first commit Oct 19, 2017

Selective Deep Convolutional Features for Image Retrieval

alt text

This is the Matlab implements of our methods accepted in ACM MM 2017. [pdf]

This code implements

  1. The framework of produce global image representation
  • Pre-processing: PCA + l2-normalize
  • Masking scheme: MAX-mask/SUM-mask
  • Embedding: Triangular Embedding (Temb) [1] and Fast Function Approximation Embedding (F-FAemb) [2]
  • Aggregating: Democractic pooling [1]
  • Post-processing: rotation and whitening, Power-law normalization.
  1. Extract conv. feature of images

[1] Hervé Jégou and Andrew Zisserman. 2014. Triangulation embedding and democratic aggregation for image search. In CVPR.

[2] Thanh-Toan Do and Ngai-Man Cheung. 2017. Embedding based on function approximation for large scale image search. TPAMI (2017).


 author    = {Tuan Hoang and Do, Thanh-Toan and Dang-Khoa Le Tan and Cheung, Ngai-Man},
 title     = {Selective Deep Convolutional Features for Image Retrieval},
 bookTitle = {ACM Multimedia},
 year      = {2017},
 month     = {Oct},


The code include:


  1. Modify the parameters in 'opt.m' file appropriately.
  2. Run the following script

Files and subfolders

Filename Description
README This file
main.m The main script for running whole process
opt.m The script contains all parameter setting.
extract_feature_map/ Contains files for extracting conv. features. See the README file inside this folder for more information.
tools/make.m Script to build the mex file for faemb and temb methods.
tools/democratic/ contains matlab script files for democratic pooling methods.
tools/faemb/ contains matlab script files for F-FAemb method.
tools/faemb_mex/ contains mex files for F-FAemb method.
tools/triemb/ contains matlab script/mex files for Triangular Embedding method.
tools/evaluation/ contains matlab script files for evaluation.
tools/yael/ contains the yael library
utils ---
utils/embedding.m Process embedding and aggregating
utils/apply_mask.m Compute and then apply mask on the conv. features.
utils/crop_qim.m Crop query images.
utils/learn_rn.m Learn projection (PCA/whitening) matrix
utils/vecpostproc.m Apply post-processing
data/ contains ground truth and data. In case you may want to retrain, please download the provided data and put them in this folder
data/workdir/ contains output files (i.e., parameters, embedded features)