reid-tta

The official implementation for IJCNN 2024 paper "Test-time Similarity Modification for Person Re-identification toward Temporal Distribution Shift."

https://github.com/kzkadc/reid-tta

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 1 DOI reference(s) in README
  • Academic publication links
    Links to: arxiv.org, ieee.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.1%) to scientific vocabulary

Keywords

deep-learning person-reid pytorch test-time-adaptation
Last synced: 6 months ago · JSON representation ·

Repository

The official implementation for IJCNN 2024 paper "Test-time Similarity Modification for Person Re-identification toward Temporal Distribution Shift."

Basic Info
  • Host: GitHub
  • Owner: kzkadc
  • License: other
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 766 KB
Statistics
  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Topics
deep-learning person-reid pytorch test-time-adaptation
Created 9 months ago · Last pushed 9 months ago
Metadata Files
Readme License Citation

README.md

Test-time Similarity Modification for Person Re-identification toward Temporal Distribution Shift (IJCNN 2024)

The official implementation for IJCNN 2024 paper "Test-time Similarity Modification for Person Re-identification toward Temporal Distribution Shift."
[Paper] [arXiv] [Poster]

Abstract Person re-identification (re-id), which aims to retrieve images of the same person in a given image from a database, is one of the most practical image recognition applications. In the real world, however, the environments that the images are taken from change over time. This causes a distribution shift between training and testing and degrades the performance of re-id. To maintain re-id performance, models should continue adapting to the test environment's temporal changes. Test-time adaptation (TTA), which aims to adapt models to the test environment with only unlabeled test data, is a promising way to handle this problem because TTA can adapt models instantly in the test environment. However, the previous TTA methods are designed for classification and cannot be directly applied to re-id. This is because the set of people's identities in the dataset differs between training and testing in re-id, whereas the set of classes is fixed in the current TTA methods designed for classification. To improve re-id performance in changing test environments, we propose TEst-time similarity Modification for Person re-identification (TEMP), a novel TTA method for re-id. TEMP is the first fully TTA method for re-id, which does not require any modification to pre-training. Inspired by TTA methods that refine the prediction uncertainty in classification, we aim to refine the uncertainty in re-id. However, the uncertainty cannot be computed in the same way as classification in re-id since it is an open-set task, which does not share person labels between training and testing. Hence, we propose re-id entropy, an alternative uncertainty measure for re-id computed based on the similarity between the feature vectors. Experiments show that the re-id entropy can measure the uncertainty on re-id and TEMP improves the performance of re-id in online settings where the distribution changes over time.

Overview

0. Environment

  • Prepare the datasets (Market-1501, MSMT17, PersonX) according to the OpenUnReID's document.
  • Install dependencies or build the docker image according to docker/Dockerfile.

bash $ docker build -t reid-tta docker --no-cache

1. Training the source model

  • Edit tools/source_pretrain/config.yaml appropriately, e.g., DATA_ROOT, LOGS_ROOT, TRAIN/datasets, etc.

```bash

train

$ docker run -it --rm -w $(pwd) -v $(pwd):$(pwd) --gpus device=0 -e GPUS=1 -e METHOD=sourcepretrain -e WORKDIR=sourcepretrain/market1501 reid-tta bash execdist_train.sh

test

$ docker run -it --rm -w $(pwd) -v $(pwd):$(pwd) --gpus device=0 -e GPUS=1 -e RESUME="../logs/sourcepretrain/market1501/checkpoint.pth" -e CONFIG="../logs/sourcepretrain/market1501/config.yaml" -e ARGS="TEST.LOADER.workerspergpu 1" reid-tta bash execdisttest.sh ```

2. Test-time adaptation

  • Our method is implemented upon OpenUnReID.
  • Edit tools/TEMP/config.yaml appropriately, e.g., DATA_ROOT, LOGS_ROOT, TRAIN/datasets, etc.

bash $ docker run -it --rm -w $(pwd) -v $(pwd):$(pwd) --gpus device=0 -e GPUS=1 -e METHOD=TEMP -e WORK_DIR=TEMP/market1501 reid-tta bash exec_dist_train.sh

  • The config file can be switched by specifying -e CONFIG=another_config.yaml.

Citation

If our work assists your research, please cite our paper:

@INPROCEEDINGS{adachi2025temp, author={Adachi, Kazuki and Enomoto, Shohei and Sasaki, Taku and Yamaguchi, Shin'ya}, booktitle={2024 International Joint Conference on Neural Networks (IJCNN)}, title={Test-time Similarity Modification for Person Re-identification toward Temporal Distribution Shift}, year={2024}, doi={10.1109/IJCNN60899.2024.10650113}}

Owner

  • Name: Kazuki Adachi
  • Login: kzkadc
  • Kind: user
  • Location: Japan
  • Company: NTT

Citation (CITATION.cff)

cff-version: 1.2.0
title: &title Test-time Similarity Modification for Person Re-identification toward Temporal Distribution Shift
message: If our work assists your research, please cite our paper.
authors: &authors
  - family-names: Adachi
    given-names: Kazuki
  - family-names: Enomoto
    given-names: Shohei
  - family-names: Sasaki
    given-names: Taku
  - family-names: Yamaguchi
    given-names: Shin'ya
preferred-citation:
  type: conference-paper
  authors: *authors
  title: *title
  year: 2024
  collection-title: Proceedings of 2024 International Joint Conference on Neural Networks (IJCNN)
  collection-type: proceedings
  identifiers:
    - description: IEEExplore
      type: url
      value: https://ieeexplore.ieee.org/document/10650113
    - description: arXiv
      type: url
      value: &arxiv https://arxiv.org/abs/2403.14114
    - description: DOI
      type: doi
      value: &doi 10.1109/IJCNN60899.2024.10650113
  url: *arxiv
  doi: *doi

GitHub Events

Total
  • Push event: 2
  • Create event: 1
Last Year
  • Push event: 2
  • Create event: 1

Committers

Last synced: 8 months ago

All Time
  • Total Commits: 3
  • Total Committers: 1
  • Avg Commits per committer: 3.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 3
  • Committers: 1
  • Avg Commits per committer: 3.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Kazuki Adachi k****y@g****m 3

Issues and Pull Requests

Last synced: 8 months ago

All Time
  • Total issues: 0
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 0
  • Total pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Dependencies

docker/Dockerfile docker
  • nvidia/cuda 12.6.3-cudnn-devel-ubuntu24.04 build
openunreid/core/metrics/rank_cylib/setup.py pypi
requirements.txt pypi
  • Cython *
  • easydict *
  • h5py *
  • matplotlib *
  • multiprocess *
  • numpy *
  • opencv-python *
  • pillow-simd *
  • pyyaml *
  • pyzmq *
  • requests *
  • scikit-learn *
  • scipy *
  • six *
  • tornado *
setup.py pypi