Giter Site home page Giter Site logo

oufuzhao / qsd Goto Github PK

View Code? Open in Web Editor NEW
3.0 1.0 0.0 729 KB

Code for Refining Uncertain Features with Self-Distillation for Face Recognition and Person Re-Identification

Home Page: https://ieeexplore.ieee.org/document/10415557

Python 100.00%

qsd's Introduction

Refining Uncertain Features with Self-Distillation for Face Recognition and Person Re-Identification

Description

This is the code repository for the paper "Refining Uncertain Features with Self-Distillation for Face Recognition and Person Re-Identification," under the person re-identification (Re-ID) application on the AGW baseline as an example.

Abstract

Deep recognition models aim to recognize targets with various quality levels in uncontrolled application circumstances, and typically low-quality images usually retard the recognition performance dramatically. As such, a straightforward solution is to restore low-quality input images as pre-processing during deployment. However, this scheme cannot guarantee that deep recognition features of the processed images are conducive to recognition accuracy. How deep recognition features of low-quality images can be refined during training to optimize recognition models has largely escaped research attention in the field of metric learning. In this paper, we propose a quality-aware feature refinement framework based on the dedicated quality priors obtained according to the recognition performance, and a novel quality self-distillation algorithm to learn recognition models. We further show that the proposed scheme can significantly boost the performance of the recognition model with two popular deep recognition tasks, including face recognition and person re-identification. Extensive experimental results provide sufficient evidence on the effectiveness and impressive generalization capability of the proposed framework. Moreover, our framework can be essentially integrated with existing state-of-the-art classification loss functions and network architectures without extra computation costs during deployment.

Environment

The code is built on the PyTorch framework, and the explicit environment configuration can be referred to in the file './pytorch_environment.yml'.

Training

  1. Dataset: Please contact the creator of the relevant data set to obtain the right to use it. For the CUHK03 dataset, you may need to convert the ".mat" to ".png".
  2. Quality Annotations: Obtain the quality annotations via the code.
  3. Baseline Model: The baseline AGW model can be downloaded from the official Google Disk
  4. QSD processing: a). Modify the 'PRETRAIN_PATH' and 'QA_LABELS' parameters in the configuration file './configs/AGW_QSD.yml'; b). Run './main.py' to train the QSD model, where we also provide the training log in './log/log.txt' for your information.

Inference

  1. You can download the QSD model trained on the CUHK03 dataset at the Google Disk.
  2. Modify the 'PRETRAIN_PATH' and 'WEIGHT' parameters in the configuration file './configs/AGW_QSD.yml'.
  3. Run './main.py'

Citing this Repository

If you find this code useful in your research, please consider citing us:

@ARTICLE{QSD2024,
    author={Ou, Fu-Zhao and Chen, Xingyu and Zhao, Kai and Wang, Shiqi and Wang, Yuan-Gen and Kwong, Sam},
    title={Refining Uncertain Features with Self-Distillation for Face Recognition and Person Re-Identification},
    journal={IEEE Transactions on Multimedia (TMM)},
    volume={},
    number={},
    pages={1-15},
    year={2024},
    doi={10.1109/TMM.2024.3358697}
}

qsd's People

Contributors

oufuzhao avatar

Stargazers

Xiaohao_Chen avatar Weixia Zhang avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.