Please note that I am no longer mantaining this code, and I discourage you from using Matlab.
You can run stacked quantizers and many other quantization methods in Julia using Rayuela.jl
This is the code for the paper
Julieta Martinez, Holger H. Hoos and James J. Little: Stacked Quantizers for Compositional Vector Compression, available at: http://arxiv.org/abs/1411.2173
This code was mostly written by Julieta Martinez.
The demo requires you to download the convnet1m-128
dataset, and put it into a /data
folder at the top directory.
- The datasets for training, queries and database are available in: features_m_128.mat
- The ground truth is available in: features_m_128_gt.mat
SIFT1M
and GIST1M
can be downloaded from INRIA.
For a demonstration of approximate nearest neighbour search
- Compile search utilities by running
compile.m
from the top directory. - Run
demo.m
from the top directory as well.
If you find this code useful, please consider citing our paper:
Julieta Martinez, Holger H. Hoos, and James J. Little.: Stacked Quantizers for Compositional Vector Compression. arXiv preprint arXiv:1411.2173 (2014).
- The code under
/OPQ
was taken from Cartesian k-means by Mohammad Norouzi - The code that draws the beautiful
recall@N
plots under/SQ/util/eval_recall_vs_sel.m
is by Kaiming He