Code for our ECCV 2018 work.
Switch branches/tags
Nothing to show
Clone or download
Latest commit 8d5b826 Sep 19, 2018
Failed to load latest commit information.
data/example_data add data Sep 5, 2018
experiments part of mediator Sep 10, 2018
source raise notimplemented Sep 19, 2018
.gitignore fix Sep 5, 2018
LICENSE Initial commit Sep 5, 2018 notice Sep 10, 2018 voting release Sep 5, 2018

Implementation of "Consensus-Driven Propagation in Massive Unlabeled Data for Face Recognition" (CDP)


Modules for "Mediator" will be released soon.


Xiaohang Zhan, Ziwei Liu, Junjie Yan, Dahua Lin, Chen Change Loy, "Consensus-Driven Propagation in Massive Unlabeled Data for Face Recognition", ECCV 2018

Project Page: link


Please use Python3, as we cannot guarantee its compatibility with python2. The version of PyTorch we use is 0.3.1. Other depencencies:

pip install nmslib

Before Start

  1. Prepare your data list. If you want to evaluate the performance of CDP, copy the meta file as well. The example of list.txt and meta.txt can be found in data/example_data/.
mkdir data/your_data
cp /somewhere/list_file data/your_data/list.txt
cp /somewhere/meta_file data/your_data/meta.txt # optional
  1. Prepare your feature files. Extract face features corresponding to the list.txt with your trained face models, and save it as binary files via feature.tofile("xxx.bin") in numpy. Finally link them to data/data_name/features/model_name.bin.
mkdir data/data_name/features
ln -s /somewhere/feature.bin data/your_data/features/resnet18.bin # for example

Although CDP can handle single-model case, we recommend more than one models to obtain better performance.

  1. Prepare the config file. Please refer to the examples in experiments/


python -u --config experiments/example_vote/config.yaml


python -u --config experiments/example_mediator/config.yaml


  title={Consensus-Driven Propagation in Massive Unlabeled Data for Face Recognition},
  author={Zhan, Xiaohang and Liu, Ziwei and Yan, Junjie and Lin, Dahua and Change Loy, Chen},
  booktitle={Proceedings of the European Conference on Computer Vision (ECCV)},