All Projects → SHI-Labs → Self Similarity Grouping

SHI-Labs / Self Similarity Grouping

Self-similarity Grouping: A Simple Unsupervised Cross Domain Adaptation Approach for Person Re-identification (ICCV 2019, Oral)

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Self Similarity Grouping

Learning Via Translation
Image-Image Domain Adaptation with Preserved Self-Similarity and Domain-Dissimilarity for Person Re-identification (https://arxiv.org/pdf/1711.07027.pdf). CVPR2018
Stars: ✭ 202 (+18.13%)
Mutual labels:  domain-adaptation, person-reidentification
Eanet
EANet: Enhancing Alignment for Cross-Domain Person Re-identification
Stars: ✭ 380 (+122.22%)
Mutual labels:  domain-adaptation, person-reidentification
Generalizing Reid
Repository of the paper "Generalizing Person Re-Identification by Camera-Aware Instance Learning and Cross-Domain Mixup"
Stars: ✭ 28 (-83.63%)
Mutual labels:  domain-adaptation, person-reidentification
Monoculardepth Inference
Inference pipeline for the CVPR paper entitled "Real-Time Monocular Depth Estimation using Synthetic Data with Domain Adaptation via Image Style Transfer" (http://www.atapour.co.uk/papers/CVPR2018.pdf).
Stars: ✭ 115 (-32.75%)
Mutual labels:  domain-adaptation
Mfr
Learning Meta Face Recognition in Unseen Domains, CVPR, Oral, 2020
Stars: ✭ 127 (-25.73%)
Mutual labels:  domain-adaptation
Attribute Aware Attention
[ACM MM 2018] Attribute-Aware Attention Model for Fine-grained Representation Learning
Stars: ✭ 143 (-16.37%)
Mutual labels:  person-reidentification
Transferlearning Tutorial
《迁移学习简明手册》LaTex源码
Stars: ✭ 2,122 (+1140.94%)
Mutual labels:  domain-adaptation
Iros20 6d Pose Tracking
[IROS 2020] se(3)-TrackNet: Data-driven 6D Pose Tracking by Calibrating Image Residuals in Synthetic Domains
Stars: ✭ 113 (-33.92%)
Mutual labels:  domain-adaptation
Cbst
Code for <Domain Adaptation for Semantic Segmentation via Class-Balanced Self-Training> in ECCV18
Stars: ✭ 146 (-14.62%)
Mutual labels:  domain-adaptation
Naic person reid dmt
This is Top 3 Code for the Person ReID Compitition of NAIC
Stars: ✭ 137 (-19.88%)
Mutual labels:  person-reidentification
Domain Adaptive Faster Rcnn Pytorch
Domain Adaptive Faster R-CNN in PyTorch
Stars: ✭ 135 (-21.05%)
Mutual labels:  domain-adaptation
Dise Domain Invariant Structure Extraction
Pytorch Implementation -- All about Structure: Adapting Structural Information across Domains for Boosting Semantic Segmentation, CVPR 2019
Stars: ✭ 129 (-24.56%)
Mutual labels:  domain-adaptation
Cdcl Human Part Segmentation
Repository for Paper: Cross-Domain Complementary Learning Using Pose for Multi-Person Part Segmentation (TCSVT20)
Stars: ✭ 143 (-16.37%)
Mutual labels:  domain-adaptation
Generate to adapt
Implementation of "Generate To Adapt: Aligning Domains using Generative Adversarial Networks"
Stars: ✭ 120 (-29.82%)
Mutual labels:  domain-adaptation
Person Reid Gan Pytorch
A Pytorch Implementation of "Unlabeled Samples Generated by GAN Improve the Person Re-identification Baseline in vitro"(ICCV17)
Stars: ✭ 147 (-14.04%)
Mutual labels:  person-reidentification
Opencompounddomainadaptation Ocda
Pytorch implementation for "Open Compound Domain Adaptation" (CVPR 2020 ORAL)
Stars: ✭ 114 (-33.33%)
Mutual labels:  domain-adaptation
Reid Mgn
Reproduction of paper: Learning Discriminative Features with Multiple Granularities for Person Re-Identification
Stars: ✭ 145 (-15.2%)
Mutual labels:  person-reidentification
Combogan
Stars: ✭ 134 (-21.64%)
Mutual labels:  domain-adaptation
Shot
code released for our ICML 2020 paper "Do We Really Need to Access the Source Data? Source Hypothesis Transfer for Unsupervised Domain Adaptation"
Stars: ✭ 134 (-21.64%)
Mutual labels:  domain-adaptation
Fast Reid
SOTA Re-identification Methods and Toolbox
Stars: ✭ 2,287 (+1237.43%)
Mutual labels:  person-reidentification

Self-similarity Grouping: A Simple Unsupervised Cross Domain Adaptation Approach for Person Re-identificatio(SSG)

Implementation of the paper Self-similarity Grouping: A Simple Unsupervised Cross Domain Adaptation Approach for Person Re-identification, ICCV 2019 (Oral)

The SSG approach proposed in the paper is simple yet effective and achieves the state-of-arts on three re-ID datasets: Market1501, DukdMTMC and MSMT17.

Illustration of the Self-similarity Grouping.

Running the experiments

Step 1: Train on source dataset

Run source_train.py via

python source_train.py \
    --dataset <name_of_source_dataset>\
    --resume <dir_of_source_trained_model>\
    --data_dir <dir_of_source_data>\
    --logs_dir <dir_to_save_source_trained_model>

To replicate the results in the paper, you can download pre-trained models on Market1501, DukeMTMC and MSMT17 from GoogleDrive. There maybe some bugs in source_train.py, please refer to DomainAdaptiveReID to obtained the pretrained model or just use the pretrained model provided by us. And you can find all models after adaptation from GoogleDrive. Our models can be trained with PyTorch 0.4.1 or PyTorch 1.0.

Step 2: Run Self-similarity Grouping

python selftraining.py \
    --src_dataset <name_of_source_dataset>\
    --tgt_dataset <name_of_target_dataset>\
    --resume <dir_of_source_trained_model>\
    --iteration <number of iteration>\
    --data_dir <dir_of_source_target_data>\
    --logs_dir <dir_to_save_model_after_adaptation>\
    --gpu-devices <gpu ids>\
    --num-split <number of split>

Or just command

./run.sh

Step 3: Run Clustering-guided Semi-Supervised Training

python semitraining.py \
    --src_dataset <name_of_source_dataset>\
    --tgt_dataset <name_of_target_dataset>\
    --resume <dir_of_source_trained_model>\
    --iteration <number of iteration>\
    --data_dir <dir_of_source_target_data>\
    --logs_dir <dir_to_save_model_after_adaptation>\
    --gpu-devices <gpu ids>\
    --num-split <number of split>\
    --sample <sample method>

Results

Step 1: After training on source dataset

Source Dataset Rank-1 mAP
DukeMTMC 82.6 70.5
Market1501 92.5 80.8
MSMT17 73.6 48.6

Step 2: After adaptation

SRC --> TGT Before Adaptation Adaptation by SSG Adaptation by SSG++
Rank-1 mAP Rank-1 mAP Rank-1 mAP
Market1501 --> DukeMTMC 30.5 16.1 73.0 53.4 76.0 60.3
DukeMTMC --> Market1501 54.6 26.6 80.0 58.3 86.2 68.7
Market1501 --> MSMT17 8.6 2.7 31.6 13.2 37.6 16.6
DukeMTMC --> MSMT17 12.38 3.82 32.2 13.3 41.6 18.3

Issues

  • The pre-trained model is trained with Pytorch 0.4.1, there may be some error when loading it by Pytorch with higher version. This link should be helpful
  • The source_training.py codes may have some bugs, I suggest you directly using our pretrained baseline model. And I will fix the bugs soon.
  • To reproduce results listed in paper, I recommend to use two GPUs with batch size of 32. And in general, the experimental results may have be a little different from the results listed in paper (+/-1%).

Acknowledgement

Our code is based on open-reid and DomainAdaptiveReID.

Citation

If you find the code helpful in your resarch or work, please cite the following paper.

@InProceedings{Fu_2019_ICCV,
author = {Fu, Yang and Wei, Yunchao and Wang, Guanshuo and Zhou, Yuqian and Shi, Honghui and Huang, Thomas S.},
title = {Self-Similarity Grouping: A Simple Unsupervised Cross Domain Adaptation Approach for Person Re-Identification},
booktitle = {The IEEE International Conference on Computer Vision (ICCV)},
month = {October},
year = {2019}
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].