How bughht/realtime-rppg-application works
This is a desktop webcam-based remote photoplethysmography application that estimates and displays heart rate from facial skin-color changes. The main workflow is webcam capture, landmark-based forehead/cheek ROI extraction, RGB feature buffering, selectable pulse-signal extraction, filtering and spectral BPM estimation, then confidence-weighted display. The README also documents four extraction methods and signal, spectrum, histogram, and ROI-mask views. Wiring is based on the README and sampled source; omitted source leaves some internal call details uncertain.
Main entry points: main.py Application window · face2series.py Capture and ROIs · series2rPPG.py Signal processor · mainwindow.py Window controls
Components 16
Desktop interface
- Application window
main.py - Window controls
mainwindow.py - Live plots and readout
main.py
Face acquisition
- Capture and ROIs
face2series.py - Landmark model
data/shape_predictor_81_face_landmarks.dat - ROI RGB features
face2series.py
Pulse processing
- Signal processor
series2rPPG.py - GREEN method
series2rPPG.py - GREEN-RED method
series2rPPG.py - CHROM method
series2rPPG.py - PBV method
series2rPPG.py - Detrend and filter
series2rPPG.py
Heart-rate output
- Spectrum and BPM
main.py - ROI confidence
main.py
Other components
- Operator
- Webcam
Connections 18
- Operator → Application window: operates
- Window controls → Application window: provides controls
- Application window → Signal processor: starts processing
- Signal processor → Capture and ROIs: initializes capture
- Webcam → Capture and ROIs: supplies frames
- Capture and ROIs → Landmark model: detects landmarks
- Capture and ROIs → ROI RGB features: extracts ROI features
- ROI RGB features → Application window: provides buffered data
- Application window → GREEN method: dispatches selection
- Application window → GREEN-RED method: dispatches selection
- Application window → CHROM method: dispatches selection
- Application window → PBV method: dispatches selection
- Application window → Detrend and filter: requests detrending
- Application window → Spectrum and BPM: filters and transforms
- Spectrum and BPM → ROI confidence: provides ROI BPM
- ROI confidence → Live plots and readout: weights and reports
- Application window → Live plots and readout: updates plots
- Live plots and readout → Operator: displays results