Perfusion
Eulerian magnification · rPPG
Your webcam sees the faint colour shift in your skin each time your heart pushes blood through it. This reads that signal back out — a pulse waveform and beats-per-minute — and can amplify the colour change so you can watch it happen.
Runs entirely in your browser. No video, no image, nothing leaves this machine.
How it works. Each frame, the mean R/G/B over the measurement region becomes a time series. The POS projection (Wang et al., 2017) combines the colour channels to suppress motion and lighting drift; a periodogram over 42–210 BPM then picks out the dominant rhythm. The amplified view is a lightweight Eulerian Video Magnification (Wu et al., 2012): spatially pooled pixels, a temporal band-pass around the pulse band, scaled up and added back onto the frame.
How accurate is this? Under good conditions — even light, a still face — camera pulse methods agree with an ECG to within roughly one to a few BPM for resting heart rate . Accuracy falls off sharply with movement, dim or flickering light, and rapidly changing heart rates, and is measurably lower for darker skin tones — a physical limit of the camera, not just the code. Those published figures are also a ceiling for well-engineered pipelines; this is a deliberately minimal build with no face tracking, and it reports rate only, not beat-to-beat timing (so it says nothing reliable about HRV). A periodic artefact such as mains flicker can also produce a confident but false reading. Treat it as a curiosity and a teaching demo — not a medical device.
Methods this tool implements
Wu, H.-Y., Rubinstein, M., Shih, E., Guttag, J., Durand, F., & Freeman, W. T. (2012). Eulerian Video Magnification for Revealing Subtle Changes in the World. ACM Transactions on Graphics, 31 (4), 65. doi:10.1145/2185520.2185561 · MIT project page
Wang, W., den Brinker, A. C., Stuijk, S., & de Haan, G. (2017). Algorithmic Principles of Remote PPG — the POS method used for pulse extraction here. IEEE Transactions on Biomedical Engineering, 64 (7), 1479–1491. doi:10.1109/TBME.2016.2609282
de Haan, G., & Jeanne, V. (2013). Robust Pulse Rate From Chrominance-Based rPPG — the CHROM method referenced in the design. IEEE Transactions on Biomedical Engineering, 60 (10), 2878–2886. doi:10.1109/TBME.2013.2266196
Foundations of camera-based pulse measurement
Verkruysse, W., Svaasand, L. O., & Nelson, J. S. (2008). Remote plethysmographic imaging using ambient light — first showed a pulse can be recovered from ordinary video. Optics Express, 16 (26), 21434–21445. doi:10.1364/OE.16.021434
Poh, M.-Z., McDuff, D. J., & Picard, R. W. (2010). Non-contact, automated cardiac pulse measurements using video imaging and blind source separation. Optics Express, 18 (10), 10762–10774. doi:10.1364/OE.18.010762
On accuracy & its limits
Bibliographic details verified against publisher / DOI records. This is an independent educational demonstration, not affiliated with or endorsed by any of the authors or institutions cited.