SiNC-rPPG
Nicht kontrastives, unbeaufsichtigtes Lernen physiologischer Signale aus Videos
Highlight-Paper auf der Konferenz zu Computer Vision und Mustererkennung (CVPR) 2023
Papier | Video
Abbildung 1: Übersicht über das SiNC-Framework für rPPG im Vergleich zu traditionellem überwachtem und unüberwachtem Lernen. Überwachte und kontrastive Verluste nutzen Distanzmetriken zur Grundwahrheit oder anderen Stichproben. Unser Framework wendet den Verlust direkt auf die Vorhersage an, indem es das Frequenzspektrum formt und die Varianz über eine Reihe von Eingaben fördert. Leistung außerhalb der Bandgrenzen wird bestraft, um Invarianzen gegenüber irrelevanten Frequenzen zu lernen. Es wird empfohlen, dass die Leistung innerhalb der Bandgrenzen nur spärlich in der Nähe der Spitzenfrequenz verteilt wird.
Inhalt
- Der Vorverarbeitungscode für den PURE-Datensatz befindet sich in src/preprocessing/PURE
- Der Trainingscode befindet sich in src/train.py
- Der Testcode befindet sich in src/test.py
- Die Experimentkonfigurationsdatei befindet sich in src/args.py
- Verlustfunktionen befinden sich in src/utils/losses.py
- Modellarchitekturen befinden sich in src/models/
- Datenlader befinden sich in src/datasets/
- TODO: Vorverarbeitungscode für UBFC-rPPG, DDPM und HKBU-MARs.
Installation
Abhängigkeiten mit Python3 installieren:
pip install -r requirements.txt
Laufen
1.) Um die Daten für das Training vorzubereiten, laden Sie PURE herunter und befolgen Sie die Schritte in src/preprocessing/PURE
2.) Trainieren Sie mehrere Modelle mit:
./scripts/train_PURE.sh
3.) Testen Sie die Modelle mit:
./scripts/test_PURE.sh
Notizen
Wenn neue Datenlader hinzugefügt werden, stellen Sie sicher, dass Sie diese zu src/datasets/utils.py hinzufügen, damit sie über ein entsprechendes Befehlszeilenargument ausgewählt werden können. Sie können datensatzübergreifende Experimente durchführen, indem Sie neue Datensätze zu Zeile 30 in src/test.py hinzufügen.
Zitat
Wenn Sie Teile unseres Codes oder unserer Daten verwenden, zitieren Sie bitte unser Dokument.
@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},
}