All Projects â†’ CoinCheung â†’ SphereReID

CoinCheung / SphereReID

Licence: MIT license
My implementation of paper: SphereReID: Deep Hypersphere Manifold Embedding for Person Re-Identification

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to SphereReID

Attentive-WaveBlock
[TIP 2022] Pytorch implementation of "Attentive WaveBlock: Complementarity-enhanced Mutual Networks for Unsupervised Domain Adaptation in Person Re-identification and Beyond"
Stars: ✭ 17 (-56.41%)
Mutual labels:  person-reid
Person reid baseline pytorch
Pytorch ReID: A tiny, friendly, strong pytorch implement of object re-identification baseline. Tutorial 👉https://github.com/layumi/Person_reID_baseline_pytorch/tree/master/tutorial
Stars: ✭ 2,963 (+7497.44%)
Mutual labels:  person-reid
Fast Reid
SOTA Re-identification Methods and Toolbox
Stars: ✭ 2,287 (+5764.1%)
Mutual labels:  person-reid
Gluon Cv
Gluon CV Toolkit
Stars: ✭ 5,001 (+12723.08%)
Mutual labels:  person-reid
HiCMD
[CVPR2020] Hi-CMD: Hierarchical Cross-Modality Disentanglement for Visible-Infrared Person Re-Identification
Stars: ✭ 64 (+64.1%)
Mutual labels:  person-reid
AOS4ReID
Adversarially Occluded Samples for Person Re-identification, CVPR 2018
Stars: ✭ 32 (-17.95%)
Mutual labels:  person-reid
Cloth Change Person reID Paper List
Paper collection for cloth variation based person re-identification
Stars: ✭ 77 (+97.44%)
Mutual labels:  person-reid
Ranked Person ReID
Person reID
Stars: ✭ 91 (+133.33%)
Mutual labels:  person-reid
MetaBIN
[CVPR2021] Meta Batch-Instance Normalization for Generalizable Person Re-Identification
Stars: ✭ 58 (+48.72%)
Mutual labels:  person-reid

SphereReID

This is my implementation of SphereReID.

My working environment is python3.5.2, and my pytorch version is 0.4.0. If things are not going well on your system, please check you environment.

I only implement the network-D in the paper which is claimed to have highest performance of the four networks that the author proposed.

Get Market1501 dataset

Execute the script in the command line:

    $ sh get_market1501.sh

Train and Evaluate

  • To train the model, just run the training script:
    $ python train.py

This will train the model and save the parameters to the directory of res/.

  • To embed the gallery and query set with the trained model and compute the accuracy, directly run:
    $ python evaluate.py

This will embed the gallery and query set, and then compute cmc and mAP.

Notes:

Sadly, I am not able to reproduce the result merely with the method mentioned in the paper. So I add a few other tricks beyond the paper which help to boost the performance, these tricks includes:

  • During training phase, use random erasing augumentation method.

  • During embedding phase, aggregate the embeddings of the original pictures and those of their horizontal counterparts by computing the average of these embeddings, as done in MGN.

  • Change the stride of the last stage of resnet50 backbone from 2 to 1.

  • Adjust the total training epoch number to 150, and let the learning rate jump by a factor of 0.1 at epoch 90 and 130.

With these tricks, the rank-1 cmc and mAP of my implementation reaches 93.08 and 83.01.

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].