FaceReader 10 - Vital Signs White Paper - Introduction
Last updated: Jul 31, 2026
What Can You Measure with FaceReader?
With just a regular webcam, FaceReader lets you detect key physiological signals like heart rate and heart rate variability. These vital signs are an important dimension to consider in human-centric experiments and support the integration of physiological data into the analysis.
Without the need for extra hardware, you can measure heart rate, breathing rate, and heart rate variability (HRV).
- Heart Rate: A strong indicator of cardiovascular effort and offers a practical way to approximate real-time energy use.
- Breathing Rate: Can be used to estimate metabolic demand and highlight shifts in emotional arousal, e.g., distinguishing relaxed breathing from stress-induced hyperventilation.
- Heart Rate Variability: Often used to assess autonomic nervous system balance, providing an indirect measure of overall recovery status and cumulative fatigue.
This white paper discusses the methodology and expected performance of FaceReader's vital sign measurement techniques, including validation examples and practical tips for optimal results.
How Does It Work?
FaceReader measures vital signs with two underlying technologies: one to estimate blood volume changes for heart rate and heart rate variability; and another to detect respiratory motion for measuring breathing rate.
At their core, both breathing and heart rate estimation methods work on the principle of extracting and cleaning an information-dense signal and detecting the relevant physiological information from this signal.
Estimating Heart Rate and Heart Rate Variability
Estimation of heart rate via photoplethysmography (PPG) is based on the principle that changes in the blood volume result in changes in the light reflectance of the skin. The visual color of the face changes with each heartbeat due to increase or decrease in blood volume within the skin's capillaries. While these changes are invisible to the naked eye, digital cameras are able to capture them remotely. When tracking these color changes in a patch of skin over time, the variations form a signal called the blood volume pulse. Extracting blood volume pulse changes using a camera is known as remote photoplethysmography or RPPG.
The RPPG algorithm processes video data in the following steps:
- Face Detection and Tracking: The RPPG algorithm starts by detecting and tracking the face to extract color changes from the cheeks and forehead. It reduces noise in the signal by excluding the eye and mouth regions.
- Noise Reduction: After enough signal has been gathered during a brief calibration period, noise from movement and other sources is filtered from the signal. This is done by an initial aggregation step that removes movement information based on intensity changes in different color channels.
- Signal Filtering: The signal is then further refined using a two-stage filter. A Fourier-based filter first removes all frequencies outside of the heart rate range and those caused by rhythmic head movements. This is followed by a time-based filter that produces a signal with clear peaks and valleys.
- Heartbeat Detection: Each peak in this signal represents a heartbeat. The time differences between individual beats, the inter-beat intervals (IBIs), are used to calculate heart rate and heart rate variability.
Heart Rate Calculation
The heart rate in beats per minute (bpm) is calculated using a time window (w) of 8.5 seconds, where N represents the number of IBIs within that window and 60 represents the number of seconds per minute.
Heart Rate Variability Calculation
FaceReader supports the calculation of two HRV measures:
- RMSSD: The Root Mean Square of Successive Differences.
- SDNN: The Standard Deviation of Normal-to-Normal intervals.
The calculation of both short-term (5 minute window) and ultra-short term (under 5 minute window) heart rate variability is supported.
Estimating Breathing Rate
The breathing rate algorithm processes video data in the following steps:
- Chest Motion Detection: Breathing rate is estimated by detecting key points on the chest and shoulders and tracking their motion across video frames.
- Motion Signal Extraction: After removing irrelevant points not correlated with breathing, the changes in motion of individual points are combined into a single motion signal.
- Signal Filtering: This signal is cleaned using a two-stage filter, similar to how it works with heart rate. A Fourier-based filter first removes all frequencies from the signal outside of the breathing rate range. This is followed by a time-based filter that creates a signal with clear peaks and valleys, from which breathing rate can be calculated.
Breathing Rate Calculation
The breathing rate in breaths per minute (bpm) is calculated from the average of inter-breath intervals (IBIs), where w represents a time window of 15–30 seconds, N represents the number of IBIs within that window, and 60 represents the number of seconds per minute.
Source: EthoVision XT 18 - THC - Trial and Hardware Control, Noldus Information Technology