tinyvision / SOLIDER-REID

MIT License
67 stars 12 forks source link

SOLIDER on [Person Re-identification]

PWC PWC

This repo provides details about how to use SOLIDER pretrained representation on person re-identification task. We modify the code from TransReID, and you can refer to the original repo for more details.

Installation and Datasets

We use python version 3.7, PyTorch version 1.7.1, CUDA 10.1 and torchvision 0.8.2. More details of installation and dataset preparation can be found in TransReID-SSL.

Prepare Pre-trained Models

You can download models from SOLIDER, or use SOLIDER to train your own models. Before training, you should convert the models first.

python convert_model.py path/to/SOLIDER/log/lup/swin_tiny/checkpoint.pth path/to/SOLIDER/log/lup/swin_tiny/checkpoint_tea.pth

Training

We utilize 1 GPU for training. Please modify the MODEL.PRETRAIN_PATH, DATASETS.ROOT_DIR and OUTPUT_DIR in the config file.

sh run.sh

Test

sh runtest.sh

Performance

Method Model MSMT17
(w/o RK)
Market1501
(w/o RK)
MSMT17
(with RK)
Market1501
(with RK)
SOLIDER Swin Tiny 67.4/85.9
(Link,Log)
91.6/96.1
(Link,Log)
81.5/89.2 95.3/96.6
SOLIDER Swin Small 76.9/90.8
(Link,Log)
93.3/96.6
(Link,Log)
86.5/91.7 95.4/96.4
SOLIDER Swin Base 77.1/90.7
(Link,Log)
93.9/96.9
(Link,Log)
86.5/91.7 95.6/96.7

Citation

If you find this code useful for your research, please cite our paper

@inproceedings{chen2023beyond,
  title={Beyond Appearance: a Semantic Controllable Self-Supervised Learning Framework for Human-Centric Visual Tasks},
  author={Weihua Chen and Xianzhe Xu and Jian Jia and Hao Luo and Yaohua Wang and Fan Wang and Rong Jin and Xiuyu Sun},
  booktitle={The IEEE/CVF Conference on Computer Vision and Pattern Recognition},
  year={2023},
}