How it works

Three signals, one handset

Every VitalVein measurement starts as light or motion. A camera watching skin can see blood move through it; an accelerometer resting on a chest can feel the heart push against it. What follows is how each of those becomes a number.

Signal 01 · Contact

Finger photoplethysmography

The user places a fingertip over the rear camera and flash for about sixty seconds. The flash pushes light through the tissue; the camera records what comes back.

With every heartbeat, a pressure wave pushes a slug of blood into the capillary bed under the fingertip. Blood absorbs light, so more blood means less light returning to the sensor. The change is far too small to see, but it is large enough to measure: averaging the red channel across the frame each time it arrives produces a value that rises and falls in step with the pulse. Plot those values against time and you have a photoplethysmogram — the same class of waveform a clinical pulse oximeter produces, captured with parts the phone already has.

Because the fingertip is in direct contact and the flash provides consistent illumination, this is the cleanest of the three signals and the foundation for most of what VitalVein estimates.

Capture sequence

  1. Cover the lens

    Fingertip flat over both camera and flash, firm enough to seal out ambient light but not so hard that it restricts flow.

  2. Hold for ~60 seconds

    A live quality meter tracks perfusion and motion. If the trace degrades, the app says so while there is still time to fix it.

  3. Extract the waveform

    Per-frame channel averages become a time series, band-pass filtered to the plausible cardiac range and detrended.

  4. Estimate and score

    Peak detection yields beat intervals; morphology and channel ratios feed the remaining estimates, each with a confidence score.

Signal 02 · Contact-free

Remote PPG from facial video

The user holds the front camera up to their face. No contact, no flash — the app pulls the same pulsatile signal out of ordinary video.

The physics is identical to finger PPG, only fainter. Facial skin flushes and fades by a fraction of a percent with each beat, buried under lighting changes, head motion, and sensor noise many times larger than the signal itself. Recovering it means tracking the face across frames, sampling regions where perfusion is strongest and motion artefacts weakest — forehead and cheeks — and combining colour channels so that the shared pulsatile component reinforces while uncorrelated noise cancels.

This mode builds on the Google Research approach to passive heart monitoring from video. It is more sensitive to conditions than the contact method: it wants even lighting and a reasonably still subject. In exchange it needs nothing to touch the phone at all, which matters for infection control, for children, and for anyone who simply will not hold still on a lens for a minute.

What makes it hard

Lighting driftAmbient change dwarfs the pulse signal
Head motionRegion tracking must follow the face frame to frame
Skin tone variationMelanin changes how much signal reaches the sensor
Compression artefactsVideo encoding can quantise the signal away

VitalVein processes uncompressed frames directly from the capture buffer rather than recorded video, which removes the last of these entirely.

Signal 03 · Optional

Chest seismocardiography

Lay the phone flat on the chest and the accelerometer captures the mechanical motion of each heartbeat.

A heart does not only produce an electrical trace — it produces movement. Valve closures and the ejection of blood into the aorta shake the chest wall by a few micrometres, and a modern smartphone accelerometer is sensitive enough to resolve it. The resulting seismocardiogram has characteristic landmarks per beat, including the aortic valve opening, which is what makes it useful here.

On its own, an SCG is a second opinion on heart rate. Paired with a simultaneous finger PPG, it becomes something more: the delay between the mechanical event at the chest and the arrival of the pressure wave at the fingertip is the pulse transit time. Transit time falls as arteries stiffen and as pressure rises, which is the relationship VitalVein's blood pressure estimate is built on.

Pulse transit time

The interval between the heart's mechanical contraction and the pulse reaching the finger. Shorter transit implies a stiffer, higher-pressure arterial tree.

t₀ — chest (SCG)Aortic valve opens, chest wall moves
t₁ — finger (PPG)Pressure wave reaches the capillary bed
PTT = t₁ − t₀Correlated with arterial stiffness and BP
The pipeline

From raw frames to a number you can read

The same four stages run for every capture mode, entirely on the handset.

  1. Acquisition

    Frames or accelerometer samples arrive at a fixed rate with hardware timestamps. Exposure and white balance are locked so that automatic camera adjustments cannot be mistaken for physiology — an unlocked auto-exposure will happily invent a heartbeat that isn't there.

  2. Conditioning

    The raw series is detrended to remove slow baseline wander from breathing and drift, then band-pass filtered to the plausible cardiac range of roughly 0.7–4 Hz (about 42–240 bpm). Motion segments are identified and excluded rather than smoothed over.

  3. Feature extraction

    Systolic peaks and foot points are located, giving beat-to-beat intervals. Waveform morphology — upstroke slope, the dicrotic notch, the area under each pulse — and the ratio between colour channels supply the features the estimators need.

  4. Estimation and confidence

    Features map to vital signs through calibrated models. Every result carries a confidence score derived from signal quality, beat-interval consistency, and how far the inputs sit from the range the model was calibrated over. A low-confidence reading is surfaced as low-confidence, not quietly rounded into something reassuring.

All four stages execute locally. No frame, waveform, or intermediate value is transmitted anywhere — see Privacy for what that means in practice.

In practice

Getting a reading worth trusting

Signal quality is almost entirely determined in the first ten seconds of a capture.

Stay still and warm

Cold fingers perfuse poorly and produce a shallow trace. Rest your hand on a surface; motion is the single largest source of failed captures.

Cover, don't press

Enough contact to block stray light, light enough not to occlude the vessels you are trying to measure. The quality meter will tell you when you have it.

Sit for a minute first

Resting values are only resting values if you have actually rested. Readings taken straight after climbing stairs describe the stairs, not you.

Repeat before you conclude

One reading is a data point; three across a week is a pattern. VitalVein keeps them all precisely so you can tell the difference.

See what each signal produces

Five vital signs, where each comes from, and how far we would trust it today.