Vital signs from a webcam, computed entirely on your device

rPPG Diagnostic Console extracts a pulse signal from tiny colour changes in the skin of your face — the same principle as a fingertip pulse oximeter, without contact. The camera feed never leaves your browser: there is no server, no upload and no account.

You will be asked for camera permission and shown a notice before anything is captured.

What it measures — and how far to trust it

Each metric is listed with its actual method and its actual limitation. Where something does not work yet, it says so.

  • Heart rate

    Plane-Orthogonal-to-Skin projection over forehead and cheek regions, band-passed 0.7–3.5 Hz, peak-picked from a 1024-point FFT.

    Validated against synthetic signals at 48, 72, 101 and 150 BPM.

  • Heart-rate variability

    SDNN over detected beat intervals, with ectopic rejection.

    Sensitive to beat-timing jitter; treat as indicative.

  • Drowsiness

    Eye aspect ratio, PERCLOS over a 30-second window and a micro-sleep alarm.

    Derived from face-mesh landmarks, not from the pulse signal.

  • Stress

    Autonomic load estimated from HRV, fused with facial-tension blendshapes.

    A heuristic over population constants, not a clinical measure.

  • Liveness

    Signal-to-noise check in the cardiac band.

    Not validated against presentation attacks. It cannot reject a screen replay.

  • Respiration

    0.13–0.5 Hz band from a decimated 30-second window.

    Correct on synthetic input; unreliable on live subjects. Under investigation.

What you need

  • · A webcam and a browser that supports it. No install.
  • · Even, reasonably bright lighting on your face.
  • · To sit still for about ten seconds while the buffer fills.