SiNC-rPPG
Aprendizagem não-contrastiva não supervisionada de sinais fisiológicos de vídeo
Artigo de destaque na Conferência sobre Visão Computacional e Reconhecimento de Padrões (CVPR) 2023
Papel | Vídeo
![](https://images.downcodes.com/uploads/20241208/img_675586098f76c30.png)
Figura 1: Visão geral da estrutura SiNC para rPPG em comparação com a aprendizagem tradicional supervisionada e não supervisionada. Perdas supervisionadas e contrastivas usam métricas de distância até a verdade do terreno ou outras amostras. Nossa estrutura aplica a perda diretamente à previsão, moldando o espectro de frequência e incentivando a variação em um lote de entradas. A potência fora dos limites de banda é penalizada para aprender invariâncias para frequências irrelevantes. A energia dentro dos limites de banda é incentivada a ser distribuída de forma esparsa perto da frequência de pico.
Conteúdo
- O código de pré-processamento para o conjunto de dados PURE está em src/preprocessing/PURE
- O código de treinamento está em src/train.py
- O código de teste está em src/test.py
- O arquivo de configuração do experimento está em src/args.py
- As funções de perda estão em src/utils/losses.py
- As arquiteturas de modelo estão em src/models/
- Os carregadores de dados estão em src/datasets/
- TODO: código de pré-processamento para UBFC-rPPG, DDPM e HKBU-MARs.
Instalação
Instale dependências com python3:
pip install -r requirements.txt
Para correr
1.) Para preparar os dados para treinamento, baixe o PURE e siga as etapas em src/preprocessing/PURE
2.) Treine vários modelos com:
./scripts/train_PURE.sh
3.) Teste os modelos com:
./scripts/test_PURE.sh
Notas
Quando novos dataloaders forem adicionados, certifique-se de adicioná-los a src/datasets/utils.py para que possam ser selecionados a partir de um argumento de linha de comando correspondente. Você pode executar experimentos entre conjuntos de dados adicionando novos conjuntos de dados à linha 30 em src/test.py.
Citação
Se você usar qualquer parte de nosso código ou dados, cite nosso artigo.
@inproceedings{speth2023sinc,
title={Non-Contrastive Unsupervised Learning of Physiological Signals from Video},
author={Speth, Jeremy and Vance, Nathan and Flynn, Patrick and Czajka, Adam},
booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
year={2023},
}